diff options
author | Markus Armbruster | 2013-11-28 17:27:00 +0100 |
---|---|---|
committer | Andreas Färber | 2013-12-23 00:27:23 +0100 |
commit | 81aab2ff1118a4de8fd92ae89380ccfbc2870574 (patch) | |
tree | d1701f2f4b2615d234422abc9484c10b769ef67f /hw/isa | |
parent | ich9: Document why cannot_instantiate_with_device_add_yet (diff) | |
download | qemu-81aab2ff1118a4de8fd92ae89380ccfbc2870574.tar.gz qemu-81aab2ff1118a4de8fd92ae89380ccfbc2870574.tar.xz qemu-81aab2ff1118a4de8fd92ae89380ccfbc2870574.zip |
piix3 piix4: Clean up use of cannot_instantiate_with_device_add_yet
A PIIX3/PIIX4 southbridge has multiple functions. We model each
function as a separate qdev. Two of them need some special wiring set
up in pc_init1() or mips_malta_init() to work: the ISA bridge at 01.0,
and the SMBus controller at 01.3.
The IDE controller at 01.1 (piix3-ide, piix3-ide-xen, piix4-ide) has
always had cannot_instantiate_with_device_add_yet set, but there is no
obvious reason why device_add could not work for them. Drop it.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Marcel Apfelbaum <marcel.a@redhat.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Diffstat (limited to 'hw/isa')
-rw-r--r-- | hw/isa/piix4.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/hw/isa/piix4.c b/hw/isa/piix4.c index d9dac6163c..def6fe3a0f 100644 --- a/hw/isa/piix4.c +++ b/hw/isa/piix4.c @@ -113,8 +113,12 @@ static void piix4_class_init(ObjectClass *klass, void *data) k->device_id = PCI_DEVICE_ID_INTEL_82371AB_0; k->class_id = PCI_CLASS_BRIDGE_ISA; dc->desc = "ISA bridge"; - dc->cannot_instantiate_with_device_add_yet = true; /* FIXME explain why */ dc->vmsd = &vmstate_piix4; + /* + * Reason: part of PIIX4 southbridge, needs to be wired up, + * e.g. by mips_malta_init() + */ + dc->cannot_instantiate_with_device_add_yet = true; } static const TypeInfo piix4_info = { |