Hi Thomas,

On 20/02/2015 18:04, Thomas Petazzoni wrote:
> This commit adds the core support for Armada 39x, which is quite
> simple:
> 
>  - a new Kconfig option which selects the appropriate clock and
>    pinctrl drivers as well as other common features (GIC, L2 cache,
>    SMP, etc.)
> 
>  - a new DT_MACHINE_START which references the top-level compatible
>    strings supported for the Marvell Armada 39x.
> 
>  - a new SMP enable-method. The mechanism to enable CPUs for Armada
>    39x appears to be the same as Armada 38x. However, we do not want
>    to use marvell,armada-380-smp in the Device Tree, in the case of
>    the discovery of a subtle difference in the future, which would
>    require changing the Device Tree. And the enable-method isn't a
>    compatible string: you can't specify several values and expect a
>    fallback on the second string if the first one isn't
>    supported. Therefore, we simply declare the SMP enable method
>    "marvell,armada-390-smp" as doing the same thing as the
>    "marvell,armada-380-smp" one.
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazz...@free-electrons.com>
> ---
>  arch/arm/mach-mvebu/Kconfig      | 14 ++++++++++++++
>  arch/arm/mach-mvebu/board-v7.c   | 14 ++++++++++++++
>  arch/arm/mach-mvebu/platsmp-a9.c |  2 ++
>  3 files changed, 30 insertions(+)
> 
> diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
> index c1e4567..9747316 100644
> --- a/arch/arm/mach-mvebu/Kconfig
> +++ b/arch/arm/mach-mvebu/Kconfig
> @@ -64,6 +64,20 @@ config MACH_ARMADA_38X
>         Say 'Y' here if you want your kernel to support boards based
>         on the Marvell Armada 380/385 SoC with device tree.
>  
> +config MACH_ARMADA_39X
> +     bool "Marvell Armada 39x boards" if ARCH_MULTI_V7

As you don't select it by default we should update the mvebu_v7_defconfig
with this symbol.

Thanks,

Gregory

> +     select ARM_GIC
> +     select ARMADA_39X_CLK
> +     select CACHE_L2X0
> +     select HAVE_ARM_SCU
> +     select HAVE_ARM_TWD if SMP
> +     select HAVE_SMP
> +     select MACH_MVEBU_V7
> +     select PINCTRL_ARMADA_39X
> +     help
> +       Say 'Y' here if you want your kernel to support boards based
> +       on the Marvell Armada 39x SoC with device tree.
> +
>  config MACH_ARMADA_XP
>       bool "Marvell Armada XP boards" if ARCH_MULTI_V7
>       select ARMADA_XP_CLK
> diff --git a/arch/arm/mach-mvebu/board-v7.c b/arch/arm/mach-mvebu/board-v7.c
> index 31b66f2..afee908 100644
> --- a/arch/arm/mach-mvebu/board-v7.c
> +++ b/arch/arm/mach-mvebu/board-v7.c
> @@ -232,3 +232,17 @@ DT_MACHINE_START(ARMADA_38X_DT, "Marvell Armada 380/385 
> (Device Tree)")
>       .restart        = mvebu_restart,
>       .dt_compat      = armada_38x_dt_compat,
>  MACHINE_END
> +
> +static const char * const armada_39x_dt_compat[] __initconst = {
> +     "marvell,armada390",
> +     "marvell,armada398",
> +     NULL,
> +};
> +
> +DT_MACHINE_START(ARMADA_39X_DT, "Marvell Armada 39x (Device Tree)")
> +     .l2c_aux_val    = 0,
> +     .l2c_aux_mask   = ~0,
> +     .init_irq       = mvebu_init_irq,
> +     .restart        = mvebu_restart,
> +     .dt_compat      = armada_39x_dt_compat,
> +MACHINE_END
> diff --git a/arch/arm/mach-mvebu/platsmp-a9.c 
> b/arch/arm/mach-mvebu/platsmp-a9.c
> index 2ec1a42..df0a9cc 100644
> --- a/arch/arm/mach-mvebu/platsmp-a9.c
> +++ b/arch/arm/mach-mvebu/platsmp-a9.c
> @@ -110,3 +110,5 @@ CPU_METHOD_OF_DECLARE(mvebu_armada_375_smp, 
> "marvell,armada-375-smp",
>                     &mvebu_cortex_a9_smp_ops);
>  CPU_METHOD_OF_DECLARE(mvebu_armada_380_smp, "marvell,armada-380-smp",
>                     &armada_38x_smp_ops);
> +CPU_METHOD_OF_DECLARE(mvebu_armada_390_smp, "marvell,armada-390-smp",
> +                   &armada_38x_smp_ops);
> 


-- 
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to