mirror of https://gitlab.com/qemu-project/qemu
qdev: qdev_create(), qdev_try_create() are now unused, drop
Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <20200610053247.1583243-31-armbru@redhat.com>
This commit is contained in:
parent
535770518f
commit
2194abd623
|
@ -128,54 +128,6 @@ void qdev_set_parent_bus(DeviceState *dev, BusState *bus)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Create a new device. This only initializes the device state
|
|
||||||
structure and allows properties to be set. The device still needs
|
|
||||||
to be realized. See qdev-core.h. */
|
|
||||||
DeviceState *qdev_create(BusState *bus, const char *name)
|
|
||||||
{
|
|
||||||
DeviceState *dev;
|
|
||||||
|
|
||||||
dev = qdev_try_create(bus, name);
|
|
||||||
if (!dev) {
|
|
||||||
if (bus) {
|
|
||||||
error_report("Unknown device '%s' for bus '%s'", name,
|
|
||||||
object_get_typename(OBJECT(bus)));
|
|
||||||
} else {
|
|
||||||
error_report("Unknown device '%s' for default sysbus", name);
|
|
||||||
}
|
|
||||||
abort();
|
|
||||||
}
|
|
||||||
|
|
||||||
return dev;
|
|
||||||
}
|
|
||||||
|
|
||||||
DeviceState *qdev_try_create(BusState *bus, const char *type)
|
|
||||||
{
|
|
||||||
DeviceState *dev;
|
|
||||||
|
|
||||||
if (object_class_by_name(type) == NULL) {
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
dev = DEVICE(object_new(type));
|
|
||||||
if (!dev) {
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!bus) {
|
|
||||||
/* Assert that the device really is a SysBusDevice before
|
|
||||||
* we put it onto the sysbus. Non-sysbus devices which aren't
|
|
||||||
* being put onto a bus should be created with object_new(TYPE_FOO),
|
|
||||||
* not qdev_create(NULL, TYPE_FOO).
|
|
||||||
*/
|
|
||||||
g_assert(object_dynamic_cast(OBJECT(dev), TYPE_SYS_BUS_DEVICE));
|
|
||||||
bus = sysbus_get_default();
|
|
||||||
}
|
|
||||||
|
|
||||||
qdev_set_parent_bus(dev, bus);
|
|
||||||
object_unref(OBJECT(dev));
|
|
||||||
return dev;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Create a device on the heap.
|
* Create a device on the heap.
|
||||||
* A type @name must exist.
|
* A type @name must exist.
|
||||||
|
|
|
@ -325,7 +325,6 @@ static const TypeInfo sysbus_device_type_info = {
|
||||||
.class_init = sysbus_device_class_init,
|
.class_init = sysbus_device_class_init,
|
||||||
};
|
};
|
||||||
|
|
||||||
/* This is a nasty hack to allow passing a NULL bus to qdev_create. */
|
|
||||||
static BusState *main_system_bus;
|
static BusState *main_system_bus;
|
||||||
|
|
||||||
static void main_system_bus_create(void)
|
static void main_system_bus_create(void)
|
||||||
|
|
|
@ -320,8 +320,6 @@ compat_props_add(GPtrArray *arr,
|
||||||
|
|
||||||
/*** Board API. This should go away once we have a machine config file. ***/
|
/*** Board API. This should go away once we have a machine config file. ***/
|
||||||
|
|
||||||
DeviceState *qdev_create(BusState *bus, const char *name);
|
|
||||||
DeviceState *qdev_try_create(BusState *bus, const char *name);
|
|
||||||
DeviceState *qdev_new(const char *name);
|
DeviceState *qdev_new(const char *name);
|
||||||
DeviceState *qdev_try_new(const char *name);
|
DeviceState *qdev_try_new(const char *name);
|
||||||
void qdev_init_nofail(DeviceState *dev);
|
void qdev_init_nofail(DeviceState *dev);
|
||||||
|
|
|
@ -3778,7 +3778,7 @@ static const TypeInfo migration_type = {
|
||||||
.name = TYPE_MIGRATION,
|
.name = TYPE_MIGRATION,
|
||||||
/*
|
/*
|
||||||
* NOTE: TYPE_MIGRATION is not really a device, as the object is
|
* NOTE: TYPE_MIGRATION is not really a device, as the object is
|
||||||
* not created using qdev_create(), it is not attached to the qdev
|
* not created using qdev_new(), it is not attached to the qdev
|
||||||
* device tree, and it is never realized.
|
* device tree, and it is never realized.
|
||||||
*
|
*
|
||||||
* TODO: Make this TYPE_OBJECT once QOM provides something like
|
* TODO: Make this TYPE_OBJECT once QOM provides something like
|
||||||
|
|
Loading…
Reference in New Issue