[U-Boot] [PATCH 2/4] arm: mvebu: Add Marvell's integrated CPUs

Stefan Roese sr at denx.de
Fri Feb 15 12:38:44 UTC 2019


Hi Chis,

On 15.02.19 12:57, Chris Packham wrote:
> 
> 
> On Fri, 15 Feb 2019, 11:06 PM Stefan Roese <sr at denx.de <mailto:sr at denx.de> wrote:
> 
>     Hi Chris,
> 
>     On 15.02.19 10:41, Chris Packham wrote:
>      > Marvell's switch chips with integrated CPUs (collectively referred to as
>      > MSYS) share common ancestry with the Armada SoCs. Some of the IP blocks
>      > (e.g. xor) are located at different addresses and DFX server exists as a
>      > separate target on the MBUS (on Armada-38x it's just part of the core
>      > complex registers).
>      >
>      > Signed-off-by: Chris Packham <judge.packham at gmail.com <mailto:judge.packham at gmail.com>>
>      > ---
>      >
>      >   arch/arm/mach-mvebu/Kconfig               | 18 ++++++++++++-
>      >   arch/arm/mach-mvebu/Makefile              |  1 +
>      >   arch/arm/mach-mvebu/cpu.c                 | 32 +++++++++++++++++++++--
>      >   arch/arm/mach-mvebu/include/mach/config.h |  2 +-
>      >   arch/arm/mach-mvebu/include/mach/cpu.h    |  3 +++
>      >   arch/arm/mach-mvebu/include/mach/soc.h    | 20 ++++++++++++++
>      >   drivers/ddr/marvell/axp/xor_regs.h        |  4 +++
>      >   7 files changed, 76 insertions(+), 4 deletions(-)
>      >
>      > diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
>      > index 7dda04e0e34e..05aa2ade0499 100644
>      > --- a/arch/arm/mach-mvebu/Kconfig
>      > +++ b/arch/arm/mach-mvebu/Kconfig
>      > @@ -46,7 +46,7 @@ config ARMADA_8K
>      >   # Armada PLL frequency (used for NAND clock generation)
>      >   config SYS_MVEBU_PLL_CLOCK
>      >       int
>      > -     default "2000000000" if ARMADA_XP || ARMADA_3700 || ARMADA_8K
>      > +     default "2000000000" if ARMADA_XP || ARMADA_3700 || ARMADA_8K || MSYS
> 
>     I personally find this "MSYS" abbreviation quite short and not
>     descriptive. How is this handled (if at all yet) in Linux?
> 
> 
> I did briefly consider ARMADA_MSYS. But settled on MSYS because that's
> how Marvell tend to refer to it. Marvells code uses MSYS, XCAT3, AC3
> and BC2 depending on how specific they need to be (e.g. the ddr code
> needs to distinguish AC3 and BC2).

I see. But now CONFIG_MSYS is mostly used vs CONFIG_ARMADA_38X etc.
I personally find this now clear and would prefer CONFIG_ARMADA_MSYS
over CONFIG_MSYS. You can always define CONFIG_MSYS in some DDR code
header, once this should be integrated.
  
> In Linux I originally proposed MSYS but eventually we went with
> MV98DX3326 as the base and used the other chip names where needed.
> But that mostly works out because the arch code is generic so the
> things that use these names are mostly compat strings.

I see. Isn't there any CONFIG_MACH_foo set for this SoC type (like
CONFIG_MACH_ARMADA_38X) in Linux? Or is CONFIG_MACH_ARMADA_XP selected
for this SoC as well?

Still, if we need to make this distinction in U-Boot (compared to the
more generic arch code in Linux), I would prefer CONFIG_ARMADA_MSYS
compared to CONFIG_MSYS or CONFIG_MV98DX3326.

Thanks,
Stefan


More information about the U-Boot mailing list