Hi all, This patchset adds support for the MIPS Virt board, which is based on my QEMU patch [1]. It can work with all CPUs from MIPS Technologies, and also Loongson-2E, Loongson-2F, Cavium Octeon, R4000. Thanks to generic platform, there is nothing much to do for the platform support, mostly decoupling CPU features with platform features, except for last two patches. Note that due to QEMU limitation, SMP support is currently broken for all processors other than MIPS I6400/I6500. This is because QEMU is now treatiing secundary CPUs as a VPE (MIPS Release 6 VP). I'm going to fix that after getting virt board support merged in QEMU. Thanks. - Jiaxun [1]: https://lore.kernel.org/qemu-devel/20230308000745.56394-1-philmd@xxxxxxxxxx/ Jiaxun Yang (12): MIPS: Move declaration of bcache ops to cache.c MIPS: smp-cps: Disable coherence setup for unsupported ISA MIPS: mips-cm: Check availability of config registers MIPS: Octeon: Opt-out 4k_cache feature MIPS: cpu-features: Enable octeon_cache by cpu_type MIPS: c-octeon: Provide alternative SMP cache flush function MIPS: Octeon: Allow CVMSEG to be disabled MIPS: Loongson: Move arch cflags to MIPS top level Makefile MIPS: Loongson: Don't select platform features with CPU MIPS: Octeon: Disable CVMSEG by default on other platforms MIPS: Add board config for virt board MIPS: generic: Enable all CPUs supported by virt board in Kconfig arch/mips/Kconfig | 6 ++-- arch/mips/Makefile | 38 +++++++++++++++++++++ arch/mips/cavium-octeon/Kconfig | 3 +- arch/mips/configs/generic/board-virt.config | 38 +++++++++++++++++++++ arch/mips/include/asm/cache.h | 2 ++ arch/mips/include/asm/cpu-features.h | 21 ++++++++++-- arch/mips/include/asm/processor.h | 7 +++- arch/mips/kernel/asm-offsets.c | 3 ++ arch/mips/kernel/cps-vec.S | 5 +++ arch/mips/kernel/cpu-probe.c | 2 ++ arch/mips/kernel/mips-cm.c | 9 +++-- arch/mips/kernel/smp-cps.c | 5 +++ arch/mips/loongson2ef/Kconfig | 3 ++ arch/mips/loongson2ef/Platform | 35 ------------------- arch/mips/loongson64/Platform | 16 --------- arch/mips/mm/c-octeon.c | 5 +++ arch/mips/mm/c-r4k.c | 14 -------- arch/mips/mm/cache.c | 19 +++++++++++ 18 files changed, 158 insertions(+), 73 deletions(-) create mode 100644 arch/mips/configs/generic/board-virt.config -- 2.39.2 (Apple Git-143)