Add get_fw_dev_path callback to IDE bus.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
Gleb Natapov 2010-12-08 13:34:59 +02:00 committed by Blue Swirl
parent 3835510f10
commit dc1a46b609
1 changed files with 13 additions and 0 deletions

View File

@ -24,9 +24,12 @@
/* --------------------------------- */ /* --------------------------------- */
static char *idebus_get_fw_dev_path(DeviceState *dev);
static struct BusInfo ide_bus_info = { static struct BusInfo ide_bus_info = {
.name = "IDE", .name = "IDE",
.size = sizeof(IDEBus), .size = sizeof(IDEBus),
.get_fw_dev_path = idebus_get_fw_dev_path,
}; };
void ide_bus_new(IDEBus *idebus, DeviceState *dev, int bus_id) void ide_bus_new(IDEBus *idebus, DeviceState *dev, int bus_id)
@ -35,6 +38,16 @@ void ide_bus_new(IDEBus *idebus, DeviceState *dev, int bus_id)
idebus->bus_id = bus_id; idebus->bus_id = bus_id;
} }
static char *idebus_get_fw_dev_path(DeviceState *dev)
{
char path[30];
snprintf(path, sizeof(path), "%s@%d", qdev_fw_name(dev),
((IDEBus*)dev->parent_bus)->bus_id);
return strdup(path);
}
static int ide_qdev_init(DeviceState *qdev, DeviceInfo *base) static int ide_qdev_init(DeviceState *qdev, DeviceInfo *base)
{ {
IDEDevice *dev = DO_UPCAST(IDEDevice, qdev, qdev); IDEDevice *dev = DO_UPCAST(IDEDevice, qdev, qdev);