[PATCH v2 00/11] MIPS: Topology & DeviceTree CPU rework v2

From: Jiaxun Yang
Date: Sat Apr 11 2020 - 23:23:24 EST


This set mainly added DeviceTree based CPU probe support and reworked
topology handling for MIPS. In order to prepare for pure DeviceTree
boot for Loongson64. It can also convinient Yanjie's Inegnic jz4780/X2000
SMP/SMT support.

I've done build test for bmips, nlm, ip27 and boot test for malta with
34Kf, I6400 in QEMU, Loongson64 on a Loongson-3B1500 real machine.

Thanks.

v2:
- Fixes

Jiaxun Yang (11):
MIPS: setup: Drop prefill_possible_map
MIPS: prom: Add helper to parse CPU node in dt
arch_topology: Make it avilable for MIPS
arch_topology: Reset all cpus in reset_cpu_topology
MIPS: Switch to arch_topology
MIPS: Kernel: Switch to new topology interface
MIPS: CPS & MT: Switch to new topology interface
irqchip: mips-cpu: Switch to new topology interface
MIPS: bmips: Switch to new topology interface
MIPS: nlm: Switch to new topology interface
MIPS: Loongson64: Switch to new topology interface

arch/mips/Kconfig | 1 +
arch/mips/include/asm/cpu-info.h | 49 --------
arch/mips/include/asm/mach-ip27/mmzone.h | 2 +
arch/mips/include/asm/mach-ip27/topology.h | 2 +
.../include/asm/mach-loongson64/topology.h | 2 +
arch/mips/include/asm/mips-cm.h | 9 +-
arch/mips/include/asm/mips-cps.h | 2 +
arch/mips/include/asm/prom.h | 6 +
arch/mips/include/asm/smp-ops.h | 2 -
arch/mips/include/asm/smp.h | 2 -
arch/mips/include/asm/sn/addrs.h | 1 +
arch/mips/include/asm/topology.h | 68 +++++++++-
arch/mips/kernel/cacheinfo.c | 19 +--
arch/mips/kernel/cpu-probe.c | 43 -------
arch/mips/kernel/mips-cm.c | 4 +-
arch/mips/kernel/mips-cpc.c | 4 +-
arch/mips/kernel/perf_event_mipsxx.c | 4 +-
arch/mips/kernel/pm-cps.c | 12 +-
arch/mips/kernel/proc.c | 8 +-
arch/mips/kernel/prom.c | 97 ++++++++++++++
arch/mips/kernel/setup.c | 22 +---
arch/mips/kernel/smp-bmips.c | 3 +-
arch/mips/kernel/smp-cmp.c | 5 +-
arch/mips/kernel/smp-cps.c | 41 +++---
arch/mips/kernel/smp-mt.c | 3 +-
arch/mips/kernel/smp.c | 55 +-------
arch/mips/kernel/topology.c | 42 +++++++
arch/mips/loongson64/smp.c | 20 +--
arch/mips/mm/c-r4k.c | 4 +-
arch/mips/mm/context.c | 4 +-
arch/mips/netlogic/common/smp.c | 4 +-
arch/mips/oprofile/op_model_mipsxx.c | 4 +-
drivers/base/arch_topology.c | 118 +++++++++---------
drivers/cpuidle/cpuidle-cps.c | 3 +-
drivers/irqchip/irq-mips-cpu.c | 2 +-
35 files changed, 361 insertions(+), 306 deletions(-)

--
2.26.0.rc2