[PATCH v2 0/8] x86: allow building without PC machine types

Paolo Bonzini posted 8 patches 4 years, 4 months ago
Test asan failed
Test checkpatch failed
Test FreeBSD failed
Test docker-mingw@fedora failed
Test docker-clang@ubuntu failed
Test docker-quick@centos7 failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/1576171754-45138-1-git-send-email-pbonzini@redhat.com
Maintainers: Aleksandar Rikalo <aleksandar.rikalo@rt-rk.com>, Aleksandar Markovic <amarkovic@wavecomp.com>, Marcelo Tosatti <mtosatti@redhat.com>, Igor Mammedov <imammedo@redhat.com>, "Philippe Mathieu-Daudé" <philmd@redhat.com>, "Hervé Poussineau" <hpoussin@reactos.org>, "Michael S. Tsirkin" <mst@redhat.com>, Sergio Lopez <slp@redhat.com>, Helge Deller <deller@gmx.de>, Paolo Bonzini <pbonzini@redhat.com>, Aurelien Jarno <aurelien@aurel32.net>, Richard Henderson <rth@twiddle.net>, Eduardo Habkost <ehabkost@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
hw/acpi/Makefile.objs                              |   2 +-
.../pc_madt_cpu_entry.c => hw/acpi/acpi-x86-stub.c |   0
hw/alpha/alpha_sys.h                               |   3 +-
hw/alpha/dp264.c                                   |   1 +
hw/hppa/hppa_sys.h                                 |   3 +-
hw/hppa/machine.c                                  |   1 +
hw/i386/Kconfig                                    |   6 +
hw/i386/Makefile.objs                              |   9 +-
hw/i386/acpi-build.c                               |   1 +
hw/i386/fw_cfg.c                                   |   8 +-
hw/i386/fw_cfg.h                                   |   2 +
hw/i386/kvm/Makefile.objs                          |   6 +-
hw/i386/kvm/i8259.c                                |   1 +
hw/i386/kvm/ioapic.c                               |   2 +-
hw/i386/microvm.c                                  |   4 +-
hw/i386/pc.c                                       | 153 +--------------------
hw/i386/pc_piix.c                                  |   6 +-
hw/i386/pc_q35.c                                   |   2 +-
hw/i386/x86-iommu-stub.c                           |  34 +++++
hw/i386/x86-iommu.c                                |   1 -
hw/i386/x86.c                                      | 151 +++++++++++++++++++-
hw/input/pckbd.c                                   |   1 -
hw/intc/Kconfig                                    |   2 +
hw/intc/apic.c                                     |   2 +-
hw/intc/i8259.c                                    |   2 +-
hw/intc/i8259_common.c                             |   2 +-
hw/intc/ioapic.c                                   |   3 +-
hw/isa/i82378.c                                    |   2 +-
hw/isa/lpc_ich9.c                                  |   1 -
hw/isa/piix4.c                                     |   2 +-
hw/mips/gt64xxx_pci.c                              |   2 +-
hw/mips/mips_fulong2e.c                            |   2 +-
hw/mips/mips_jazz.c                                |   2 +-
hw/mips/mips_r4k.c                                 |   2 +-
hw/pci-host/bonito.c                               |   1 -
hw/pci-host/prep.c                                 |   2 +-
hw/pci/pci-stub.c                                  |  27 ++++
include/hw/i386/pc.h                               |  31 -----
include/hw/i386/x86.h                              |  23 ++++
include/hw/intc/i8259.h                            |  12 ++
include/hw/isa/i8259_internal.h                    |   2 +-
stubs/Makefile.objs                                |   1 -
target/i386/kvm.c                                  |   5 +-
target/i386/machine.c                              |   2 +-
target/i386/monitor.c                              |   1 -
45 files changed, 307 insertions(+), 221 deletions(-)
rename stubs/pc_madt_cpu_entry.c => hw/acpi/acpi-x86-stub.c (100%)
create mode 100644 hw/i386/x86-iommu-stub.c
create mode 100644 include/hw/intc/i8259.h
[PATCH v2 0/8] x86: allow building without PC machine types
Posted by Paolo Bonzini 4 years, 4 months ago
In fact I went one step further and ensured that microvm could build
without pc.h even. :)

