Re: [PATCH v1 08/11] clk: mediatek: Add MT8183 clock support
On Tue, 2018-11-13 at 22:25 -0800, Nicolas Boichat wrote: > On Mon, Nov 5, 2018 at 10:42 PM Weiyi Lu wrote: > > > > Add MT8183 clock support, include topckgen, apmixedsys, > > infracfg, mcucfg and subsystem clocks. > > > > Signed-off-by: Weiyi Lu > > --- > > drivers/clk/mediatek/Kconfig | 75 ++ > > drivers/clk/mediatek/Makefile | 12 + > > drivers/clk/mediatek/clk-mt8183-audio.c| 112 ++ > > drivers/clk/mediatek/clk-mt8183-cam.c | 75 ++ > > drivers/clk/mediatek/clk-mt8183-img.c | 75 ++ > > drivers/clk/mediatek/clk-mt8183-ipu0.c | 68 + > > drivers/clk/mediatek/clk-mt8183-ipu1.c | 68 + > > drivers/clk/mediatek/clk-mt8183-ipu_adl.c | 66 + > > drivers/clk/mediatek/clk-mt8183-ipu_conn.c | 155 +++ > > drivers/clk/mediatek/clk-mt8183-mfgcfg.c | 66 + > > drivers/clk/mediatek/clk-mt8183-mm.c | 128 ++ > > drivers/clk/mediatek/clk-mt8183-vdec.c | 84 ++ > > drivers/clk/mediatek/clk-mt8183-venc.c | 71 ++ > > drivers/clk/mediatek/clk-mt8183.c | 1334 > > 14 files changed, 2389 insertions(+) > > create mode 100644 drivers/clk/mediatek/clk-mt8183-audio.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-cam.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-img.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu0.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu1.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu_adl.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu_conn.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-mfgcfg.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-mm.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-vdec.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183-venc.c > > create mode 100644 drivers/clk/mediatek/clk-mt8183.c > > Can you look at how clk-mt8173.c did this? > > I think you can avoid a lot of this duplicated code and most of the > extra files by using something like: > CLK_OF_DECLARE(mtk_audio, "mediatek,mt8183-audiosys", clk_mt8183_audio_init); > I might keep following the method that registering clocks when clock driver probes. About the duplicated code, there's some related discussion in Stephen's series https://patchwork.kernel.org/project/linux-mediatek/list/?series=39497 A. I'd keep pending this part until there comes out some conclusion. > Some more comments below. > > diff --git a/drivers/clk/mediatek/Kconfig b/drivers/clk/mediatek/Kconfig > > index 3dd1dab92223..5d4fd67fa259 100644 > > --- a/drivers/clk/mediatek/Kconfig > > +++ b/drivers/clk/mediatek/Kconfig > > @@ -193,4 +193,79 @@ config COMMON_CLK_MT8173 > > default ARCH_MEDIATEK > > ---help--- > > This driver supports MediaTek MT8173 clocks. > > + > > +config COMMON_CLK_MT8183 > > + bool "Clock driver for MediaTek MT8183" > > + depends on (ARCH_MEDIATEK && ARM64) || COMPILE_TEST > > + select COMMON_CLK_MEDIATEK > > + default ARCH_MEDIATEK && ARM64 > > + help > > + This driver supports MediaTek MT8183 basic clocks. > > + > > +config COMMON_CLK_MT8183_AUDIOSYS > > + bool "Clock driver for MediaTek MT8183 audiosys" > > + depends on COMMON_CLK_MT8183 > > + help > > + This driver supports MediaTek MT8183 audiosys clocks. > > + > > +config COMMON_CLK_MT8183_CAMSYS > > + bool "Clock driver for MediaTek MT8183 camsys" > > + depends on COMMON_CLK_MT8183 > > + help > > + This driver supports MediaTek MT8183 camsys clocks. > > + > > +config COMMON_CLK_MT8183_IMGSYS > > + bool "Clock driver for MediaTek MT8183 imgsys" > > + depends on COMMON_CLK_MT8183 > > + help > > + This driver supports MediaTek MT8183 imgsys clocks. > > + > > +config COMMON_CLK_MT8183_IPU_CORE0 > > + bool "Clock driver for MediaTek MT8183 ipu_core0" > > + depends on COMMON_CLK_MT8183 > > + help > > + This driver supports MediaTek MT8183 ipu_core0 clocks. > > + > > +config COMMON_CLK_MT8183_IPU_CORE1 > > + bool "Clock driver for MediaTek MT8183 ipu_core1" > > + depends on COMMON_CLK_MT8183 > > + help > > + This driver supports MediaTek MT8183 ipu_core1 clocks. > > + > > +config COMMON_CLK_MT8183_IPU_ADL > > + bool "Clock driver for MediaTek MT8183 ipu_adl" > > + depends on COMMON_CLK_MT8183 > > + help > > + This driver supports MediaTek MT8183 ipu_adl clocks. > > + > > +config COMMON_CLK_MT8183_IPU_CONN > > + bool "Clock driver for MediaTek MT8183 ipu_conn" > > + depends on COMMON_CLK_MT8183 > > + help > > + This driver supports MediaTek MT8183 ipu_conn clocks. > > + > > +config COMMON_CLK_MT8183_MFGCFG > > + bool "Clock driver for MediaTek MT8183 mfgcfg" > > + depends on COMMON_CLK_MT8183 > > + help > > + This driver supports MediaTek MT8183 mfgcfg clocks. > > + >
Re: [PATCH v1 08/11] clk: mediatek: Add MT8183 clock support
On Mon, Nov 5, 2018 at 10:42 PM Weiyi Lu wrote: > > Add MT8183 clock support, include topckgen, apmixedsys, > infracfg, mcucfg and subsystem clocks. > > Signed-off-by: Weiyi Lu > --- > drivers/clk/mediatek/Kconfig | 75 ++ > drivers/clk/mediatek/Makefile | 12 + > drivers/clk/mediatek/clk-mt8183-audio.c| 112 ++ > drivers/clk/mediatek/clk-mt8183-cam.c | 75 ++ > drivers/clk/mediatek/clk-mt8183-img.c | 75 ++ > drivers/clk/mediatek/clk-mt8183-ipu0.c | 68 + > drivers/clk/mediatek/clk-mt8183-ipu1.c | 68 + > drivers/clk/mediatek/clk-mt8183-ipu_adl.c | 66 + > drivers/clk/mediatek/clk-mt8183-ipu_conn.c | 155 +++ > drivers/clk/mediatek/clk-mt8183-mfgcfg.c | 66 + > drivers/clk/mediatek/clk-mt8183-mm.c | 128 ++ > drivers/clk/mediatek/clk-mt8183-vdec.c | 84 ++ > drivers/clk/mediatek/clk-mt8183-venc.c | 71 ++ > drivers/clk/mediatek/clk-mt8183.c | 1334 > 14 files changed, 2389 insertions(+) > create mode 100644 drivers/clk/mediatek/clk-mt8183-audio.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-cam.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-img.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu0.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu1.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu_adl.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu_conn.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-mfgcfg.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-mm.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-vdec.c > create mode 100644 drivers/clk/mediatek/clk-mt8183-venc.c > create mode 100644 drivers/clk/mediatek/clk-mt8183.c Can you look at how clk-mt8173.c did this? I think you can avoid a lot of this duplicated code and most of the extra files by using something like: CLK_OF_DECLARE(mtk_audio, "mediatek,mt8183-audiosys", clk_mt8183_audio_init); Some more comments below. > diff --git a/drivers/clk/mediatek/Kconfig b/drivers/clk/mediatek/Kconfig > index 3dd1dab92223..5d4fd67fa259 100644 > --- a/drivers/clk/mediatek/Kconfig > +++ b/drivers/clk/mediatek/Kconfig > @@ -193,4 +193,79 @@ config COMMON_CLK_MT8173 > default ARCH_MEDIATEK > ---help--- > This driver supports MediaTek MT8173 clocks. > + > +config COMMON_CLK_MT8183 > + bool "Clock driver for MediaTek MT8183" > + depends on (ARCH_MEDIATEK && ARM64) || COMPILE_TEST > + select COMMON_CLK_MEDIATEK > + default ARCH_MEDIATEK && ARM64 > + help > + This driver supports MediaTek MT8183 basic clocks. > + > +config COMMON_CLK_MT8183_AUDIOSYS > + bool "Clock driver for MediaTek MT8183 audiosys" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 audiosys clocks. > + > +config COMMON_CLK_MT8183_CAMSYS > + bool "Clock driver for MediaTek MT8183 camsys" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 camsys clocks. > + > +config COMMON_CLK_MT8183_IMGSYS > + bool "Clock driver for MediaTek MT8183 imgsys" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 imgsys clocks. > + > +config COMMON_CLK_MT8183_IPU_CORE0 > + bool "Clock driver for MediaTek MT8183 ipu_core0" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 ipu_core0 clocks. > + > +config COMMON_CLK_MT8183_IPU_CORE1 > + bool "Clock driver for MediaTek MT8183 ipu_core1" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 ipu_core1 clocks. > + > +config COMMON_CLK_MT8183_IPU_ADL > + bool "Clock driver for MediaTek MT8183 ipu_adl" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 ipu_adl clocks. > + > +config COMMON_CLK_MT8183_IPU_CONN > + bool "Clock driver for MediaTek MT8183 ipu_conn" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 ipu_conn clocks. > + > +config COMMON_CLK_MT8183_MFGCFG > + bool "Clock driver for MediaTek MT8183 mfgcfg" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 mfgcfg clocks. > + > +config COMMON_CLK_MT8183_MMSYS > + bool "Clock driver for MediaTek MT8183 mmsys" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 mmsys clocks. > + > +config COMMON_CLK_MT8183_VDECSYS > + bool "Clock driver for MediaTek MT8183 vdecsys" > + depends on COMMON_CLK_MT8183 > + help > + This driver supports MediaTek MT8183 vdecsys clocks. > + > +config COMMON_CLK_MT8183_VENCSYS > + bool "Clock driver for MediaTek MT8183 vencsys" > + depends on COMMON_CLK_MT8183 > + help > + T
[PATCH v1 08/11] clk: mediatek: Add MT8183 clock support
Add MT8183 clock support, include topckgen, apmixedsys, infracfg, mcucfg and subsystem clocks. Signed-off-by: Weiyi Lu --- drivers/clk/mediatek/Kconfig | 75 ++ drivers/clk/mediatek/Makefile | 12 + drivers/clk/mediatek/clk-mt8183-audio.c| 112 ++ drivers/clk/mediatek/clk-mt8183-cam.c | 75 ++ drivers/clk/mediatek/clk-mt8183-img.c | 75 ++ drivers/clk/mediatek/clk-mt8183-ipu0.c | 68 + drivers/clk/mediatek/clk-mt8183-ipu1.c | 68 + drivers/clk/mediatek/clk-mt8183-ipu_adl.c | 66 + drivers/clk/mediatek/clk-mt8183-ipu_conn.c | 155 +++ drivers/clk/mediatek/clk-mt8183-mfgcfg.c | 66 + drivers/clk/mediatek/clk-mt8183-mm.c | 128 ++ drivers/clk/mediatek/clk-mt8183-vdec.c | 84 ++ drivers/clk/mediatek/clk-mt8183-venc.c | 71 ++ drivers/clk/mediatek/clk-mt8183.c | 1334 14 files changed, 2389 insertions(+) create mode 100644 drivers/clk/mediatek/clk-mt8183-audio.c create mode 100644 drivers/clk/mediatek/clk-mt8183-cam.c create mode 100644 drivers/clk/mediatek/clk-mt8183-img.c create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu0.c create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu1.c create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu_adl.c create mode 100644 drivers/clk/mediatek/clk-mt8183-ipu_conn.c create mode 100644 drivers/clk/mediatek/clk-mt8183-mfgcfg.c create mode 100644 drivers/clk/mediatek/clk-mt8183-mm.c create mode 100644 drivers/clk/mediatek/clk-mt8183-vdec.c create mode 100644 drivers/clk/mediatek/clk-mt8183-venc.c create mode 100644 drivers/clk/mediatek/clk-mt8183.c diff --git a/drivers/clk/mediatek/Kconfig b/drivers/clk/mediatek/Kconfig index 3dd1dab92223..5d4fd67fa259 100644 --- a/drivers/clk/mediatek/Kconfig +++ b/drivers/clk/mediatek/Kconfig @@ -193,4 +193,79 @@ config COMMON_CLK_MT8173 default ARCH_MEDIATEK ---help--- This driver supports MediaTek MT8173 clocks. + +config COMMON_CLK_MT8183 + bool "Clock driver for MediaTek MT8183" + depends on (ARCH_MEDIATEK && ARM64) || COMPILE_TEST + select COMMON_CLK_MEDIATEK + default ARCH_MEDIATEK && ARM64 + help + This driver supports MediaTek MT8183 basic clocks. + +config COMMON_CLK_MT8183_AUDIOSYS + bool "Clock driver for MediaTek MT8183 audiosys" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 audiosys clocks. + +config COMMON_CLK_MT8183_CAMSYS + bool "Clock driver for MediaTek MT8183 camsys" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 camsys clocks. + +config COMMON_CLK_MT8183_IMGSYS + bool "Clock driver for MediaTek MT8183 imgsys" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 imgsys clocks. + +config COMMON_CLK_MT8183_IPU_CORE0 + bool "Clock driver for MediaTek MT8183 ipu_core0" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 ipu_core0 clocks. + +config COMMON_CLK_MT8183_IPU_CORE1 + bool "Clock driver for MediaTek MT8183 ipu_core1" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 ipu_core1 clocks. + +config COMMON_CLK_MT8183_IPU_ADL + bool "Clock driver for MediaTek MT8183 ipu_adl" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 ipu_adl clocks. + +config COMMON_CLK_MT8183_IPU_CONN + bool "Clock driver for MediaTek MT8183 ipu_conn" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 ipu_conn clocks. + +config COMMON_CLK_MT8183_MFGCFG + bool "Clock driver for MediaTek MT8183 mfgcfg" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 mfgcfg clocks. + +config COMMON_CLK_MT8183_MMSYS + bool "Clock driver for MediaTek MT8183 mmsys" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 mmsys clocks. + +config COMMON_CLK_MT8183_VDECSYS + bool "Clock driver for MediaTek MT8183 vdecsys" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 vdecsys clocks. + +config COMMON_CLK_MT8183_VENCSYS + bool "Clock driver for MediaTek MT8183 vencsys" + depends on COMMON_CLK_MT8183 + help + This driver supports MediaTek MT8183 vencsys clocks. + endmenu diff --git a/drivers/clk/mediatek/Makefile b/drivers/clk/mediatek/Makefile index b97980dbb738..885faa74cd70 100644 --- a/drivers/clk/mediatek/Makefile +++ b/drivers/clk/mediatek/Makefile @@ -28,3 +28,15 @@ obj-$(CONFIG_COMMON_CLK_MT7622_HIFSYS) += clk-mt7622-hif.o obj-$(CONFIG_COMMON_CLK_MT7622_AUDSYS) += clk-mt7622-aud.o obj-$(CONFIG_COMMON_CLK_MT8135) += clk-mt8135.o obj-$(CONFIG_COMMON_CLK_MT8173) += clk-mt8173.o +obj-$(CONFIG_COMMON_CLK_MT8183) += clk-mt8183.