On Tue, 9 Aug 2022 13:38:32 +0200 Marek Vasut <ma...@denx.de> wrote: > On 8/9/22 13:32, Pali Rohár wrote: > > On Tuesday 09 August 2022 13:27:38 Marek Vasut wrote: > >> On 8/9/22 13:21, Pali Rohár wrote: > >> > >> (reducing the CC list) > >> > >>> On Tuesday 09 August 2022 13:16:41 Marek Vasut wrote: > >>>> On 8/9/22 12:58, Pali Rohár wrote: > >>>>> On Tuesday 09 August 2022 12:07:00 Philip Oberfichtner wrote: > >>>>>> This converts CONFIG_SYS_L2_PL310 to Kconfig. > >>>>> ... > >>>>>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig > >>>>>> index 949ebb46ba..dde06bdd96 100644 > >>>>>> --- a/arch/arm/Kconfig > >>>>>> +++ b/arch/arm/Kconfig > >>>>>> @@ -488,6 +488,10 @@ config TPL_SYS_THUMB_BUILD > >>>>>> density. For ARM architectures that support Thumb2 this flag > >>>>>> will > >>>>>> result in Thumb2 code generated by GCC. > >>>>>> +config SYS_L2_PL310 > >>>>>> + bool "ARM PL310 L2 cache controller" > >>>>>> + help > >>>>>> + Enable support for ARM PL310 L2 cache controller in U-Boot > >>>>>> config SYS_L2CACHE_OFF > >>>>>> bool "L2cache off" > >>>>>> diff --git a/arch/arm/mach-mvebu/include/mach/config.h > >>>>>> b/arch/arm/mach-mvebu/include/mach/config.h > >>>>>> index 4add0d9e10..0bba0a4cf9 100644 > >>>>>> --- a/arch/arm/mach-mvebu/include/mach/config.h > >>>>>> +++ b/arch/arm/mach-mvebu/include/mach/config.h > >>>>>> @@ -25,8 +25,6 @@ > >>>>>> #define MV88F78X60 /* for the DDR training bin_hdr code */ > >>>>>> #endif > >>>>>> -#define CONFIG_SYS_L2_PL310 > >>>>>> - > >>>>>> #define MV_UART_CONSOLE_BASE MVEBU_UART0_BASE > >>>>>> /* Needed for SPI NOR booting in SPL */ > >>>>> > >>>>> This option is required for mvebu SoC and is not user (de)-selectable. > >>>>> So please do not define it in each individual mvebu board. It would make > >>>>> it harder to introduce a new mvebu board into U-Boot. Instead enable it > >>>>> for mvebu SoCs like it was before this change. It can be done e.g. by > >>>>> "select" Kconfig keyword in mvebu Kconfig file. > >>>> > >>>> Should it rather be 'default y if MVEBU' in that new PL310 Kconfig > >>>> option ? > >>> > >>> No, because this is just default value of this option and still allows > >>> end-user to de-select this option. > >>> > >>> "select" is IIRC the only way how to force Kconfig to always enable some > >>> symbol without any option for end-user to disable it. > >>> > >>> At least I do not know a way how CONFIG_SYS_L2_PL310 symbol could decide > >>> that it is required for CONFIG_MVEBU. Just symbol CONFIG_MVEBU can > >>> decide that it requires CONFIG_SYS_L2_PL310 symbol (and not in opposite > >>> direction). > >> > >> So why should the user be unable to deselect L2CC support on MVEBU ? > >> I can very well disable L2CC support on MX6 and the platform works without > >> it just fine. Maybe the MVEBU needs to be fixed to support the same instead > >> ? > > > > Well, I'm not sure, currently it is non-deselectable option. Maybe it is > > a bug... but at least change which is doing kconfig conversion should > > not change behavior. > > I agree -- I think your proposal to make this non-user-configurable is > changing the behavior, see: > > Before -- you could comment the entry in include/configs/board.h out to > deselect an option. > After -- you can flip Kconfig switch to deselect an option.
I don't think we should consider changing sources as something that end-user should be expected to do if they want to enable/disable something. Marek