Message ID | 20231102152033.5511-3-duje.mihanovic@skole.hr (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Initial Marvell PXA1908 support | expand |
On Friday, November 3, 2023 4:34:54 PM CET Robin Murphy wrote: > On 2023-11-02 3:20 pm, Duje Mihanović wrote: > > +config ARCH_MMP > > + bool "Marvell MMP SoC Family" > > + select ARM_GIC > > + select ARM_ARCH_TIMER > > + select ARM_SMMU > > NAK, not only is selecting user-visible symbols generally frowned upon, > and ignoring their dependencies even worse, but for a multiplatform > kernel the user may well want this to be a module. > > If having the SMMU driver built-in is somehow fundamentally required for > this platform to boot, that would represent much bigger problems. The SoC can boot without SMMU and PDMA, but not GIC, pinctrl or the arch timer. I see that most other SoCs still select drivers and frameworks they presumably need for booting, with the exceptions of ARCH_BITMAIN, ARCH_LG1K and a couple others. Which of these two options should I go for? Regards, Duje
On 2023-11-03 5:02 pm, Duje Mihanović wrote: > On Friday, November 3, 2023 4:34:54 PM CET Robin Murphy wrote: >> On 2023-11-02 3:20 pm, Duje Mihanović wrote: >>> +config ARCH_MMP >>> + bool "Marvell MMP SoC Family" >>> + select ARM_GIC >>> + select ARM_ARCH_TIMER >>> + select ARM_SMMU >> >> NAK, not only is selecting user-visible symbols generally frowned upon, >> and ignoring their dependencies even worse, but for a multiplatform >> kernel the user may well want this to be a module. >> >> If having the SMMU driver built-in is somehow fundamentally required for >> this platform to boot, that would represent much bigger problems. > > The SoC can boot without SMMU and PDMA, but not GIC, pinctrl or the arch > timer. I see that most other SoCs still select drivers and frameworks they > presumably need for booting, with the exceptions of ARCH_BITMAIN, ARCH_LG1K > and a couple others. Which of these two options should I go for? Well, you don't really need to select ARM_GIC or ARM_ARCH_TIMER here either, since those are already selected by ARM64 itself. Keeping PINCTRL_SINGLE is fair, although you should also select PINCTRL as its dependency. As an additional nit, the file seems to be primarily ordered by symbol name, so it might be nice to slip ARCH_MMC in between ARCH_MESON and ARCH_MVEBU. Cheers, Robin.
diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms index 6069120199bb..b417cae42c84 100644 --- a/arch/arm64/Kconfig.platforms +++ b/arch/arm64/Kconfig.platforms @@ -89,6 +89,17 @@ config ARCH_BERLIN help This enables support for Marvell Berlin SoC Family +config ARCH_MMP + bool "Marvell MMP SoC Family" + select ARM_GIC + select ARM_ARCH_TIMER + select ARM_SMMU + select MMP_PDMA + select PINCTRL_SINGLE + help + This enables support for Marvell MMP SoC family, currently + supporting PXA1908 aka IAP140. + config ARCH_BITMAIN bool "Bitmain SoC Platforms" help
Add ARCH_MMP configuration option for Marvell PXA1908 SoC. Signed-off-by: Duje Mihanović <duje.mihanovic@skole.hr> --- arch/arm64/Kconfig.platforms | 11 +++++++++++ 1 file changed, 11 insertions(+)