qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [RFC v2 00/39] Convert PC machine-types to QOM classes
@ 2014-06-13 19:43 Eduardo Habkost
  2014-06-13 19:43 ` [Qemu-devel] [RFC v2 01/39] q35: Use PC_Q35_COMPAT_1_4 on pc-q35-1.4 compat_props Eduardo Habkost
                   ` (39 more replies)
  0 siblings, 40 replies; 46+ messages in thread
From: Eduardo Habkost @ 2014-06-13 19:43 UTC (permalink / raw)
  To: qemu-devel, Michael S. Tsirkin
  Cc: Marcel Apfelbaum, Alexander Graf, Don Slutz, Anthony Liguori,
	Igor Mammedov, Andreas Färber

Now with lots of cleanup, so you can see how the end result will look like after
the conversion.

My goal is that _all_ PC machine-types should be declared using only a
class_init + TypeInfo pair, and nothing else. The only thing I couldn't
eliminate yet were the pc_compat_*() functions, because we still need them for
the KVM CPUID compat stuff.

Eduardo Habkost (39):
  q35: Use PC_Q35_COMPAT_1_4 on pc-q35-1.4 compat_props
  piix: Move pc-0.14 qxl compat properties to PC_COMPAT_0_14
  piix: Move pc-0.13 virtio-9p-pci compat to PC_COMPAT_0_13
  piix: Move pc-0.1[23] rombar compat props to PC_COMPAT_0_13
  piix: Move pc-0.11 drive version compat props TO PC_COMPAT_0_11
  vl.c: Use qdev_prop_register_global() for single globals
  machine: Make compat_props a linked list
  pc: Register machine classes directly instead of using QEMUMachine
  pc: Eliminate pc_common_machine_options()
  pc: Eliminate pc_default_machine_options()
  piix: Eliminate pc_i440fx_machine_options()
  q35: Eliminate pc_q35_machine_options()
  q35: Eliminate pc_q35_1_4_machine_options()
  pc: Eliminate *machine_options macros
  piix: Make all *machine_options() functions call the previous one
  pc: Eliminate all *_machine_options() functions
  pc: Move pci_enabled parameter to PCMachineClass
  q35: Use PCMachineClass.pci_enabled field
  pc: Move kvmclock_enabled to PCMachineClass
  pc: Move smbios_legacy_mode to PCMachineClass
  pc: Move smbios_defaults to PCMachineClass
  pc: Move has_acpi_build to PCMachineClass
  pc: Move has_pci_info to PCMachineClass
  pc: Move gigabyte_align to PCMachineClass
  pc: Move has_reserved_memory to PCMachineClass
  pc: Move option_rom_has_mr/rom_file_has_mr to MachineClass
  piix: Eliminate pc_init_pci()
  piix: Introduce struct PCI440FXMachineClass
  pc: Create common machine init function
  pc: Eliminate empty or trivial compat functions
  piix: Move compat/init functions closer to corresponding class_init
  pc: Rename pc_machine variable to pcms
  pc: Move {ram,pci,rom}_memory variables to PCMachineState
  pc: Move duplicate Xen init code to pc_machine_init()
  pc: Move icc_bridge variable to PCMachineState
  pc: Move duplicate icc-bridge and CPU initalization to
    pc_machine_init()
  pc: Make pc_cpus_init() static
  pc: Make pc_cpus_init() use PCMachineState
  machine: Eliminate QEMUMachine.compat_props

 hw/core/loader.c             |  12 +-
 hw/core/machine.c            |  17 +
 hw/core/qdev-properties.c    |   9 +-
 hw/i386/pc.c                 |  83 ++---
 hw/i386/pc_piix.c            | 802 +++++++++++++++++++++++--------------------
 hw/i386/pc_q35.c             | 288 ++++++++--------
 include/hw/boards.h          |  13 +-
 include/hw/i386/pc.h         |  44 +--
 include/hw/qdev-core.h       |   2 +
 include/hw/qdev-properties.h |   2 +-
 vl.c                         |  44 +--
 11 files changed, 688 insertions(+), 628 deletions(-)

