[PATCH V4 0/5] Support building i.MX8 SoCs clock driver as module

From: Anson Huang
Date: Wed Jul 01 2020 - 22:17:53 EST


Nowdays, there are more and more requirements of building SoC specific
drivers as modules, such as Android GKI (generic kernel image), this patch
set supports building i.MX8 SoCs clock drivers as modules, including
i.MX8MQ/MM/MN/MP/QXP, the common clock modules are: mxc-clk.ko for
i.MX8MQ/MM/MN/MP, i.MX8QXP has linked the common scu/lpcg clock driver into
its clock drivers.

Since i.MX common clk driver will support module build and no longer selected
by default, so for i.MX ARMv7 platforms, add clock configuration for each SoC
and they are selected by default if the corresponding SoC config is selected.

Changes since V3:
- merge all i.MX8M SoCs patches together;
- add module author/description;
- drop __setup_param() change, it is ONLY needed for built-in version,
so just add #if check for module build;
- link common scu and lpcg clock into i.MX8QXP clock driver, then export
is no needed for common scu/lpcg clock driver.

Anson Huang (5):
clk: composite: Export clk_hw_register_composite()
clk: imx: Add clock configuration for ARMv7 platforms
clk: imx: Support building i.MX common clock driver as module
clk: imx8m: Support module build
clk: imx8qxp: Support building i.MX8QXP clock driver as module

drivers/clk/clk-composite.c | 1 +
drivers/clk/imx/Kconfig | 112 ++++++++++++++++++++++++++++++++++---
drivers/clk/imx/Makefile | 79 +++++++++++++-------------
drivers/clk/imx/clk-composite-8m.c | 2 +
drivers/clk/imx/clk-cpu.c | 2 +
drivers/clk/imx/clk-frac-pll.c | 2 +
drivers/clk/imx/clk-gate2.c | 2 +
drivers/clk/imx/clk-imx8mm.c | 4 ++
drivers/clk/imx/clk-imx8mn.c | 4 ++
drivers/clk/imx/clk-imx8mp.c | 4 ++
drivers/clk/imx/clk-imx8mq.c | 4 ++
drivers/clk/imx/clk-imx8qxp-lpcg.c | 10 +++-
drivers/clk/imx/clk-imx8qxp.c | 11 +++-
drivers/clk/imx/clk-pll14xx.c | 5 ++
drivers/clk/imx/clk-sscg-pll.c | 2 +
drivers/clk/imx/clk.c | 22 ++++++--
16 files changed, 209 insertions(+), 57 deletions(-)

--
2.7.4