On Mon, 30 Aug 2021 19:51:28 PDT (-0700), tr...@konsulko.com wrote:
On Tue, Aug 31, 2021 at 04:12:21AM +0200, Daniel Schwierzeck wrote:
Am Donnerstag, dem 26.08.2021 um 11:47 -0400 schrieb Tom Rini:
> We move the SYS_CACHE_SHIFT_N options from arch/arm/Kconfig to
> arch/Kconfig, and introduce SYS_CACHE_SHIFT_4 to provide a size of
> 16.
> Introduce select statements for other architectures based on current
> usage. For MIPS, we take the existing arch-specific symbol and
> migrate
> to the generic symbol. This lets us remove a little bit of otherwise
> unused code.
>
> Cc: Alexey Brodkin <alexey.brod...@synopsys.com>
> Cc: Anup Patel <anup.pa...@wdc.com>
> Cc: Atish Patra <atish.pa...@wdc.com>
> Cc: Bin Meng <bmeng...@gmail.com>
> Cc: Daniel Schwierzeck <daniel.schwierz...@gmail.com>
> Cc: Leo <ycli...@andestech.com>
> Cc: Palmer Dabbelt <pal...@dabbelt.com>
> Cc: Paul Walmsley <paul.walms...@sifive.com>
> Cc: Rick Chen <r...@andestech.com>
> Cc: Sean Anderson <sean...@gmail.com>
> Cc: Simon Glass <s...@chromium.org>
> Signed-off-by: Tom Rini <tr...@konsulko.com>
> ---
> I'm Cc'ing a bunch of RISC-V folks since that's where I'm least
> confident and just put it per-board for now.
There's nothing in the ISA for cache line sizes, so if it's got to be a
fixed number it'l need to be a per-device thing and if there's any
correctness issues there (non-coherent stuff, for example) that will
break binary compatibility.
> ---
> arch/Kconfig | 25 +++++++++++++++++++++++++
> arch/arc/include/asm/cache.h | 3 ---
> arch/arm/Kconfig | 15 ---------------
> arch/mips/Kconfig | 26 +++-----------------------
> arch/mips/include/asm/cache.h | 12 +-----------
> arch/mips/mach-bmips/Kconfig | 20 ++++++++++----------
> arch/mips/mach-mtmips/Kconfig | 4 ++--
> arch/mips/mach-pic32/Kconfig | 2 +-
> arch/powerpc/cpu/mpc83xx/Kconfig | 6 ++++++
> arch/powerpc/cpu/mpc85xx/Kconfig | 15 +++++++++++++++
> arch/powerpc/cpu/mpc8xx/Kconfig | 2 ++
> arch/powerpc/include/asm/cache.h | 7 -------
> arch/riscv/Kconfig | 2 ++
> arch/sandbox/include/asm/cache.h | 1 -
> arch/x86/include/asm/cache.h | 7 +------
> include/configs/M5208EVBE.h | 1 -
> include/configs/M5235EVB.h | 1 -
> include/configs/M5249EVB.h | 1 -
> include/configs/M5253DEMO.h | 1 -
> include/configs/M5272C3.h | 1 -
> include/configs/M5275EVB.h | 1 -
> include/configs/M5282EVB.h | 1 -
> include/configs/M53017EVB.h | 1 -
> include/configs/M5329EVB.h | 1 -
> include/configs/M5373EVB.h | 1 -
> include/configs/amcore.h | 1 -
> include/configs/astro_mcf5373l.h | 1 -
> include/configs/cobra5272.h | 1 -
> include/configs/eb_cpu5282.h | 1 -
> include/configs/mx7ulp_evk.h | 2 --
> include/configs/rk3188_common.h | 2 --
> include/configs/rk3368_common.h | 2 --
> include/configs/sifive-unmatched.h | 2 --
> include/configs/sipeed-maix.h | 1 -
> include/configs/stmark2.h | 1 -
> 35 files changed, 68 insertions(+), 103 deletions(-)
>
> diff --git a/arch/Kconfig b/arch/Kconfig
> index b6f9e177b645..25f4a15b19f9 100644
> --- a/arch/Kconfig
> +++ b/arch/Kconfig
> @@ -7,6 +7,27 @@ config HAVE_ARCH_IOREMAP
> config NEEDS_MANUAL_RELOC
> bool
>
> +config SYS_CACHE_SHIFT_4
> + bool
> +
> +config SYS_CACHE_SHIFT_5
> + bool
> +
> +config SYS_CACHE_SHIFT_6
> + bool
> +
> +config SYS_CACHE_SHIFT_7
> + bool
> +
> +config SYS_CACHELINE_SIZE
> + int
> + default 128 if SYS_CACHE_SHIFT_7
> + default 64 if SYS_CACHE_SHIFT_6
> + default 32 if SYS_CACHE_SHIFT_5
> + default 16 if SYS_CACHE_SHIFT_4
> + # Fall-back for MIPS
> + default 32 if MIPS
can't we get rid of the SYS_ prefix? Also _CACHE_ is ambiguous,
L1_CACHE_SHIFT_* and L1_CACHELINE_SIZE are possibly more suitable.
Otherwise:
I don't see a problem to a follow-up renaming things for further
clarity (and using L1 in the name makes sense), but I am for now trying
to (as you've probably noticed) plow through the CONFIG backlog and get
everything migrated.
--
Tom