[v2 00/24] Mediatek MT8195 clock support

From: Chun-Jie Chen
Date: Fri Aug 20 2021 - 07:16:42 EST


this patch series is based on 5.14-rc1 and depends on [1]
- for makefile dependence (patches 7 ~ 19 in [1])
- for common driver dependence (patches 3 ~ 6 in [1])

changes since v1:
- fix resource leak if error condition happens
- refine clock name to match datasheet
- remove redundant data in mux parent source
- seperate clock driver based on IP architecture
- change to dual licence
- refine dt-binding file
- remove audio clock driver (handled in [4])
- integrate vdosys0 and vdosys1 clock registration with mmsys in [2] and [3]

[1] https://patchwork.kernel.org/project/linux-mediatek/list/?series=521127
[2] https://patchwork.kernel.org/project/linux-mediatek/list/?series=531695
[3] https://patchwork.kernel.org/project/linux-mediatek/list/?series=519617
[4] https://patchwork.kernel.org/project/linux-mediatek/list/?series=528369

Chun-Jie Chen (24):
dt-bindings: ARM: Mediatek: Add new document bindings of MT8195 clock
clk: mediatek: Add dt-bindings of MT8195 clocks
clk: mediatek: Fix corner case of tuner_en_reg
clk: mediatek: Add API for clock resource recycle
clk: mediatek: Fix resource leak in mtk_clk_simple_probe
clk: mediatek: Add MT8195 apmixedsys clock support
clk: mediatek: Add MT8195 topckgen clock support
clk: mediatek: Add MT8195 peripheral clock support
clk: mediatek: Add MT8195 infrastructure clock support
clk: mediatek: Add MT8195 camsys clock support
clk: mediatek: Add MT8195 ccusys clock support
clk: mediatek: Add MT8195 imgsys clock support
clk: mediatek: Add MT8195 ipesys clock support
clk: mediatek: Add MT8195 mfgcfg clock support
clk: mediatek: Add MT8195 scp adsp clock support
clk: mediatek: Add MT8195 vdecsys clock support
clk: mediatek: Add MT8195 vdosys0 clock support
clk: mediatek: Add MT8195 vdosys1 clock support
clk: mediatek: Add MT8195 vencsys clock support
clk: mediatek: Add MT8195 vppsys0 clock support
clk: mediatek: Add MT8195 vppsys1 clock support
clk: mediatek: Add MT8195 wpesys clock support
clk: mediatek: Add MT8195 imp i2c wrapper clock support
clk: mediatek: Add MT8195 apusys clock support

.../arm/mediatek/mediatek,mt8195-clock.yaml | 254 ++++
.../mediatek/mediatek,mt8195-sys-clock.yaml | 73 +
drivers/clk/mediatek/Kconfig | 8 +
drivers/clk/mediatek/Makefile | 4 +
drivers/clk/mediatek/clk-mt8195-apmixedsys.c | 145 ++
drivers/clk/mediatek/clk-mt8195-apusys_pll.c | 92 ++
drivers/clk/mediatek/clk-mt8195-cam.c | 142 ++
drivers/clk/mediatek/clk-mt8195-ccu.c | 50 +
drivers/clk/mediatek/clk-mt8195-img.c | 96 ++
.../clk/mediatek/clk-mt8195-imp_iic_wrap.c | 68 +
drivers/clk/mediatek/clk-mt8195-infra_ao.c | 211 +++
drivers/clk/mediatek/clk-mt8195-ipe.c | 51 +
drivers/clk/mediatek/clk-mt8195-mfg.c | 47 +
drivers/clk/mediatek/clk-mt8195-peri_ao.c | 62 +
drivers/clk/mediatek/clk-mt8195-scp_adsp.c | 47 +
drivers/clk/mediatek/clk-mt8195-topckgen.c | 1298 +++++++++++++++++
drivers/clk/mediatek/clk-mt8195-vdec.c | 104 ++
drivers/clk/mediatek/clk-mt8195-vdo0.c | 123 ++
drivers/clk/mediatek/clk-mt8195-vdo1.c | 140 ++
drivers/clk/mediatek/clk-mt8195-venc.c | 69 +
drivers/clk/mediatek/clk-mt8195-vpp0.c | 110 ++
drivers/clk/mediatek/clk-mt8195-vpp1.c | 108 ++
drivers/clk/mediatek/clk-mt8195-wpe.c | 143 ++
drivers/clk/mediatek/clk-mtk.c | 21 +-
drivers/clk/mediatek/clk-mtk.h | 1 +
drivers/clk/mediatek/clk-pll.c | 2 +-
include/dt-bindings/clock/mt8195-clk.h | 864 +++++++++++
27 files changed, 4330 insertions(+), 3 deletions(-)
create mode 100644 Documentation/devicetree/bindings/arm/mediatek/mediatek,mt8195-clock.yaml
create mode 100644 Documentation/devicetree/bindings/arm/mediatek/mediatek,mt8195-sys-clock.yaml
create mode 100644 drivers/clk/mediatek/clk-mt8195-apmixedsys.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-apusys_pll.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-cam.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-ccu.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-img.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-imp_iic_wrap.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-infra_ao.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-ipe.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-mfg.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-peri_ao.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-scp_adsp.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-topckgen.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-vdec.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-vdo0.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-vdo1.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-venc.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-vpp0.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-vpp1.c
create mode 100644 drivers/clk/mediatek/clk-mt8195-wpe.c
create mode 100644 include/dt-bindings/clock/mt8195-clk.h

--
2.18.0