This patch set is the kernel part of code for cpu hotplug.
I got a patch in upstream but not accepted by mainline, this patch emulate an ACPI SCI interrupt to emulate a hot-plug event. Useful for testing ACPI based hot-plug on systems that don't have the necessary firmware support. With this patch, I can test the hot-add and hot-remove repeatly.
This patch set is intended to close the cpu hotplug related cards in JIRA, just for review purpose, *should not* pushed to our linaro acpi.
I have created an acpi-hotplug-next branch in our git tree for these patches.
This patch set includes 3 parts, the forst part is the kernel code, and the second is the ASL code fix, the third part is the boot wrapper.
Hanjun Guo (4): Revert "ARM64 / CPU hot-plug: Skeleton logic cpu online/offline for cpu hot-plug" ACPI: Enable SCI_EMULATE to manually simulate physical hotplug testing arm / ACPI: Remove __cpuinit and fix __init attribute location arm: fix cpu hot add failure
Mark Rutland (6): arm64: reorganise smp_enable_ops arm64: factor out spin-table boot method arm64: read enable-method for CPU0 arm64: add CPU_HOTPLUG infrastructure arm64: add PSCI CPU_OFF-based hotplug support HACK: arm64: dts: foundation: add PSCI data
arch/arm64/Kconfig | 2 +- arch/arm64/boot/dts/foundation-v8.dts | 19 +-- arch/arm64/include/asm/irq.h | 1 + arch/arm64/include/asm/smp.h | 46 +++++-- arch/arm64/kernel/cputable.c | 2 +- arch/arm64/kernel/head.S | 12 +- arch/arm64/kernel/irq.c | 61 +++++++++ arch/arm64/kernel/process.c | 7 ++ arch/arm64/kernel/smp.c | 222 ++++++++++++++++++--------------- arch/arm64/kernel/smp_psci.c | 54 ++++++-- arch/arm64/kernel/smp_spin_table.c | 85 ++++++++++++- arch/arm64/kernel/vmlinux.lds.S | 1 - drivers/acpi/Kconfig | 10 ++ drivers/acpi/Makefile | 1 + drivers/acpi/plat/arm/boot.c | 20 +-- drivers/acpi/sci_emu.c | 145 +++++++++++++++++++++ 16 files changed, 538 insertions(+), 150 deletions(-) create mode 100644 drivers/acpi/sci_emu.c