ssi: Added create_slave_no_init()
authorPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com>
Tue, 24 Jul 2012 03:56:27 +0000 (13:56 +1000)
committerPeter Crosthwaite <peter.crosthwaite@xilinx.com>
Wed, 10 Oct 2012 01:13:31 +0000 (11:13 +1000)
Slave creation function that can be used to create an SSI slave without
qdev_init() being called. This give machine models a chance to set properties.

Signed-off-by: Peter A. G. Crosthwaite <peter.crosthwaite@petalogix.com>
Acked-by: Peter Maydell <peter.maydell@linaro.org>
hw/ssi.c
hw/ssi.h

index 2e4f2fecd17dd7bf041e20edb44cbb3298dff970..c47419d57fdb29d573dfcdb392c6ba46350ac191 100644 (file)
--- a/hw/ssi.c
+++ b/hw/ssi.c
@@ -86,10 +86,15 @@ static TypeInfo ssi_slave_info = {
     .abstract = true,
 };
 
+DeviceState *ssi_create_slave_no_init(SSIBus *bus, const char *name)
+{
+    return qdev_create(&bus->qbus, name);
+}
+
 DeviceState *ssi_create_slave(SSIBus *bus, const char *name)
 {
-    DeviceState *dev;
-    dev = qdev_create(&bus->qbus, name);
+    DeviceState *dev = ssi_create_slave_no_init(bus, name);
+
     qdev_init_nofail(dev);
     return dev;
 }
index 65b159dcabcc795660da2baff0b8e0de5eb2b027..2bde9f5b44bcae5011fdbcbd3fd0892bf7503603 100644 (file)
--- a/hw/ssi.h
+++ b/hw/ssi.h
@@ -76,6 +76,7 @@ extern const VMStateDescription vmstate_ssi_slave;
 }
 
 DeviceState *ssi_create_slave(SSIBus *bus, const char *name);
+DeviceState *ssi_create_slave_no_init(SSIBus *bus, const char *name);
 
 /* Master interface.  */
 SSIBus *ssi_create_bus(DeviceState *parent, const char *name);