On 4/9/20 12:01 PM, Patrick DELAUNAY wrote: > Dear Marek, Hi,
>> From: Uboot-stm32 <uboot-stm32-boun...@st-md-mailman.stormreply.com> On >> Behalf Of Patrick DELAUNAY >> >> Dear Marek, >> >>> From: Marek Vasut <ma...@denx.de> >>> Sent: vendredi 3 avril 2020 23:29 >>> >>> On 4/3/20 10:28 AM, Patrick Delaunay wrote: >>>> Add the new flags DCACHE_DEFAULT_OPTION to define the default option >>>> to use according the compilation flags >>>> CONFIG_SYS_ARM_CACHE_WRITETHROUGH or >>> CONFIG_SYS_ARM_CACHE_WRITEALLOC. >>> >>> Can't you unify these macros into a single Kconfig "select" statement >>> instead , and then just select the matching cache configuration in Kconfig ? >> >> Yes I will try, with 2 steps >> - migrate existing CONFIG_SYS_ARM_CACHE_.... in Kconfig > > First step done... > I will push it as a separate patchset I think. > >> - add new option CONFIG_SYS_ARM_CACHE_OPTION > > In fact it is to difficult to use select because each defines > DCACHE_XXX value can have several values > > they are build according CONFIG_ARM64 / LPAE > > But, I can't use this define in Kconfig > > I try : > option ARM_OPTION > int "option" > default DCACHE_WRITETHROUGHT if CONFIG_SYS_ARM_CACHE_WRITETHROUGH > default DCACHE_ WRITEALLOC if CONFIG_SYS_ARM_CACHE_ WRITEALLOC > default DCACHE_WRITEBACK if CONFIG_SYS_ARM_CACHE_WRITEBACK > > int and hex is invalid, and string can't be use with "". > > And I don't found way to build it automatically when option is activated. > > Any idea ? Maybe you can have a select in the Kconfig to set some differently named option, e.g. DCACHE_MODE_WRITE{THROUGH,ALLOC,BACK} and then an ifdef in some header file, e.g. #ifdef CONFIG_DCACHE_MODE_WRITETHROUGH #define ARM_CACHE_MODE DCACHE_WRITETHROUGH ... And then use ARM_CACHE_MODE where you need a value and CONFIG_DCACHE_MODE{...} where you need a config option check. Does this work ?