From c11f4bc9ff7e727aedc57c796158e4af0261c56c Mon Sep 17 00:00:00 2001 From: Gonglei Date: Tue, 7 Oct 2014 16:00:20 +0800 Subject: [PATCH] usb-net: add bootindex to qom property 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 Reviewed-by: Gerd Hoffmann Signed-off-by: Gerd Hoffmann --- hw/usb/dev-network.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/hw/usb/dev-network.c b/hw/usb/dev-network.c index 23e3c45b5f..f341b3317b 100644 --- a/hw/usb/dev-network.c +++ b/hw/usb/dev-network.c @@ -1375,6 +1375,16 @@ static void usb_net_realize(USBDevice *dev, Error **errrp) add_boot_device_path(s->conf.bootindex, &dev->qdev, "/ethernet@0"); } +static void usb_net_instance_init(Object *obj) +{ + USBDevice *dev = USB_DEVICE(obj); + USBNetState *s = DO_UPCAST(USBNetState, dev, dev); + + device_add_bootindex_property(obj, &s->conf.bootindex, + "bootindex", "/ethernet-phy@0", + &dev->qdev, NULL); +} + static USBDevice *usb_net_init(USBBus *bus, const char *cmdline) { Error *local_err = NULL; @@ -1438,6 +1448,7 @@ static const TypeInfo net_info = { .parent = TYPE_USB_DEVICE, .instance_size = sizeof(USBNetState), .class_init = usb_net_class_initfn, + .instance_init = usb_net_instance_init, }; static void usb_net_register_types(void)