-- 
1.9.0

^ permalink raw reply	[flat|nested] 46+ messages in thread

end of thread, other threads:[~2014-06-16 12:38 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-13 19:43 [Qemu-devel] [RFC v2 00/39] Convert PC machine-types to QOM classes Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 01/39] q35: Use PC_Q35_COMPAT_1_4 on pc-q35-1.4 compat_props Eduardo Habkost
2014-06-16 10:28   ` Andreas Färber
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 02/39] piix: Move pc-0.14 qxl compat properties to PC_COMPAT_0_14 Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 03/39] piix: Move pc-0.13 virtio-9p-pci compat to PC_COMPAT_0_13 Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 04/39] piix: Move pc-0.1[23] rombar compat props " Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 05/39] piix: Move pc-0.11 drive version compat props TO PC_COMPAT_0_11 Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 06/39] vl.c: Use qdev_prop_register_global() for single globals Eduardo Habkost
2014-06-16 10:30   ` Andreas Färber
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 07/39] machine: Make compat_props a linked list Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 08/39] pc: Register machine classes directly instead of using QEMUMachine Eduardo Habkost
2014-06-16 10:36   ` Andreas Färber
2014-06-16 12:38     ` Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 09/39] pc: Eliminate pc_common_machine_options() Eduardo Habkost
2014-06-16 11:10   ` Andreas Färber
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 10/39] pc: Eliminate pc_default_machine_options() Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 11/39] piix: Eliminate pc_i440fx_machine_options() Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 12/39] q35: Eliminate pc_q35_machine_options() Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 13/39] q35: Eliminate pc_q35_1_4_machine_options() Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 14/39] pc: Eliminate *machine_options macros Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 15/39] piix: Make all *machine_options() functions call the previous one Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 16/39] pc: Eliminate all *_machine_options() functions Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 17/39] pc: Move pci_enabled parameter to PCMachineClass Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 18/39] q35: Use PCMachineClass.pci_enabled field Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 19/39] pc: Move kvmclock_enabled to PCMachineClass Eduardo Habkost
2014-06-13 19:43 ` [Qemu-devel] [RFC v2 20/39] pc: Move smbios_legacy_mode " Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 21/39] pc: Move smbios_defaults " Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 22/39] pc: Move has_acpi_build " Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 23/39] pc: Move has_pci_info " Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 24/39] pc: Move gigabyte_align " Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 25/39] pc: Move has_reserved_memory " Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 26/39] pc: Move option_rom_has_mr/rom_file_has_mr to MachineClass Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 27/39] piix: Eliminate pc_init_pci() Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 28/39] piix: Introduce struct PCI440FXMachineClass Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 29/39] pc: Create common machine init function Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 30/39] pc: Eliminate empty or trivial compat functions Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 31/39] piix: Move compat/init functions closer to corresponding class_init Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 32/39] pc: Rename pc_machine variable to pcms Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 33/39] pc: Move {ram, pci, rom}_memory variables to PCMachineState Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 34/39] pc: Move duplicate Xen init code to pc_machine_init() Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 35/39] pc: Move icc_bridge variable to PCMachineState Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 36/39] pc: Move duplicate icc-bridge and CPU initalization to pc_machine_init() Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 37/39] pc: Make pc_cpus_init() static Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 38/39] pc: Make pc_cpus_init() use PCMachineState Eduardo Habkost
2014-06-13 19:44 ` [Qemu-devel] [RFC v2 39/39] machine: Eliminate QEMUMachine.compat_props Eduardo Habkost
2014-06-14  3:53 ` [Qemu-devel] [RFC v2 00/39] Convert PC machine-types to QOM classes Eduardo Habkost

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).