[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [v5][PATCH 4/4] xen:hw:i386:pc_piix: introduce new mach
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [v5][PATCH 4/4] xen:hw:i386:pc_piix: introduce new machine for IGD passthrough |
Date: |
Thu, 14 Aug 2014 18:03:38 +0200 |
On Tue, Aug 12, 2014 at 05:49:17PM +0800, Tiejun Chen wrote:
> Now we can introduce a new machine, xenigd, specific to IGD
> passthrough. This can avoid involving other common codes.
>
> Signed-off-by: Tiejun Chen <address@hidden>
This broke make check since the new machine was not
blacklisted.
I sent a patch to fix this,
pls make sure make check passes when posting patches.
> ---
> hw/i386/pc_piix.c | 43 +++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 43 insertions(+)
>
> v5:
>
> * Nothing is changed.
>
> v4:
>
> * Rebase
>
> v3:
>
> * Rebase
>
> v2:
>
> * Unify prefix with XEN_IGD_PASSTHROUGH/xen_igd_passthrough like patch #3
>
> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
> index 2bf8046..9d37f18 100644
> --- a/hw/i386/pc_piix.c
> +++ b/hw/i386/pc_piix.c
> @@ -309,6 +309,15 @@ static void pc_init_pci(MachineState *machine)
> TYPE_I440FX_PCI_DEVICE);
> }
>
> +
> +#ifdef CONFIG_XEN
> +static void xen_igd_passthrough_pc_init_pci(MachineState *machine)
> +{
> + pc_init1(machine, 1, 1, TYPE_I440FX_PCI_HOST_BRIDGE,
> + TYPE_XEN_IGD_PASSTHROUGH_I440FX_PCI_DEVICE);
> +}
> +#endif
> +
> static void pc_compat_2_0(MachineState *machine)
> {
> /* This value depends on the actual DSDT and SSDT compiled into
> @@ -457,6 +466,18 @@ static void pc_xen_hvm_init(MachineState *machine)
> pci_create_simple(bus, -1, "xen-platform");
> }
> }
> +
> +static void xen_igd_passthrough_pc_hvm_init(MachineState *machine)
> +{
> + PCIBus *bus;
> +
> + xen_igd_passthrough_pc_init_pci(machine);
> +
> + bus = pci_find_primary_bus();
> + if (bus != NULL) {
> + pci_create_simple(bus, -1, "xen-platform");
> + }
> +}
> #endif
>
> #define PC_I440FX_MACHINE_OPTIONS \
> @@ -906,6 +927,27 @@ static QEMUMachine xenfv_machine = {
> { /* end of list */ }
> },
> };
> +
> +static QEMUMachine xenigd_machine = {
> + PC_COMMON_MACHINE_OPTIONS,
> + .name = "xenigd",
> + .desc = "Xen Fully-virtualized PC specific to IGD",
> + .init = xen_igd_passthrough_pc_hvm_init,
> + .max_cpus = HVM_MAX_VCPUS,
> + .default_machine_opts = "accel=xen",
> + .hot_add_cpu = pc_hot_add_cpu,
> + .compat_props = (GlobalProperty[]) {
> + /* xenfv has no fwcfg and so does not load acpi from QEMU.
> + * as such new acpi features don't work.
> + */
> + {
> + .driver = "PIIX4_PM",
> + .property = "acpi-pci-hotplug-with-bridge-support",
> + .value = "off",
> + },
> + { /* end of list */ }
> + },
> +};
> #endif
>
> static void pc_machine_init(void)
> @@ -929,6 +971,7 @@ static void pc_machine_init(void)
> qemu_register_pc_machine(&isapc_machine);
> #ifdef CONFIG_XEN
> qemu_register_pc_machine(&xenfv_machine);
> + qemu_register_pc_machine(&xenigd_machine);
> #endif
> }
>
> --
> 1.9.1
- [Qemu-devel] [v5][PATCH 0/4] xen: introduce new machine for IGD passthrough, Tiejun Chen, 2014/08/12
- [Qemu-devel] [v5][PATCH 2/4] pc_init1: pass parameters just with types, Tiejun Chen, 2014/08/12
- [Qemu-devel] [v5][PATCH 1/4] i440fx: make types configurable at run-time, Tiejun Chen, 2014/08/12
- [Qemu-devel] [v5][PATCH 3/4] xen:hw:pci-host:piix: create host bridge to passthrough, Tiejun Chen, 2014/08/12
- [Qemu-devel] [v5][PATCH 4/4] xen:hw:i386:pc_piix: introduce new machine for IGD passthrough, Tiejun Chen, 2014/08/12
- Re: [Qemu-devel] [v5][PATCH 4/4] xen:hw:i386:pc_piix: introduce new machine for IGD passthrough,
Michael S. Tsirkin <=
- Re: [Qemu-devel] [v5][PATCH 0/4] xen: introduce new machine for IGD passthrough, Chen, Tiejun, 2014/08/13
- Re: [Qemu-devel] [v5][PATCH 0/4] xen: introduce new machine for IGD passthrough, Michael S. Tsirkin, 2014/08/14