mirror of https://gitee.com/openkylin/qemu.git
qdev: add a qdev_get_type() function and expose as a 'type' property
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
6a146eba33
commit
cd34d667d4
|
@ -110,6 +110,8 @@ static DeviceState *qdev_create_from_info(BusState *bus, DeviceInfo *info)
|
|||
qdev_property_add_legacy(dev, prop, NULL);
|
||||
}
|
||||
|
||||
qdev_property_add_str(dev, "type", qdev_get_type, NULL, NULL);
|
||||
|
||||
return dev;
|
||||
}
|
||||
|
||||
|
@ -1031,6 +1033,11 @@ char* qdev_get_fw_dev_path(DeviceState *dev)
|
|||
return strdup(path);
|
||||
}
|
||||
|
||||
char *qdev_get_type(DeviceState *dev, Error **errp)
|
||||
{
|
||||
return g_strdup(dev->info->name);
|
||||
}
|
||||
|
||||
void qdev_ref(DeviceState *dev)
|
||||
{
|
||||
dev->ref++;
|
||||
|
|
14
hw/qdev.h
14
hw/qdev.h
|
@ -596,4 +596,18 @@ void qdev_property_add_str(DeviceState *dev, const char *name,
|
|||
void (*set)(DeviceState *, const char *, Error **),
|
||||
Error **errp);
|
||||
|
||||
/**
|
||||
* @qdev_get_type
|
||||
*
|
||||
* Returns the string representation of the type of this object.
|
||||
*
|
||||
* @dev - the device
|
||||
*
|
||||
* @errp - if an error occurs, a pointer to an area to store the error
|
||||
*
|
||||
* Returns: a string representing the type. This must be freed by the caller
|
||||
* with g_free().
|
||||
*/
|
||||
char *qdev_get_type(DeviceState *dev, Error **errp);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue