2020-06-29 19:04:34

by Anson Huang

[permalink] [raw]
Subject: [PATCH V3 03/10] ARM: imx: Select MXC_CLK for each SoC

i.MX common clock drivers may support module build, so it is NOT
selected by default, for ARCH_MXC ARMv7 platforms, need to select
it manually in each SoC to make build pass.

Signed-off-by: Anson Huang <[email protected]>
---
Changes since V2:
- manually select the MXC_CLK in each SoC instead of selecting it
for ARCH_MXC.
---
arch/arm/mach-imx/Kconfig | 11 +++++++++++
1 file changed, 11 insertions(+)

diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index e7d7b90..a465c0f 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -58,6 +58,7 @@ config SOC_IMX21
select CPU_ARM926T
select IMX_HAVE_IOMUX_V1
select MXC_AVIC
+ select MXC_CLK

config SOC_IMX27
bool
@@ -65,17 +66,20 @@ config SOC_IMX27
select IMX_HAVE_IOMUX_V1
select MXC_AVIC
select PINCTRL_IMX27
+ select MXC_CLK

config SOC_IMX31
bool
select CPU_V6
select MXC_AVIC
+ select MXC_CLK

config SOC_IMX35
bool
select ARCH_MXC_IOMUX_V3
select MXC_AVIC
select PINCTRL_IMX35
+ select MXC_CLK

if ARCH_MULTI_V5

@@ -419,6 +423,7 @@ config SOC_IMX1
select CPU_ARM920T
select MXC_AVIC
select PINCTRL_IMX1
+ select MXC_CLK
help
This enables support for Freescale i.MX1 processor

@@ -432,6 +437,7 @@ config SOC_IMX25
select CPU_ARM926T
select MXC_AVIC
select PINCTRL_IMX25
+ select MXC_CLK
help
This enables support for Freescale i.MX25 processor
endif
@@ -444,6 +450,7 @@ config SOC_IMX5
bool
select HAVE_IMX_SRC
select MXC_TZIC
+ select MXC_CLK

config SOC_IMX50
bool "i.MX50 support"
@@ -477,6 +484,7 @@ config SOC_IMX6
select HAVE_IMX_MMDC
select HAVE_IMX_SRC
select MFD_SYSCON
+ select MXC_CLK
select PL310_ERRATA_769419 if CACHE_L2X0

config SOC_IMX6Q
@@ -561,6 +569,7 @@ config SOC_IMX7D_CM4
config SOC_IMX7D
bool "i.MX7 Dual support"
select PINCTRL_IMX7D
+ select MXC_CLK
select SOC_IMX7D_CA7 if ARCH_MULTI_V7
select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
select ARM_ERRATA_814220 if ARCH_MULTI_V7
@@ -571,6 +580,7 @@ config SOC_IMX7ULP
bool "i.MX7ULP support"
select CLKSRC_IMX_TPM
select PINCTRL_IMX7ULP
+ select MXC_CLK
select SOC_IMX7D_CA7 if ARCH_MULTI_V7
select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
help
@@ -580,6 +590,7 @@ config SOC_VF610
bool "Vybrid Family VF610 support"
select ARM_GIC if ARCH_MULTI_V7
select PINCTRL_VF610
+ select MXC_CLK

help
This enables support for Freescale Vybrid VF610 processor.
--
2.7.4


2020-06-29 20:55:14

by Aisheng Dong

[permalink] [raw]
Subject: RE: [PATCH V3 03/10] ARM: imx: Select MXC_CLK for each SoC

> From: Anson Huang <[email protected]>
> Sent: Monday, June 29, 2020 1:54 PM
>
> i.MX common clock drivers may support module build, so it is NOT selected by
> default, for ARCH_MXC ARMv7 platforms, need to select it manually in each SoC
> to make build pass.
>
> Signed-off-by: Anson Huang <[email protected]>
> ---
> Changes since V2:
> - manually select the MXC_CLK in each SoC instead of selecting it
> for ARCH_MXC.

Any reason to do this?

Regards
Aisheng

> ---
> arch/arm/mach-imx/Kconfig | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig index
> e7d7b90..a465c0f 100644
> --- a/arch/arm/mach-imx/Kconfig
> +++ b/arch/arm/mach-imx/Kconfig
> @@ -58,6 +58,7 @@ config SOC_IMX21
> select CPU_ARM926T
> select IMX_HAVE_IOMUX_V1
> select MXC_AVIC
> + select MXC_CLK
>
> config SOC_IMX27
> bool
> @@ -65,17 +66,20 @@ config SOC_IMX27
> select IMX_HAVE_IOMUX_V1
> select MXC_AVIC
> select PINCTRL_IMX27
> + select MXC_CLK
>
> config SOC_IMX31
> bool
> select CPU_V6
> select MXC_AVIC
> + select MXC_CLK
>
> config SOC_IMX35
> bool
> select ARCH_MXC_IOMUX_V3
> select MXC_AVIC
> select PINCTRL_IMX35
> + select MXC_CLK
>
> if ARCH_MULTI_V5
>
> @@ -419,6 +423,7 @@ config SOC_IMX1
> select CPU_ARM920T
> select MXC_AVIC
> select PINCTRL_IMX1
> + select MXC_CLK
> help
> This enables support for Freescale i.MX1 processor
>
> @@ -432,6 +437,7 @@ config SOC_IMX25
> select CPU_ARM926T
> select MXC_AVIC
> select PINCTRL_IMX25
> + select MXC_CLK
> help
> This enables support for Freescale i.MX25 processor endif @@ -444,6
> +450,7 @@ config SOC_IMX5
> bool
> select HAVE_IMX_SRC
> select MXC_TZIC
> + select MXC_CLK
>
> config SOC_IMX50
> bool "i.MX50 support"
> @@ -477,6 +484,7 @@ config SOC_IMX6
> select HAVE_IMX_MMDC
> select HAVE_IMX_SRC
> select MFD_SYSCON
> + select MXC_CLK
> select PL310_ERRATA_769419 if CACHE_L2X0
>
> config SOC_IMX6Q
> @@ -561,6 +569,7 @@ config SOC_IMX7D_CM4 config SOC_IMX7D
> bool "i.MX7 Dual support"
> select PINCTRL_IMX7D
> + select MXC_CLK
> select SOC_IMX7D_CA7 if ARCH_MULTI_V7
> select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
> select ARM_ERRATA_814220 if ARCH_MULTI_V7 @@ -571,6 +580,7 @@
> config SOC_IMX7ULP
> bool "i.MX7ULP support"
> select CLKSRC_IMX_TPM
> select PINCTRL_IMX7ULP
> + select MXC_CLK
> select SOC_IMX7D_CA7 if ARCH_MULTI_V7
> select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
> help
> @@ -580,6 +590,7 @@ config SOC_VF610
> bool "Vybrid Family VF610 support"
> select ARM_GIC if ARCH_MULTI_V7
> select PINCTRL_VF610
> + select MXC_CLK
>
> help
> This enables support for Freescale Vybrid VF610 processor.
> --
> 2.7.4

2020-06-29 21:06:47

by Anson Huang

[permalink] [raw]
Subject: RE: [PATCH V3 03/10] ARM: imx: Select MXC_CLK for each SoC



> Subject: RE: [PATCH V3 03/10] ARM: imx: Select MXC_CLK for each SoC
>
> > From: Anson Huang <[email protected]>
> > Sent: Monday, June 29, 2020 1:54 PM
> >
> > i.MX common clock drivers may support module build, so it is NOT
> > selected by default, for ARCH_MXC ARMv7 platforms, need to select it
> > manually in each SoC to make build pass.
> >
> > Signed-off-by: Anson Huang <[email protected]>
> > ---
> > Changes since V2:
> > - manually select the MXC_CLK in each SoC instead of selecting it
> > for ARCH_MXC.
>
> Any reason to do this?

Form the discussion, looks like selecting it for each SoC make more sense, as there is
no CLK_IMX* for i.MX6/7, or am I misunderstanding Stephen's comment? Just use
previous implementation of selecting it once in ARCH_MXC?

Anson