Message ID | 1397801156-25682-7-git-send-email-haojian.zhuang@linaro.org |
---|---|
State | Changes Requested |
Headers | show |
On Fri, 18 Apr 2014, Haojian Zhuang wrote: > Since 16 Cortex-A15 cores are used in HiP04 SoC, enlarge the maximum > clusters from 2 to 4 if HiP04 SoC is built without CONFIG_BIG_LITTLE. Why "... if HiP04 SoC is built without CONFIG_BIG_LITTLE" ? That statement makes no sense. As mentioned before, if you have a multi-platform kernel config with CONFIG_BIG_LITTLE included, there is no reason for not supporting quad cluster platforms at the same time. FYI you might want to have a look at patch #8032 in RMK's patch system that removes a build-time MCPM dependency from the b.L switcher. > Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org> More comments below. > --- > arch/arm/Kconfig | 8 ++++++++ > arch/arm/include/asm/mcpm.h | 5 +++++ > 2 files changed, 13 insertions(+) > > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig > index 9a2214e..f2a25be 100644 > --- a/arch/arm/Kconfig > +++ b/arch/arm/Kconfig > @@ -1571,6 +1571,14 @@ config MCPM > for (multi-)cluster based systems, such as big.LITTLE based > systems. > > +config MCPM_QUAD_CLUSTER > + bool "Enable Quad clusters in MPCM" s/MPCM/MCPM/ Yet you should not provide any prompt text here. This is way too technical to leave to the user configuring the kernel to decide. Instead, the actual platform needing this feature should select this config symbol directly. > + depends on MCPM > + default n The default is already n, so no need to explicitly default to the default's default. > + help > + This option enables quad clusters in MCPM. Quad clusters exist > + in HiP04 SoC. Please refrain from listing SoCs here. > config BIG_LITTLE > bool "big.LITTLE support (Experimental)" > depends on CPU_V7 && SMP > diff --git a/arch/arm/include/asm/mcpm.h b/arch/arm/include/asm/mcpm.h > index 608516e..fc8d70d 100644 > --- a/arch/arm/include/asm/mcpm.h > +++ b/arch/arm/include/asm/mcpm.h > @@ -20,7 +20,12 @@ > * to consider dynamic allocation. > */ > #define MAX_CPUS_PER_CLUSTER 4 > + > +#ifdef CONFIG_MCPM_QUAD_CLUSTER > +#define MAX_NR_CLUSTERS 4 > +#else > #define MAX_NR_CLUSTERS 2 > +#endif > > #ifndef __ASSEMBLY__ > > -- > 1.8.3.2 >
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 9a2214e..f2a25be 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1571,6 +1571,14 @@ config MCPM for (multi-)cluster based systems, such as big.LITTLE based systems. +config MCPM_QUAD_CLUSTER + bool "Enable Quad clusters in MPCM" + depends on MCPM + default n + help + This option enables quad clusters in MCPM. Quad clusters exist + in HiP04 SoC. + config BIG_LITTLE bool "big.LITTLE support (Experimental)" depends on CPU_V7 && SMP diff --git a/arch/arm/include/asm/mcpm.h b/arch/arm/include/asm/mcpm.h index 608516e..fc8d70d 100644 --- a/arch/arm/include/asm/mcpm.h +++ b/arch/arm/include/asm/mcpm.h @@ -20,7 +20,12 @@ * to consider dynamic allocation. */ #define MAX_CPUS_PER_CLUSTER 4 + +#ifdef CONFIG_MCPM_QUAD_CLUSTER +#define MAX_NR_CLUSTERS 4 +#else #define MAX_NR_CLUSTERS 2 +#endif #ifndef __ASSEMBLY__
Since 16 Cortex-A15 cores are used in HiP04 SoC, enlarge the maximum clusters from 2 to 4 if HiP04 SoC is built without CONFIG_BIG_LITTLE. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org> --- arch/arm/Kconfig | 8 ++++++++ arch/arm/include/asm/mcpm.h | 5 +++++ 2 files changed, 13 insertions(+)