This patch series mainly add MP support to QEMU as well as some other necessary fixes for x86.
Verified by booting Linux kernel on QEMU i440FX and Q35, and make sure I/O APIC interrupt is being used by the kernel with the help of MP table provided by U-Boot. This series is the prerequisite for the follow-up ACPI support which is currently being worked on by Saket. It seems that QEMU multicore emulation is sort of random, as the mp_init() does not realibly succeed on different machines with previous patch, this v2 does not include that patch, instead it just enabled MP table with UP mode. Changes in v3: - Remove the call to device_probe() - Add a comment to explain why return value is not checked Changes in v2: - Drop patches that are already applied - Add a TODO comment above mp_determine_pci_dstirq() - New patch to allow cpu-x86 driver to be probed for UP - Drop QEMU mp_init patch - Change /cpus node to include just one cpu - New patch to reserve PCIe ECAM address range in the E820 table Bin Meng (7): x86: mpspec: Allow platform to determine how PIRQ is connected to I/O APIC x86: mpspec: Move writing ISA interrupt entry after PCI x86: qemu: Enable I/O APIC chip select on PIIX3 x86: Allow cpu-x86 driver to be probed for UP x86: qemu: Enable writing MP table x86: qemu: Turn on PCIe ECAM address range decoding on Q35 x86: Reserve PCIe ECAM address range in the E820 table arch/x86/Kconfig | 10 +++++++ arch/x86/cpu/cpu.c | 9 +++++++ arch/x86/cpu/qemu/pci.c | 45 ++++++++++++++++++++++++++++--- arch/x86/dts/qemu-x86_i440fx.dts | 12 +++++++++ arch/x86/dts/qemu-x86_q35.dts | 12 +++++++++ arch/x86/include/asm/arch-qemu/qemu.h | 10 ++++++- arch/x86/include/asm/mpspec.h | 17 ++++++++++++ arch/x86/lib/fsp/fsp_dram.c | 6 +++++ arch/x86/lib/mpspec.c | 50 ++++++++++++++++++++++++++--------- arch/x86/lib/zimage.c | 5 +++- configs/qemu-x86_defconfig | 3 +++ 11 files changed, 161 insertions(+), 18 deletions(-) -- 1.8.2.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot