x86: qemu: Add MP initialization

Add a cpu1 node to the device tree and enable the MP initialization
on QEMU targets (i440fx and q35).

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Bin Meng 2015-07-27 19:16:08 +08:00 committed by Simon Glass
parent 417576c2f1
commit a2eb65fcad
4 changed files with 21 additions and 0 deletions

View file

@ -34,6 +34,13 @@
reg = <0>;
intel,apic-id = <0>;
};
cpu@1 {
device_type = "cpu";
compatible = "cpu-x86";
reg = <1>;
intel,apic-id = <1>;
};
};
pci {

View file

@ -45,6 +45,13 @@
reg = <0>;
intel,apic-id = <0>;
};
cpu@1 {
device_type = "cpu";
compatible = "cpu-x86";
reg = <1>;
intel,apic-id = <1>;
};
};
pci {

View file

@ -1,5 +1,7 @@
CONFIG_X86=y
CONFIG_DEFAULT_DEVICE_TREE="qemu-x86_i440fx"
CONFIG_SMP=y
CONFIG_MAX_CPUS=2
CONFIG_GENERATE_PIRQ_TABLE=y
CONFIG_GENERATE_MP_TABLE=y
CONFIG_CMD_CPU=y

View file

@ -281,6 +281,11 @@ QEMU emulates a graphic card which U-Boot supports. Removing '-nographic' will
show QEMU's VGA console window. Note this will disable QEMU's serial output.
If you want to check both consoles, use '-serial stdio'.
Multicore is also supported by QEMU via '-smp n' where n is the number of cores
to instantiate. Currently the default U-Boot built for QEMU supports 2 cores.
In order to support more cores, you need add additional cpu nodes in the device
tree and change CONFIG_MAX_CPUS accordingly.
CPU Microcode
-------------
Modern CPUs usually require a special bit stream called microcode [8] to be