Commit eb54b6dc authored by Gerd Hoffmann's avatar Gerd Hoffmann Committed by Anthony Liguori

qdev: add id= support for pci nics.

Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
parent ab73ff29
...@@ -822,6 +822,8 @@ PCIDevice *pci_nic_init(NICInfo *nd, const char *default_model, ...@@ -822,6 +822,8 @@ PCIDevice *pci_nic_init(NICInfo *nd, const char *default_model,
if (strcmp(nd->model, pci_nic_models[i]) == 0) { if (strcmp(nd->model, pci_nic_models[i]) == 0) {
pci_dev = pci_create(pci_nic_names[i], devaddr); pci_dev = pci_create(pci_nic_names[i], devaddr);
dev = &pci_dev->qdev; dev = &pci_dev->qdev;
if (nd->id)
dev->id = qemu_strdup(nd->id);
dev->nd = nd; dev->nd = nd;
qdev_init(dev); qdev_init(dev);
nd->private = dev; nd->private = dev;
......
...@@ -2428,7 +2428,7 @@ int net_client_init(Monitor *mon, const char *device, const char *p) ...@@ -2428,7 +2428,7 @@ int net_client_init(Monitor *mon, const char *device, const char *p)
} }
if (!strcmp(device, "nic")) { if (!strcmp(device, "nic")) {
static const char * const nic_params[] = { static const char * const nic_params[] = {
"vlan", "name", "macaddr", "model", "addr", "vectors", NULL "vlan", "name", "macaddr", "model", "addr", "id", "vectors", NULL
}; };
NICInfo *nd; NICInfo *nd;
uint8_t *macaddr; uint8_t *macaddr;
...@@ -2466,6 +2466,9 @@ int net_client_init(Monitor *mon, const char *device, const char *p) ...@@ -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)) { if (get_param_value(buf, sizeof(buf), "addr", p)) {
nd->devaddr = strdup(buf); nd->devaddr = strdup(buf);
} }
if (get_param_value(buf, sizeof(buf), "id", p)) {
nd->id = strdup(buf);
}
nd->nvectors = NIC_NVECTORS_UNSPECIFIED; nd->nvectors = NIC_NVECTORS_UNSPECIFIED;
if (get_param_value(buf, sizeof(buf), "vectors", p)) { if (get_param_value(buf, sizeof(buf), "vectors", p)) {
char *endptr; char *endptr;
......
...@@ -95,6 +95,7 @@ struct NICInfo { ...@@ -95,6 +95,7 @@ struct NICInfo {
const char *model; const char *model;
const char *name; const char *name;
const char *devaddr; const char *devaddr;
const char *id;
VLANState *vlan; VLANState *vlan;
VLANClientState *vc; VLANClientState *vc;
void *private; void *private;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment