[Qemu-devel] [PATCH 1/5] sysbus: make SysBusDeviceClass::init optional

2013-02-15 Thread Peter Maydell
Make the SysBusDeviceClass::init optional, for devices which
genuinely don't need to do anything here. In particular, simple
devices which can do all their initialization in their
instance_init method don't need either a DeviceClass::realize
or SysBusDeviceClass::init method.

Signed-off-by: Peter Maydell peter.mayd...@linaro.org
---
 hw/sysbus.c |3 +++
 1 file changed, 3 insertions(+)

diff --git a/hw/sysbus.c b/hw/sysbus.c
index 6d9d1df..e9a16ac 100644
--- a/hw/sysbus.c
+++ b/hw/sysbus.c
@@ -118,6 +118,9 @@ static int sysbus_device_init(DeviceState *dev)
 SysBusDevice *sd = SYS_BUS_DEVICE(dev);
 SysBusDeviceClass *sbc = SYS_BUS_DEVICE_GET_CLASS(sd);
 
+if (!sbc-init) {
+return 0;
+}
 return sbc-init(sd);
 }
 
-- 
1.7.9.5




Re: [Qemu-devel] [PATCH 1/5] sysbus: make SysBusDeviceClass::init optional

2013-02-15 Thread Andreas Färber
Am 15.02.2013 12:45, schrieb Peter Maydell:
 Make the SysBusDeviceClass::init optional, for devices which
 genuinely don't need to do anything here. In particular, simple
 devices which can do all their initialization in their
 instance_init method don't need either a DeviceClass::realize
 or SysBusDeviceClass::init method.
 
 Signed-off-by: Peter Maydell peter.mayd...@linaro.org

Acked-by: Andreas Färber afaer...@suse.de

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg