]> Git Repo - qemu.git/commitdiff
e1000: add bootindex to qom property
authorGonglei <[email protected]>
Tue, 7 Oct 2014 08:00:13 +0000 (16:00 +0800)
committerGerd Hoffmann <[email protected]>
Wed, 15 Oct 2014 07:52:54 +0000 (09:52 +0200)
Add a qom property with the same name 'bootindex',
when we remove it form qdev property, things will
continue to work just fine, and we can use qom features
which are not supported by qdev property.

Signed-off-by: Gonglei <[email protected]>
Reviewed-by: Gerd Hoffmann <[email protected]>
Signed-off-by: Gerd Hoffmann <[email protected]>
hw/net/e1000.c

index 272df00f4ab9547addd6e7a4e9bacfbe0d020e82..0edbfa6b8a622658aa4de98cd775e57ab99fdd97 100644 (file)
@@ -1621,10 +1621,19 @@ static void e1000_class_init(ObjectClass *klass, void *data)
     dc->props = e1000_properties;
 }
 
+static void e1000_instance_init(Object *obj)
+{
+    E1000State *n = E1000(obj);
+    device_add_bootindex_property(obj, &n->conf.bootindex,
+                                  "bootindex", "/ethernet-phy@0",
+                                  DEVICE(n), NULL);
+}
+
 static const TypeInfo e1000_base_info = {
     .name          = TYPE_E1000_BASE,
     .parent        = TYPE_PCI_DEVICE,
     .instance_size = sizeof(E1000State),
+    .instance_init = e1000_instance_init,
     .class_size    = sizeof(E1000BaseClass),
     .abstract      = true,
 };
@@ -1668,6 +1677,7 @@ static void e1000_register_types(void)
         type_info.parent = TYPE_E1000_BASE;
         type_info.class_data = (void *)info;
         type_info.class_init = e1000_class_init;
+        type_info.instance_init = e1000_instance_init;
 
         type_register(&type_info);
     }
This page took 0.023096 seconds and 4 git commands to generate.