This patch set is about to implement the CPU topology support for ACPI processor driver, which includes the os lever code and the ASL code. both are compiled ok, but not tested on the hardware;
For the ACPI processor driver, when cpu is hot added, arch_fix_phys_package_id(), acpi_map_lsapic() and arch_register_cpu() are arch specific; When cpu is hot removed, arch_unregister_cpu()/acpi_unmap_lsapic() is arch specific.
arch_register_cpu() will register the logic cpu on sysfs, create topology information interface, and create online/offline interface for cpu hotplug. unregister is doing the reverse.
For the ASL part, I implement the proto code for the CPU topology with one physical CPU and two cpu cores.
Hanjun Guo (5): ARM:ACPI: introduce arch_fix_phys_package_id() for armv7 ARM:ACPI: move topology_init() to arch/arm/kernel/topology.c ARM:ACPI: introduce arch_register_cpu() and arch_unregister_cpu() ARM:ACPI: remove CONFIG_X86 in processor_driver.c ASL code for CPU topology support for ACPI processor driver
arch/arm/boot/asl/exynos5250-arndale.acpi/dsdt.asl | 106 +++++++++++++++++++- arch/arm/include/asm/cpu.h | 6 ++ arch/arm/include/asm/topology.h | 1 + arch/arm/kernel/setup.c | 21 ---- arch/arm/kernel/topology.c | 54 ++++++++++ drivers/acpi/processor_driver.c | 9 -- 6 files changed, 165 insertions(+), 32 deletions(-)