[PATCH v3 0/9] clk: realtek: Add RTD1625 Clock Support

Yu-Chun Lin posted 9 patches 2 weeks, 2 days ago
.../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             | 399 +++++++++
drivers/clk/realtek/clk-pll.c                 | 156 ++++
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         | 788 ++++++++++++++++++
drivers/clk/realtek/clk-rtd1625-iso.c         | 153 ++++
drivers/clk/realtek/common.c                  |  64 ++
drivers/clk/realtek/common.h                  |  43 +
drivers/clk/realtek/freq_table.c              |  35 +
drivers/clk/realtek/freq_table.h              |  23 +
drivers/clk/realtek/reset.c                   | 112 +++
drivers/clk/realtek/reset.h                   |  36 +
.../dt-bindings/clock/realtek,rtd1625-clk.h   | 164 ++++
22 files changed, 2391 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
[PATCH v3 0/9] clk: realtek: Add RTD1625 Clock Support
Posted by Yu-Chun Lin 2 weeks, 2 days ago
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 v3:
General:
- Added prefix "rtk_" in operation names to avoid duplicate symbol problem.
- Converted macro to static inline function.
patch 1:
- Converted header file path to the full path.
patch 2:
- Reduced the number of IDs per bank from 256 to 32, eliminating unnecessary
gaps.
- Used UL() to prevent undefined behavior.
patch 3 & 4:
- Optimized code structure by removing redundant elements.
- Replaced Read-Modify-Write operations in clk_pll_set_rate with
  regmap_update_bits()

v2: https://lore.kernel.org/lkml/20260113112333.821-1-eleanor.lin@realtek.com/
v1: https://lore.kernel.org/lkml/20251229075313.27254-1-eleanor.lin@realtek.com/
---
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             | 399 +++++++++
 drivers/clk/realtek/clk-pll.c                 | 156 ++++
 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         | 788 ++++++++++++++++++
 drivers/clk/realtek/clk-rtd1625-iso.c         | 153 ++++
 drivers/clk/realtek/common.c                  |  64 ++
 drivers/clk/realtek/common.h                  |  43 +
 drivers/clk/realtek/freq_table.c              |  35 +
 drivers/clk/realtek/freq_table.h              |  23 +
 drivers/clk/realtek/reset.c                   | 112 +++
 drivers/clk/realtek/reset.h                   |  36 +
 .../dt-bindings/clock/realtek,rtd1625-clk.h   | 164 ++++
 22 files changed, 2391 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