Hello,
This patch series adds clock support for Realtek's RTD1625 platform
The series includes:
1. Infrastructure: reset controller, basic clocks, PLLs, gate clocks, mux
clocks, and MMC-tuned PLLs.
2. Platform drivers: two clock controller drivers for RTD1625-CRT and
RTD1625-ISO.
I welcome feedback and suggestions.
Best regards,
Yu-Chun Lin
---
Changes in v2:
- General: Added missing Co-developed-by tags.
- Patch 1:
- Shortened binding description.
- Updated MAINTAINERS entry (BINDINGS -> DRIVERS).
- Moved software variables from header to driver.
- Patch 2:
- Added missing maintainer entry for driver/clk.
- Removed explicit of_xlate/of_reset_n_cells assignment as it matches defaults.
- Added error handling for rtk_reset_read() return value
- Patch 3:
- Fixed coding style issues.
- Switched to using dev_err_probe() return value.
- Fixed format specifier (%zu instead of %lu) reported by kernel test robot.
- Patch 4:
- Fixed clk_pll_determine_rate() to properly update req->rate.
- Patch 5:
- Added error handling for regmap_update_bits.
- Removed .disable_unused callback in gate ops. The CCF handles the fallback to
.disable automatically if .disable_unused is not present.
- Patch 6:
- Fixed return value signedness issue in clk_regmap_mux_get_parent (reported by
smatch/Dan Carpenter).
- Patch 7
- Replaced eval_ssc_div_n() function with a macro.
- Removed clk_pll_mmc_disable_unused() and clk_pll_mmc_unprepare_unused()
callbacks to rely on CCF default behavior and avoid unnecessary function calls.
- Fixed clk_pll_mmc_determine_rate() to properly write the calculated rate into
req->rate.
- Patch 8:
- Fixed Kconfig indentation.
- Removed excessive CLK_IGNORE_UNUSED flags
Yu-Chun Lin (9):
dt-bindings: clock: Add Realtek RTD1625 Clock & Reset Controller
clk: realtek: Add basic reset support
clk: realtek: Introduce a common probe()
clk: realtek: Add support for phase locked loops (PLLs)
clk: realtek: Add support for gate clock
clk: realtek: Add support for mux clock
clk: realtek: Add support for MMC-tuned PLL clocks
clk: realtek: Add RTD1625-CRT clock controller driver
clk: realtek: Add RTD1625-ISO clock controller driver
.../bindings/clock/realtek,rtd1625-clk.yaml | 51 ++
MAINTAINERS | 18 +
drivers/clk/Kconfig | 1 +
drivers/clk/Makefile | 1 +
drivers/clk/realtek/Kconfig | 45 +
drivers/clk/realtek/Makefile | 14 +
drivers/clk/realtek/clk-pll-mmc.c | 398 +++++++++
drivers/clk/realtek/clk-pll.c | 193 +++++
drivers/clk/realtek/clk-pll.h | 68 ++
drivers/clk/realtek/clk-regmap-gate.c | 66 ++
drivers/clk/realtek/clk-regmap-gate.h | 65 ++
drivers/clk/realtek/clk-regmap-mux.c | 46 +
drivers/clk/realtek/clk-regmap-mux.h | 43 +
drivers/clk/realtek/clk-rtd1625-crt.c | 790 ++++++++++++++++++
drivers/clk/realtek/clk-rtd1625-iso.c | 153 ++++
drivers/clk/realtek/common.c | 68 ++
drivers/clk/realtek/common.h | 40 +
drivers/clk/realtek/freq_table.c | 35 +
drivers/clk/realtek/freq_table.h | 23 +
drivers/clk/realtek/reset.c | 125 +++
drivers/clk/realtek/reset.h | 36 +
.../dt-bindings/clock/realtek,rtd1625-clk.h | 164 ++++
22 files changed, 2443 insertions(+)
create mode 100644 Documentation/devicetree/bindings/clock/realtek,rtd1625-clk.yaml
create mode 100644 drivers/clk/realtek/Kconfig
create mode 100644 drivers/clk/realtek/Makefile
create mode 100644 drivers/clk/realtek/clk-pll-mmc.c
create mode 100644 drivers/clk/realtek/clk-pll.c
create mode 100644 drivers/clk/realtek/clk-pll.h
create mode 100644 drivers/clk/realtek/clk-regmap-gate.c
create mode 100644 drivers/clk/realtek/clk-regmap-gate.h
create mode 100644 drivers/clk/realtek/clk-regmap-mux.c
create mode 100644 drivers/clk/realtek/clk-regmap-mux.h
create mode 100644 drivers/clk/realtek/clk-rtd1625-crt.c
create mode 100644 drivers/clk/realtek/clk-rtd1625-iso.c
create mode 100644 drivers/clk/realtek/common.c
create mode 100644 drivers/clk/realtek/common.h
create mode 100644 drivers/clk/realtek/freq_table.c
create mode 100644 drivers/clk/realtek/freq_table.h
create mode 100644 drivers/clk/realtek/reset.c
create mode 100644 drivers/clk/realtek/reset.h
create mode 100644 include/dt-bindings/clock/realtek,rtd1625-clk.h
--
2.34.1