All of the devices described in the PIIX3 as being implemented within the PIIX3 are created as child devices of the PIIX3 object in QEMU. PIIX3 has-a RTC, has-a I8042, has-a PCSPK, etc.
All child device creation for the PIIX3 is done by calling object_init() with qdev_init() being called for each child device in the PIIX3 ::init function. Anthony Liguori (3): convert RTC as piix3 proper QOM child convert HPET as piix3 proper QOM child convert PIT as piix3 proper QOM child Wanpeng Li (7): convert PCSPK as piix3 proper QOM child convert PORT92 as piix3 proper QOM child convert I8042 as piixe proper QOM child convert VMPORT piix3 proper QOM child convert VMMOUSE as piix3 proper QOM child convert IDE as piix3 proper QOM child convert IOAPIC as piix3 proper QOM child hw/hpet.c | 35 --------- hw/hpet_emul.h | 40 ++++++++++ hw/i440fx.c | 6 ++ hw/i8254.c | 2 +- hw/i8254_internal.h | 3 +- hw/ide.h | 6 +- hw/ide/internal.h | 9 ++ hw/ide/isa.c | 14 +--- hw/ide/piix.c | 24 +------ hw/ioapic.c | 2 +- hw/ioapic.h | 2 - hw/ioapic_internal.h | 2 + hw/kvm/i8254.c | 8 +-- hw/kvm/ioapic.c | 9 +-- hw/mc146818rtc.c | 29 +------- hw/mc146818rtc.h | 30 +++++++ hw/pc.c | 144 ++++------------------------------- hw/pc.h | 14 ++- hw/pckbd.c | 24 +------ hw/pcspk.c | 19 +----- hw/pcspk.h | 19 +++++ hw/piix3.c | 205 ++++++++++++++++++++++++++++++++++++++++++++++++++ hw/piix3.h | 104 +++++++++++++++++++++++++ hw/ps2.h | 3 + hw/vmmouse.c | 14 ---- hw/vmport.c | 10 +-- sysemu.h | 2 - 27 files changed, 459 insertions(+), 320 deletions(-) -- 1.7.7.6