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: Gerd Hoffmann <kraxel@xxxxxxx>
Subject: Re: [Xen-devel] xensource (pci) device id's?
From: Gerd Hoffmann <kraxel@xxxxxxx>
Date: Thu, 01 Feb 2007 16:45:38 +0100
Cc: Xen devel list <xen-devel@xxxxxxxxxxxxxxxxxxx>, Ian Campbell <Ian.Campbell@xxxxxxxxxxxxx>
Delivery-date: Thu, 01 Feb 2007 07:46:30 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <45C1F970.3060909@xxxxxxx>
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: <45C1F0E1.1070204@xxxxxxx> <1170338316.4294.25.camel@xxxxxxxxxxxxxxxxxxxxx> <45C1F970.3060909@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 1.5.0.9 (X11/20060911)
Gerd Hoffmann wrote:
> Ian Campbell wrote:
>> We now have vendor 5853 officially assigned.
> 
> 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 ...

cheers,
  Gerd
---
 linux-2.6-xen-sparse/drivers/xen/fbfront/xenkbd.c |    6 ++++++
 tools/ioemu/hw/cirrus_vga.c                       |    4 ++++
 tools/ioemu/hw/ide.c                              |    4 ++++
 tools/ioemu/hw/rtl8139.c                          |    6 ++++--
 4 files changed, 18 insertions(+), 2 deletions(-)

Index: build-64-unstable-13762/linux-2.6-xen-sparse/drivers/xen/fbfront/xenkbd.c
===================================================================
--- 
build-64-unstable-13762.orig/linux-2.6-xen-sparse/drivers/xen/fbfront/xenkbd.c
+++ build-64-unstable-13762/linux-2.6-xen-sparse/drivers/xen/fbfront/xenkbd.c
@@ -123,7 +123,13 @@ int __devinit xenkbd_probe(struct xenbus
                set_bit(i, kbd->keybit);
 
        kbd->name = "Xen Virtual Keyboard";
+       kbd->id.bustype = BUS_PCI;
+       kbd->id.vendor  = 0x5853; /* XenSource, Inc. */
+       kbd->id.product = 0x0002;
        ptr->name = "Xen Virtual Pointer";
+       ptr->id.bustype = BUS_PCI;
+       ptr->id.vendor  = 0x5853; /* XenSource, Inc. */
+       ptr->id.product = 0x0003;
 
        input_set_abs_params(ptr, ABS_X, 0, XENFB_WIDTH, 0, 0);
        input_set_abs_params(ptr, ABS_Y, 0, XENFB_HEIGHT, 0, 0);
Index: build-64-unstable-13762/tools/ioemu/hw/rtl8139.c
===================================================================
--- build-64-unstable-13762.orig/tools/ioemu/hw/rtl8139.c
+++ build-64-unstable-13762/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] = 0x04; /* subsystem device */
+    pci_conf[0x2f] = 0x00;
 
     s = &d->rtl8139;
 
Index: build-64-unstable-13762/tools/ioemu/hw/cirrus_vga.c
===================================================================
--- build-64-unstable-13762.orig/tools/ioemu/hw/cirrus_vga.c
+++ build-64-unstable-13762/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] = 0x05; /* subsystem device */
+    pci_conf[0x2f] = 0x00;
 
     /* setup VGA */
     s = &d->cirrus_vga;
Index: build-64-unstable-13762/tools/ioemu/hw/ide.c
===================================================================
--- build-64-unstable-13762.orig/tools/ioemu/hw/ide.c
+++ build-64-unstable-13762/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] = 0x06; /* 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