Paolo

v1->v2: more thorough cleansing of pc.h (new patches 3/7/8) [Sergio]
	move SMM property to X86MachineState (patch 5) [Sergio]

Paolo Bonzini (8):
  i386: conditionally compile more files
  fw_cfg: allow building without other devices
  hw: replace hw/i386/pc.h with a header just for the i8259
  pci-stub: add more MSI functions
  x86: move SMM property to X86MachineState
  x86: move more x86-generic functions out of PC files
  acpi: move PC stubs out of stubs/
  pc: stubify x86 iommu

 hw/acpi/Makefile.objs                              |   2 +-
 .../pc_madt_cpu_entry.c => hw/acpi/acpi-x86-stub.c |   0
 hw/alpha/alpha_sys.h                               |   3 +-
 hw/alpha/dp264.c                                   |   1 +
 hw/hppa/hppa_sys.h                                 |   3 +-
 hw/hppa/machine.c                                  |   1 +
 hw/i386/Kconfig                                    |   6 +
 hw/i386/Makefile.objs                              |   9 +-
 hw/i386/acpi-build.c                               |   1 +
 hw/i386/fw_cfg.c                                   |   8 +-
 hw/i386/fw_cfg.h                                   |   2 +
 hw/i386/kvm/Makefile.objs                          |   6 +-
 hw/i386/kvm/i8259.c                                |   1 +
 hw/i386/kvm/ioapic.c                               |   2 +-
 hw/i386/microvm.c                                  |   4 +-
 hw/i386/pc.c                                       | 153 +--------------------
 hw/i386/pc_piix.c                                  |   6 +-
 hw/i386/pc_q35.c                                   |   2 +-
 hw/i386/x86-iommu-stub.c                           |  34 +++++
 hw/i386/x86-iommu.c                                |   1 -
 hw/i386/x86.c                                      | 151 +++++++++++++++++++-
 hw/input/pckbd.c                                   |   1 -
 hw/intc/Kconfig                                    |   2 +
 hw/intc/apic.c                                     |   2 +-
 hw/intc/i8259.c                                    |   2 +-
 hw/intc/i8259_common.c                             |   2 +-
 hw/intc/ioapic.c                                   |   3 +-
 hw/isa/i82378.c                                    |   2 +-
 hw/isa/lpc_ich9.c                                  |   1 -
 hw/isa/piix4.c                                     |   2 +-
 hw/mips/gt64xxx_pci.c                              |   2 +-
 hw/mips/mips_fulong2e.c                            |   2 +-
 hw/mips/mips_jazz.c                                |   2 +-
 hw/mips/mips_r4k.c                                 |   2 +-
 hw/pci-host/bonito.c                               |   1 -
 hw/pci-host/prep.c                                 |   2 +-
 hw/pci/pci-stub.c                                  |  27 ++++
 include/hw/i386/pc.h                               |  31 -----
 include/hw/i386/x86.h                              |  23 ++++
 include/hw/intc/i8259.h                            |  12 ++
 include/hw/isa/i8259_internal.h                    |   2 +-
 stubs/Makefile.objs                                |   1 -
 target/i386/kvm.c                                  |   5 +-
 target/i386/machine.c                              |   2 +-
 target/i386/monitor.c                              |   1 -
 45 files changed, 307 insertions(+), 221 deletions(-)
 rename stubs/pc_madt_cpu_entry.c => hw/acpi/acpi-x86-stub.c (100%)
 create mode 100644 hw/i386/x86-iommu-stub.c
 create mode 100644 include/hw/intc/i8259.h

-- 
1.8.3.1