
This patch set contains the SiFive composable cache support, and indroduce an interface to do cache initialization, each platform can overwrite it by their own implementation.
Changed in v2: - Refine the ccache driver by Sean's suggestions - Introduce a common interface for cache initialization
Zong Li (6): cache: add sifive composable cache driver board: sifive: use ccache driver instead of helper function riscv: lib: introduce cache_init interface riscv: sifive: use common cache_init instead of duplicated implementation riscv: lib: move platform-related libraries to sperate folder riscv: lib: modify the indent
arch/riscv/Kconfig | 12 ++++ arch/riscv/cpu/fu540/Kconfig | 2 + arch/riscv/cpu/fu540/Makefile | 1 - arch/riscv/cpu/fu540/cache.c | 55 --------------- arch/riscv/cpu/fu740/Kconfig | 2 + arch/riscv/cpu/fu740/Makefile | 1 - arch/riscv/cpu/fu740/cache.c | 55 --------------- arch/riscv/include/asm/arch-fu540/cache.h | 14 ---- arch/riscv/include/asm/arch-fu740/cache.h | 14 ---- arch/riscv/include/asm/cache.h | 3 +- arch/riscv/lib/Makefile | 8 +-- arch/riscv/lib/andestech/Kconfig | 8 +++ arch/riscv/lib/andestech/Makefile | 7 ++ arch/riscv/lib/{ => andestech}/andes_plic.c | 0 arch/riscv/lib/cache.c | 5 ++ arch/riscv/lib/sifive/Kconfig | 8 +++ arch/riscv/lib/sifive/Makefile | 9 +++ arch/riscv/lib/sifive/sifive_cache.c | 27 ++++++++ arch/riscv/lib/{ => sifive}/sifive_clint.c | 0 board/sifive/unleashed/unleashed.c | 12 +--- board/sifive/unmatched/unmatched.c | 11 +-- drivers/cache/Kconfig | 7 ++ drivers/cache/Makefile | 1 + drivers/cache/cache-sifive-ccache.c | 75 +++++++++++++++++++++ 24 files changed, 173 insertions(+), 164 deletions(-) delete mode 100644 arch/riscv/cpu/fu540/cache.c delete mode 100644 arch/riscv/cpu/fu740/cache.c delete mode 100644 arch/riscv/include/asm/arch-fu540/cache.h delete mode 100644 arch/riscv/include/asm/arch-fu740/cache.h create mode 100644 arch/riscv/lib/andestech/Kconfig create mode 100644 arch/riscv/lib/andestech/Makefile rename arch/riscv/lib/{ => andestech}/andes_plic.c (100%) create mode 100644 arch/riscv/lib/sifive/Kconfig create mode 100644 arch/riscv/lib/sifive/Makefile create mode 100644 arch/riscv/lib/sifive/sifive_cache.c rename arch/riscv/lib/{ => sifive}/sifive_clint.c (100%) create mode 100644 drivers/cache/cache-sifive-ccache.c