Provided by: xen-utils-common_4.17.3+10-g091466ba55-1.1ubuntu3_amd64 bug

NAME

       xen-pci-device-reservations - Xen PCI device ID registry

Description

       PCI vendor ID 0x5853 has been reserved for use by Xen systems in order to advertise
       certain virtual hardware to guest virtual machines. The primary use of this is with device
       ID 0x0001 to advertise the Xen Platform PCI device - the presence of this virtual device
       enables a guest Operating System (subject to the availability of suitable drivers) to make
       use of paravirtualisation features such as disk and network devices etc.

       Some Xen vendors wish to provide alternative and/or additional guest drivers that can bind
       to virtual devices[1]. This may be done using the Xen PCI vendor ID of 0x5853 and
       Xen-vendor/device specific PCI device IDs. This file records reservations made within the
       device ID range in order to avoid multiple Xen vendors using conflicting IDs.

Guidelines

       1. A vendor may request a range of device IDs by submitting a patch to this file.
       2. Vendor allocations should be in the range 0xc000-0xfffe to reduce the possibility of
       clashes with community IDs assigned from the bottom up.
       3. The vendor is responsible for allocations within the range and should try to record
       specific device IDs in PCI ID databases such as https://pci-ids.ucw.cz and
       https://devicehunt.com

Reservations

               range     | vendor/product
           --------------+--------------------------------------------------------------
           0x0001        | (Xen Platform PCI device)
           0x0002        | Citrix XenServer (grandfathered allocation for XenServer 6.1)
           0xc000-0xc0ff | Citrix XenServer
           0xc100-0xc1ff | Citrix XenClient
           0xc200-0xc2ff | XCP-ng Project (https://xcp-ng.org)

Notes

       1.  Upstream QEMU provides a parameterized device called xen-pvdevice that can be used to
           host guest drivers. Execute:

               qemu-system-i386 -device xen-pvdevice,help

           for a list of all parameters. The following parameters are relevant to driver binding:

           vendor-id (default 0x5853)
               The PCI vendor ID and subsystem vendor ID of the device.

           device-id (must be specified)
               The PCI device ID and subsystem device ID of the device.

           revision (default 0x01)
               The PCI revision of the device

           Also the size parameter (default 0x400000) can be used to specify the size of the
           single MMIO BAR that the device exposes. This area may be used by drivers for mapping
           grant tables, etc.

           Note that the presence of the Xen Platform PCI device is generally a pre-requisite for
           an additional xen-pvdevice as it is the platform device that provides that IO ports
           necessary for unplugging emulated devices. See hvm-emulated-unplug.markdown for
           details of the IO ports and unplug protocol.

           libxl provides support for creation of a single additional xen-pvdevice.  See the
           vendor_device parameter in xl.cfg(5).