[U-Boot] [PATCH 2/2] x86: qemu: Add MP initialization
Simon Glass
sjg at chromium.org
Sun Aug 2 23:23:51 CEST 2015
On 27 July 2015 at 05:16, Bin Meng <bmeng.cn at gmail.com> wrote:
> 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 at gmail.com>
> ---
>
> arch/x86/dts/qemu-x86_i440fx.dts | 7 +++++++
> arch/x86/dts/qemu-x86_q35.dts | 7 +++++++
> configs/qemu-x86_defconfig | 2 ++
> doc/README.x86 | 5 +++++
> 4 files changed, 21 insertions(+)
>
> diff --git a/arch/x86/dts/qemu-x86_i440fx.dts b/arch/x86/dts/qemu-x86_i440fx.dts
> index c26c71b..fc74cd0 100644
> --- a/arch/x86/dts/qemu-x86_i440fx.dts
> +++ b/arch/x86/dts/qemu-x86_i440fx.dts
> @@ -34,6 +34,13 @@
> reg = <0>;
> intel,apic-id = <0>;
> };
> +
> + cpu at 1 {
> + device_type = "cpu";
> + compatible = "cpu-x86";
> + reg = <1>;
> + intel,apic-id = <1>;
> + };
> };
>
> pci {
> diff --git a/arch/x86/dts/qemu-x86_q35.dts b/arch/x86/dts/qemu-x86_q35.dts
> index 2e785fa..7f16971 100644
> --- a/arch/x86/dts/qemu-x86_q35.dts
> +++ b/arch/x86/dts/qemu-x86_q35.dts
> @@ -45,6 +45,13 @@
> reg = <0>;
> intel,apic-id = <0>;
> };
> +
> + cpu at 1 {
> + device_type = "cpu";
> + compatible = "cpu-x86";
> + reg = <1>;
> + intel,apic-id = <1>;
> + };
> };
>
> pci {
> diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
> index 4b18d51..e579c36 100644
> --- a/configs/qemu-x86_defconfig
> +++ b/configs/qemu-x86_defconfig
> @@ -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
> diff --git a/doc/README.x86 b/doc/README.x86
> index 5d71244..1cab42c 100644
> --- a/doc/README.x86
> +++ b/doc/README.x86
> @@ -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.
nit: is built
> +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
> --
> 1.8.2.1
>
Acked-by: Simon Glass <sjg at chromium.org>
Tested-by: Simon Glass <sjg at chromium.org>
More information about the U-Boot
mailing list