WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] xensource (pci) device id's?

To: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] xensource (pci) device id's?
From: Gerd Hoffmann <kraxel@xxxxxxx>
Date: Mon, 05 Feb 2007 15:20:22 +0100
Cc: Xen devel list <xen-devel@xxxxxxxxxxxxxxxxxxx>, Ian Campbell <Ian.Campbell@xxxxxxxxxxxxx>
Delivery-date: Mon, 05 Feb 2007 06:21:25 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <C1E93291.8CBD%Keir.Fraser@xxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <C1E93291.8CBD%Keir.Fraser@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 1.5.0.9 (X11/20060911)
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