qdev: add id= support for pci nics.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Gerd Hoffmann 2009-07-15 13:43:35 +02:00 committed by Anthony Liguori
parent ab73ff29ce
commit eb54b6dcb8
3 changed files with 7 additions and 1 deletions

View File

@ -822,6 +822,8 @@ PCIDevice *pci_nic_init(NICInfo *nd, const char *default_model,
if (strcmp(nd->model, pci_nic_models[i]) == 0) {
pci_dev = pci_create(pci_nic_names[i], devaddr);
dev = &pci_dev->qdev;
if (nd->id)
dev->id = qemu_strdup(nd->id);
dev->nd = nd;
qdev_init(dev);
nd->private = dev;

5
net.c
View File

@ -2428,7 +2428,7 @@ int net_client_init(Monitor *mon, const char *device, const char *p)
}
if (!strcmp(device, "nic")) {
static const char * const nic_params[] = {
"vlan", "name", "macaddr", "model", "addr", "vectors", NULL
"vlan", "name", "macaddr", "model", "addr", "id", "vectors", NULL
};
NICInfo *nd;
uint8_t *macaddr;
@ -2466,6 +2466,9 @@ int net_client_init(Monitor *mon, const char *device, const char *p)
if (get_param_value(buf, sizeof(buf), "addr", p)) {
nd->devaddr = strdup(buf);
}
if (get_param_value(buf, sizeof(buf), "id", p)) {
nd->id = strdup(buf);
}
nd->nvectors = NIC_NVECTORS_UNSPECIFIED;
if (get_param_value(buf, sizeof(buf), "vectors", p)) {
char *endptr;

1
net.h
View File

@ -95,6 +95,7 @@ struct NICInfo {
const char *model;
const char *name;
const char *devaddr;
const char *id;
VLANState *vlan;
VLANClientState *vc;
void *private;