[PATCH v2 00/24] clk updates
Sascha Hauer
s.hauer at pengutronix.de
Wed Jun 2 02:54:43 PDT 2021
The barebox clk framework has diverged a lot from Linux. Specifically
the separation of a struct clk_hw from struct clk causes some pain when
porting over code from Linux. This series aims to reduce the differences
a bit. New this time is the addition of the rk3568 clock code which is
a first step to get rk3568 up.
Changes since v1:
- Make exported clk ops const
- Add more patches to get closer to Linux
- Update Rockchip Clock support to current Linux
- Add rk3568 clk support
Sascha Hauer (24):
clk: clk-mux: Fix handling of CLK_MUX_HIWORD_MASK
clk: introduce clk init op
clk: rename clk_register() to bclk_register()
clk: introduce struct clk_hw
clk: introduce clk_register()
clk: divider: Make clk_divider_ops const
clk: divider: Add ro ops
clk: divider: Make clk_mux_ops const
clk: mux: Add ro ops
clk: move fixed_factor to include/linux/clk.h
Add rational_best_approximation()
clk: Update fractional divider from Linux
clk: Add lock to different clock types
clk: Add Linux functions to register a divider
clk: Add Linux functions to register a fixed factor clock
clk: Add Linux functions to register a gate
clk: Add Linux functions to register a mux
clk: Add CLK_GET_RATE_NOCACHE
clk: Rename CLK_GATE_INVERTED to CLK_GATE_SET_TO_DISABLE
clk: implement CLK_SET_RATE_UNGATE
clk: implement set/get phase
regmap: Add regmap_read_poll_timeout
clk: rockchip: Update to current Linux
clk: Rockchip: Add rk3568 clk support
drivers/clk/at91/clk-audio-pll.c | 103 +-
drivers/clk/at91/clk-generated.c | 42 +-
drivers/clk/at91/clk-h32mx.c | 22 +-
drivers/clk/at91/clk-i2s-mux.c | 24 +-
drivers/clk/at91/clk-main.c | 126 +-
drivers/clk/at91/clk-master.c | 32 +-
drivers/clk/at91/clk-peripheral.c | 72 +-
drivers/clk/at91/clk-pll.c | 40 +-
drivers/clk/at91/clk-plldiv.c | 26 +-
drivers/clk/at91/clk-programmable.c | 32 +-
drivers/clk/at91/clk-sam9x60-pll.c | 28 +-
drivers/clk/at91/clk-slow.c | 20 +-
drivers/clk/at91/clk-smd.c | 36 +-
drivers/clk/at91/clk-system.c | 28 +-
drivers/clk/at91/clk-usb.c | 92 +-
drivers/clk/at91/clk-utmi.c | 32 +-
drivers/clk/at91/sckc.c | 114 +-
drivers/clk/clk-ar933x.c | 18 +-
drivers/clk/clk-ar9344.c | 18 +-
drivers/clk/clk-composite.c | 74 +-
drivers/clk/clk-divider.c | 78 +-
drivers/clk/clk-fixed-factor.c | 44 +-
drivers/clk/clk-fixed.c | 20 +-
drivers/clk/clk-fractional-divider.c | 133 +-
drivers/clk/clk-gate-shared.c | 33 +-
drivers/clk/clk-gate.c | 52 +-
drivers/clk/clk-gpio.c | 32 +-
drivers/clk/clk-mux.c | 48 +-
drivers/clk/clk-qoric.c | 34 +-
drivers/clk/clk-stm32mp1.c | 103 +-
drivers/clk/clk.c | 207 ++-
drivers/clk/imx/clk-composite-8m.c | 33 +-
drivers/clk/imx/clk-cpu.c | 32 +-
drivers/clk/imx/clk-frac-pll.c | 38 +-
drivers/clk/imx/clk-gate-exclusive.c | 36 +-
drivers/clk/imx/clk-gate2.c | 45 +-
drivers/clk/imx/clk-imx6ul.c | 4 +-
drivers/clk/imx/clk-pfd.c | 34 +-
drivers/clk/imx/clk-pll14xx.c | 47 +-
drivers/clk/imx/clk-pllv1.c | 18 +-
drivers/clk/imx/clk-pllv2.c | 24 +-
drivers/clk/imx/clk-pllv3.c | 70 +-
drivers/clk/imx/clk-sccg-pll.c | 51 +-
drivers/clk/loongson/clk-ls1b200.c | 18 +-
drivers/clk/mvebu/corediv.c | 30 +-
drivers/clk/mxs/clk-div.c | 36 +-
drivers/clk/mxs/clk-frac.c | 30 +-
drivers/clk/mxs/clk-lcdif.c | 20 +-
drivers/clk/mxs/clk-pll.c | 32 +-
drivers/clk/mxs/clk-ref.c | 38 +-
drivers/clk/rockchip/Makefile | 3 +-
drivers/clk/rockchip/clk-cpu.c | 82 +-
drivers/clk/rockchip/clk-inverter.c | 107 ++
drivers/clk/rockchip/clk-mmc-phase.c | 192 +++
drivers/clk/rockchip/clk-muxgrf.c | 95 ++
drivers/clk/rockchip/clk-pll.c | 853 ++++++++++--
drivers/clk/rockchip/clk-rk3188.c | 363 ++---
drivers/clk/rockchip/clk-rk3288.c | 309 ++--
drivers/clk/rockchip/clk-rk3568.c | 1704 +++++++++++++++++++++++
drivers/clk/rockchip/clk.c | 489 +++++--
drivers/clk/rockchip/clk.h | 500 ++++++-
drivers/clk/socfpga/clk-gate-a10.c | 32 +-
drivers/clk/socfpga/clk-periph-a10.c | 28 +-
drivers/clk/socfpga/clk-pll-a10.c | 30 +-
drivers/clk/socfpga/clk.c | 74 +-
drivers/clk/socfpga/clk.h | 6 +-
drivers/clk/tegra/clk-divider.c | 17 +-
drivers/clk/tegra/clk-periph.c | 44 +-
drivers/clk/tegra/clk-pll-out.c | 30 +-
drivers/clk/tegra/clk-pll.c | 52 +-
drivers/clk/tegra/clk.h | 6 +-
drivers/clk/vexpress/clk-sp810.c | 24 +-
drivers/clk/zynq/clkc.c | 100 +-
drivers/clk/zynqmp/clk-divider-zynqmp.c | 30 +-
drivers/clk/zynqmp/clk-gate-zynqmp.c | 30 +-
drivers/clk/zynqmp/clk-mux-zynqmp.c | 30 +-
drivers/clk/zynqmp/clk-pll-zynqmp.c | 48 +-
drivers/video/imx-ipu-v3/ipu-di.c | 17 +-
include/linux/clk.h | 199 ++-
include/linux/rational.h | 20 +
include/regmap.h | 24 +
lib/math/Makefile | 1 +
lib/math/rational.c | 100 ++
83 files changed, 6089 insertions(+), 1949 deletions(-)
create mode 100644 drivers/clk/rockchip/clk-inverter.c
create mode 100644 drivers/clk/rockchip/clk-mmc-phase.c
create mode 100644 drivers/clk/rockchip/clk-muxgrf.c
create mode 100644 drivers/clk/rockchip/clk-rk3568.c
create mode 100644 include/linux/rational.h
create mode 100644 lib/math/rational.c
--
2.29.2
More information about the barebox
mailing list