[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 00/22] qom: use Type system to register all devices
From: |
Anthony Liguori |
Subject: |
[Qemu-devel] [PATCH 00/22] qom: use Type system to register all devices (v2) |
Date: |
Wed, 1 Feb 2012 13:50:41 -0600 |
This is the 3rd QOM series. All known issues have been resolved. This has been
extensively tested (including for bisectability). I think this is ready to
apply.
The goal of this series is to make DeviceState a first class QOM base class.
The result is that you can object_new(TYPE_E1000) and have a functioning
device. qdev_create() and qdev_free() are now trivialized as QOM wrappers.
Patch 8/23 is an automated touch everything patch. I decided to leave it as
one big patch because this is entirely programmatic. There's no intelligence
in this patch so I think it's easier to review quickly as one big change.
The other notable feature of this series it that properties have been moved to
the Object base class. This means that other subsystems can begin using QOM.
This is the last touch every file in the tree series.
b/Makefile.objs | 4
b/hw/9pfs/virtio-9p-device.c | 16
b/hw/a9mpcore.c | 40 -
b/hw/ac97.c | 18
b/hw/acpi_piix4.c | 20
b/hw/ads7846.c | 11
b/hw/alpha_typhoon.c | 14
b/hw/apb_pci.c | 41 -
b/hw/apic.c | 10
b/hw/apic_common.c | 15
b/hw/apic_internal.h | 1
b/hw/applesmc.c | 28 -
b/hw/arm11mpcore.c | 28 -
b/hw/arm_l2x0.c | 24
b/hw/arm_mptimer.c | 28 -
b/hw/arm_sysctl.c | 18
b/hw/arm_timer.c | 35 -
b/hw/armv7m.c | 14
b/hw/armv7m_nvic.c | 32 -
b/hw/bitbang_i2c.c | 14
b/hw/bonito.c | 32 -
b/hw/ccid-card-emulated.c | 35 -
b/hw/ccid-card-passthru.c | 28 -
b/hw/ccid.h | 1
b/hw/cirrus_vga.c | 30 -
b/hw/cs4231.c | 18
b/hw/cs4231a.c | 30 -
b/hw/debugcon.c | 26
b/hw/dec_pci.c | 40 -
b/hw/ds1225y.c | 16
b/hw/ds1338.c | 11
b/hw/e1000.c | 20
b/hw/eccmemctl.c | 18
b/hw/eepro100.c | 83 +--
b/hw/empty_slot.c | 11
b/hw/es1370.c | 16
b/hw/escc.c | 18
b/hw/esp.c | 18
b/hw/etraxfs_eth.c | 14
b/hw/etraxfs_pic.c | 14
b/hw/etraxfs_ser.c | 16
b/hw/etraxfs_timer.c | 11
b/hw/fdc.c | 76 +-
b/hw/fw_cfg.c | 20
b/hw/g364fb.c | 20
b/hw/grackle_pci.c | 26
b/hw/grlib_apbuart.c | 14
b/hw/grlib_gptimer.c | 16
b/hw/grlib_irqmp.c | 16
b/hw/gt64xxx.c | 22
b/hw/gus.c | 32 -
b/hw/hda-audio.c | 36 -
b/hw/highbank.c | 18
b/hw/hpet.c | 20
b/hw/i2c.c | 23
b/hw/i2c.h | 3
b/hw/i82374.c | 22
b/hw/i82378.c | 22
b/hw/i8254.c | 30 -
b/hw/i8259.c | 11
b/hw/i8259_common.c | 13
b/hw/i8259_internal.h | 1
b/hw/ide/ahci.c | 24
b/hw/ide/cmd646.c | 14
b/hw/ide/ich.c | 15
b/hw/ide/isa.c | 30 -
b/hw/ide/piix.c | 44 -
b/hw/ide/qdev.c | 95 ++-
b/hw/ide/via.c | 14
b/hw/integratorcp.c | 25
b/hw/intel-hda.c | 39 -
b/hw/intel-hda.h | 1
b/hw/ioapic.c | 14
b/hw/ioapic_common.c | 10
b/hw/ioapic_internal.h | 1
b/hw/ioh3420.c | 20
b/hw/isa-bus.c | 38 -
b/hw/isa.h | 2
b/hw/ivshmem.c | 16
b/hw/kvm/apic.c | 5
b/hw/kvm/clock.c | 16
b/hw/kvm/i8259.c | 8
b/hw/kvm/ioapic.c | 20
b/hw/lan9118.c | 18
b/hw/lance.c | 20
b/hw/lm32_juart.c | 18
b/hw/lm32_pic.c | 16
b/hw/lm32_sys.c | 18
b/hw/lm32_timer.c | 18
b/hw/lm32_uart.c | 18
b/hw/lm832x.c | 14
b/hw/lsi53c895a.c | 17
b/hw/m48t59.c | 46 -
b/hw/macio.c | 11
b/hw/marvell_88w8618_audio.c | 18
b/hw/max111x.c | 22
b/hw/max7310.c | 16
b/hw/mc146818rtc.c | 34 -
b/hw/milkymist-ac97.c | 16
b/hw/milkymist-hpdmc.c | 16
b/hw/milkymist-memcard.c | 16
b/hw/milkymist-minimac2.c | 18
b/hw/milkymist-pfpu.c | 16
b/hw/milkymist-softusb.c | 18
b/hw/milkymist-sysctl.c | 18
b/hw/milkymist-tmu2.c | 16
b/hw/milkymist-uart.c | 18
b/hw/milkymist-vgafb.c | 18
b/hw/mips_malta.c | 14
b/hw/mipsnet.c | 20
b/hw/mpc8544_guts.c | 11
b/hw/mst_fpga.c | 16
b/hw/musicpal.c | 117 ++--
b/hw/nand.c | 18
b/hw/ne2000-isa.c | 26
b/hw/ne2000.c | 16
b/hw/omap_gpio.c | 32 -
b/hw/omap_intc.c | 32 -
b/hw/onenand.c | 16
b/hw/opencores_eth.c | 18
b/hw/parallel.c | 28 -
b/hw/pc.c | 18
b/hw/pc_piix.c | 6
b/hw/pci.c | 41 -
b/hw/pci.h | 2
b/hw/pckbd.c | 16
b/hw/pcnet-pci.c | 18
b/hw/piix4.c | 18
b/hw/piix_pci.c | 74 +-
b/hw/pl011.c | 24
b/hw/pl022.c | 11
b/hw/pl031.c | 16
b/hw/pl041.c | 20
b/hw/pl050.c | 28 -
b/hw/pl061.c | 28 -
b/hw/pl080.c | 32 -
b/hw/pl110.c | 48 +
b/hw/pl181.c | 18
b/hw/pl190.c | 18
b/hw/ppc4xx_pci.c | 28 -
b/hw/ppc_prep.c | 2
b/hw/ppce500_pci.c | 28 -
b/hw/ppce500_spin.c | 11
b/hw/prep_pci.c | 26
b/hw/pxa2xx.c | 56 +-
b/hw/pxa2xx_dma.c | 18
b/hw/pxa2xx_gpio.c | 16
b/hw/pxa2xx_pic.c | 16
b/hw/pxa2xx_timer.c | 36 -
b/hw/qdev-addr.c | 6
b/hw/qdev-monitor.c | 588 ++++++++++++++++++++++
b/hw/qdev-properties.c | 57 +-
b/hw/qdev.c | 1144 +++----------------------------------------
b/hw/qdev.h | 367 +------------
b/hw/qxl.c | 40 -
b/hw/realview.c | 11
b/hw/realview_gic.c | 11
b/hw/rtl8139.c | 18
b/hw/s390-virtio-bus.c | 137 ++---
b/hw/s390-virtio-bus.h | 19
b/hw/sb16.c | 34 -
b/hw/sbi.c | 16
b/hw/scsi-bus.c | 21
b/hw/scsi-disk.c | 116 ++--
b/hw/scsi-generic.c | 28 -
b/hw/scsi.h | 1
b/hw/serial.c | 30 -
b/hw/sga.c | 14
b/hw/sh_pci.c | 22
b/hw/slavio_intctl.c | 16
b/hw/slavio_misc.c | 27 -
b/hw/slavio_timer.c | 18
b/hw/smbus.c | 6
b/hw/smbus.h | 2
b/hw/smbus_eeprom.c | 22
b/hw/smc91c111.c | 18
b/hw/spapr_llan.c | 14
b/hw/spapr_pci.c | 22
b/hw/spapr_vio.c | 37 -
b/hw/spapr_vio.h | 1
b/hw/spapr_vscsi.c | 14
b/hw/spapr_vty.c | 14
b/hw/sparc32_dma.c | 18
b/hw/spitz.c | 60 +-
b/hw/ssd0303.c | 14
b/hw/ssd0323.c | 11
b/hw/ssi-sd.c | 11
b/hw/ssi.c | 26
b/hw/ssi.h | 2
b/hw/stellaris.c | 44 -
b/hw/stellaris_enet.c | 14
b/hw/strongarm.c | 98 ++-
b/hw/sun4c_intctl.c | 16
b/hw/sun4m.c | 50 +
b/hw/sun4m_iommu.c | 18
b/hw/sun4u.c | 39 -
b/hw/sysbus.c | 24
b/hw/sysbus.h | 4
b/hw/tcx.c | 18
b/hw/tmp105.c | 14
b/hw/tosa.c | 24
b/hw/tusb6010.c | 14
b/hw/twl92230.c | 14
b/hw/unin_pci.c | 74 +-
b/hw/usb-audio.c | 29 -
b/hw/usb-bt.c | 14
b/hw/usb-bus.c | 25
b/hw/usb-ccid.c | 46 -
b/hw/usb-ehci.c | 32 -
b/hw/usb-hid.c | 72 +-
b/hw/usb-hub.c | 18
b/hw/usb-msd.c | 31 -
b/hw/usb-net.c | 27 -
b/hw/usb-ohci.c | 42 -
b/hw/usb-serial.c | 50 +
b/hw/usb-uhci.c | 96 ++-
b/hw/usb-wacom.c | 21
b/hw/usb-xhci.c | 25
b/hw/usb.h | 5
b/hw/versatile_pci.c | 33 -
b/hw/versatilepb.c | 16
b/hw/vga-isa.c | 16
b/hw/vga-pci.c | 14
b/hw/virtio-console.c | 28 -
b/hw/virtio-pci.c | 68 +-
b/hw/virtio-serial-bus.c | 21
b/hw/virtio-serial.h | 6
b/hw/vmmouse.c | 28 -
b/hw/vmport.c | 14
b/hw/vmware_vga.c | 16
b/hw/vt82c686.c | 64 +-
b/hw/wdt_i6300esb.c | 16
b/hw/wdt_ib700.c | 16
b/hw/wm8750.c | 14
b/hw/xen_platform.c | 18
b/hw/xgmac.c | 25
b/hw/xilinx_axidma.c | 14
b/hw/xilinx_axienet.c | 14
b/hw/xilinx_ethlite.c | 14
b/hw/xilinx_intc.c | 14
b/hw/xilinx_timer.c | 14
b/hw/xilinx_uartlite.c | 13
b/hw/xio3130_downstream.c | 20
b/hw/xio3130_upstream.c | 20
b/hw/z2.c | 28 -
b/hw/zaurus.c | 18
b/include/qemu/object.h | 228 ++++++++
b/qapi-schema.json | 55 +-
b/qemu-char.c | 10
b/qemu-char.h | 2
b/qerror.c | 2
b/qmp-commands.hx | 5
b/qmp.c | 61 +-
b/qom/Makefile | 2
b/qom/container.c | 27 +
b/qom/object.c | 500 ++++++++++++++++++
b/usb-linux.c | 35 -
hw/container.c | 27 -
258 files changed, 4829 insertions(+), 4058 deletions(-)
- [Qemu-devel] [PATCH 00/22] qom: use Type system to register all devices (v2),
Anthony Liguori <=
- [Qemu-devel] [PATCH 01/22] usb-hid: simplify class initialization a bit, Anthony Liguori, 2012/02/01
- [Qemu-devel] [PATCH 02/22] usb: separate out legacy usb registration from type registration, Anthony Liguori, 2012/02/01
- [Qemu-devel] [PATCH 03/22] qdev: make DeviceInfo private, Anthony Liguori, 2012/02/01
- [Qemu-devel] [PATCH 04/22] qdev: remove info from class, Anthony Liguori, 2012/02/01
- [Qemu-devel] [PATCH 06/22] qdev: refactor device creation to allow bus_info to be set only in class, Anthony Liguori, 2012/02/01
- [Qemu-devel] [PATCH 05/22] qdev: allow classes to overload qdev functions, Anthony Liguori, 2012/02/01
- [Qemu-devel] [PATCH 08/22] qdev: kill off DeviceInfo list, Anthony Liguori, 2012/02/01
- [Qemu-devel] [PATCH 10/22] qdev: kill off DeviceInfo, Anthony Liguori, 2012/02/01
- [Qemu-devel] [PATCH 11/22] qdev: remove baked in notion of aliases (v2), Anthony Liguori, 2012/02/01
- [Qemu-devel] [PATCH 16/22] qdev: nuke qdev_init_chardev(), Anthony Liguori, 2012/02/01