Taken from Paul Burton MIPS repo with minor changes from Chao-ying Fu. Tested with 64r6el_defconfig on Boston board in 2 cluster/2 VPU and 1 cluster/4 VPU configurations. v4: - Re-base onto the master branch, with no functionality impact. - Refactor MIPS FDC driver in the context of multicluster support. v3: - Add Reviewed-by: Jiaxun Yang <jiaxun.yang@xxxxxxxxxxx> for the patch 02/12. - Add the changes requested by Marc Zyngier for the 3/12 patch. - Remove the patch 11/12 (a consequence of a discussion between Jiaxun Yang and Marc Zyngier. - Re-base onto the master branch, with no functionality impact. v2: - Apply correct Signed-off-by to avoid confusion. Aleksandar Rikalo (3): mips: Enable FDC on MIPS R6 platforms. mips: Move FDC driver to a separate directory mips: FDC driver refactor Chao-ying Fu (1): irqchip: mips-gic: Setup defaults in each cluster Paul Burton (10): MIPS: CPS: Add a couple of multi-cluster utility functions MIPS: GIC: Generate redirect block accessors irqchip: mips-gic: Introduce for_each_online_cpu_gic() irqchip: mips-gic: Support multi-cluster in for_each_online_cpu_gic() irqchip: mips-gic: Multi-cluster support clocksource: mips-gic-timer: Always use cluster 0 counter as clocksource clocksource: mips-gic-timer: Enable counter when CPUs start MIPS: pm-cps: Use per-CPU variables as per-CPU, not per-core MIPS: CPS: Introduce struct cluster_boot_config MIPS: CPS: Boot CPUs in secondary clusters arch/mips/include/asm/mips-cm.h | 18 ++ arch/mips/include/asm/mips-cps.h | 38 +++ arch/mips/include/asm/mips-gic.h | 50 ++- arch/mips/include/asm/smp-cps.h | 7 +- arch/mips/kernel/asm-offsets.c | 3 + arch/mips/kernel/cps-vec.S | 19 +- arch/mips/kernel/mips-cm.c | 41 ++- arch/mips/kernel/pm-cps.c | 35 ++- arch/mips/kernel/smp-cps.c | 288 ++++++++++++++---- drivers/bus/Kconfig | 2 +- drivers/clocksource/mips-gic-timer.c | 45 ++- drivers/irqchip/Kconfig | 1 + drivers/irqchip/irq-mips-gic.c | 276 ++++++++++++++--- drivers/tty/Makefile | 2 +- drivers/tty/mips_fdc/Makefile | 4 + drivers/tty/mips_fdc/ejtag-fdc-mips.c | 29 ++ .../ejtag-fdc.c} | 66 +--- drivers/tty/mips_fdc/ejtag-fdc.h | 55 ++++ 18 files changed, 794 insertions(+), 185 deletions(-) create mode 100644 drivers/tty/mips_fdc/Makefile create mode 100644 drivers/tty/mips_fdc/ejtag-fdc-mips.c rename drivers/tty/{mips_ejtag_fdc.c => mips_fdc/ejtag-fdc.c} (92%) create mode 100644 drivers/tty/mips_fdc/ejtag-fdc.h -- 2.25.1