From: "Steven J. Hill" <Steven.Hill@xxxxxxxxxx> This patchset adds working Octeon Hotplug CPU. It has been tested on our 70xx and 78xx develpoment boards. The 70xx has 4 cores and the 78xx has 48 cores. This was also tested on an EdgerouterPRO, which is 2 cores (whoohoo). David Daney (4): MIPS: Allow __cpu_number_map to be larger than NR_CPUS MIPS: Octeon: Populate kernel memory from cvmx_bootmem named blocks. MIPS: Add the concept of BOOT_MEM_KERNEL to boot_mem_map. MIPS: Octeon: Add working hotplug CPU support. Steven J. Hill (7): MIPS: Octeon: Remove usage of cvmx_wait() everywhere. MIPS: Octeon: Header and file cleaning. MIPS: Octeon: Add support for accessing the boot vector. MIPS: Octeon: Update registers for new platforms. MIPS: Octeon: Add Octeon III platforms for console output. MIPS: Octeon: Remove crufty KEXEC and CRASH_DUMP code. MIPS: Octeon: Make register functions node aware. arch/mips/Kconfig | 13 +- arch/mips/cavium-octeon/executive/Makefile | 2 +- .../cavium-octeon/executive/cvmx-boot-vector.c | 167 ++++++++++++++ arch/mips/cavium-octeon/executive/cvmx-bootmem.c | 85 +++++++ .../cavium-octeon/executive/cvmx-helper-board.c | 2 +- .../cavium-octeon/executive/cvmx-helper-jtag.c | 1 + .../cavium-octeon/executive/cvmx-helper-rgmii.c | 1 + .../cavium-octeon/executive/cvmx-helper-sgmii.c | 1 + .../mips/cavium-octeon/executive/cvmx-helper-spi.c | 1 + .../cavium-octeon/executive/cvmx-helper-xaui.c | 1 + arch/mips/cavium-octeon/executive/cvmx-helper.c | 3 +- arch/mips/cavium-octeon/executive/cvmx-pko.c | 1 + arch/mips/cavium-octeon/executive/cvmx-spi.c | 11 +- arch/mips/cavium-octeon/executive/octeon-model.c | 53 ++++- arch/mips/cavium-octeon/octeon-platform.c | 1 + arch/mips/cavium-octeon/octeon_boot.h | 95 -------- arch/mips/cavium-octeon/setup.c | 246 +++++++-------------- arch/mips/cavium-octeon/smp.c | 213 +++++++----------- arch/mips/include/asm/bootinfo.h | 1 + arch/mips/include/asm/mach-cavium-octeon/irq.h | 8 + .../asm/mach-cavium-octeon/kernel-entry-init.h | 129 ++++++++++- arch/mips/include/asm/octeon/cvmx-asm.h | 6 +- arch/mips/include/asm/octeon/cvmx-boot-vector.h | 53 +++++ arch/mips/include/asm/octeon/cvmx-bootmem.h | 28 +++ arch/mips/include/asm/octeon/cvmx-ciu-defs.h | 132 ++++++----- arch/mips/include/asm/octeon/cvmx-coremask.h | 26 ++- arch/mips/include/asm/octeon/cvmx-fpa.h | 4 +- arch/mips/include/asm/octeon/cvmx-sysinfo.h | 4 +- arch/mips/include/asm/octeon/cvmx.h | 71 +++--- arch/mips/include/asm/smp.h | 2 +- arch/mips/kernel/setup.c | 18 +- arch/mips/kernel/smp.c | 4 +- arch/mips/pci/pcie-octeon.c | 12 +- drivers/watchdog/Kconfig | 1 + 34 files changed, 860 insertions(+), 536 deletions(-) create mode 100644 arch/mips/cavium-octeon/executive/cvmx-boot-vector.c delete mode 100644 arch/mips/cavium-octeon/octeon_boot.h create mode 100644 arch/mips/include/asm/octeon/cvmx-boot-vector.h -- 2.1.4