[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] xensource (pci) device id's?
Keir Fraser wrote: > >>> Ok, how device IDs are allocated? I'd like to use them to tag virtual >>> devices ... >> ... like this (see attached patch), handing out numbers 2-6 ... > > Looks okay. The subvendor device id's can all be the same (e.g., 0x1, as I'm > not sure about validity of 0x0), since disambiguation amongst device types > is already provided by the main vendor/device id's. Then 0x5853/0x0001 Updated patch attached. cheers, Gerd -- Gerd Hoffmann <kraxel@xxxxxxx> --- tools/ioemu/hw/cirrus_vga.c | 4 ++++ tools/ioemu/hw/ide.c | 4 ++++ tools/ioemu/hw/rtl8139.c | 6 ++++-- 3 files changed, 12 insertions(+), 2 deletions(-) Index: build-32-unstable-13800/tools/ioemu/hw/rtl8139.c =================================================================== --- build-32-unstable-13800.orig/tools/ioemu/hw/rtl8139.c +++ build-32-unstable-13800/tools/ioemu/hw/rtl8139.c @@ -3423,8 +3423,10 @@ void pci_rtl8139_init(PCIBus *bus, NICIn pci_conf[0x0e] = 0x00; /* header_type */ pci_conf[0x3d] = 1; /* interrupt pin 0 */ pci_conf[0x34] = 0xdc; - pci_conf[0x2c] = pci_conf[0x00]; // same as Vendor ID - pci_conf[0x2d] = pci_conf[0x01]; + pci_conf[0x2c] = 0x53; /* subsystem vendor: XenSource */ + pci_conf[0x2d] = 0x58; + pci_conf[0x2e] = 0x01; /* subsystem device */ + pci_conf[0x2f] = 0x00; s = &d->rtl8139; Index: build-32-unstable-13800/tools/ioemu/hw/cirrus_vga.c =================================================================== --- build-32-unstable-13800.orig/tools/ioemu/hw/cirrus_vga.c +++ build-32-unstable-13800/tools/ioemu/hw/cirrus_vga.c @@ -3340,6 +3340,10 @@ void pci_cirrus_vga_init(PCIBus *bus, Di pci_conf[0x0a] = PCI_CLASS_SUB_VGA; pci_conf[0x0b] = PCI_CLASS_BASE_DISPLAY; pci_conf[0x0e] = PCI_CLASS_HEADERTYPE_00h; + pci_conf[0x2c] = 0x53; /* subsystem vendor: XenSource */ + pci_conf[0x2d] = 0x58; + pci_conf[0x2e] = 0x01; /* subsystem device */ + pci_conf[0x2f] = 0x00; /* setup VGA */ s = &d->cirrus_vga; Index: build-32-unstable-13800/tools/ioemu/hw/ide.c =================================================================== --- build-32-unstable-13800.orig/tools/ioemu/hw/ide.c +++ build-32-unstable-13800/tools/ioemu/hw/ide.c @@ -2502,6 +2502,10 @@ void pci_piix3_ide_init(PCIBus *bus, Blo pci_conf[0x0a] = 0x01; // class_sub = PCI_IDE pci_conf[0x0b] = 0x01; // class_base = PCI_mass_storage pci_conf[0x0e] = 0x00; // header_type + pci_conf[0x2c] = 0x53; /* subsystem vendor: XenSource */ + pci_conf[0x2d] = 0x58; + pci_conf[0x2e] = 0x01; /* subsystem device */ + pci_conf[0x2f] = 0x00; pci_register_io_region((PCIDevice *)d, 4, 0x10, PCI_ADDRESS_SPACE_IO, bmdma_map); _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |