[Qemu-devel] [PATCH 1/5] sysbus: make SysBusDeviceClass::init optional
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 --- 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
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 Acked-by: Andreas Färber Andreas -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg