[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [PCI] Two policy files written in what is intended to be human-readable SXP.
# HG changeset patch # User kfraser@xxxxxxxxxxxxxxxxxxxxx # Node ID df80de098d1577600b31aa8b9713c61a0df6668f # Parent 8cd5771109048d31fc650615073abe7ad6388772 [PCI] Two policy files written in what is intended to be human-readable SXP. 1. xend-pci-quirks.sxp: Specifies which PCI device(s) may write to a set of PCI configuration space registers. A quirky PCI device is identified by its vendor ID, device ID, subvendor ID, and subdevice ID. If a matching entry is found, the corresponding fields will be sent to the PCI bus manager. Fields are composed of a register, size, and mask -- although the mask field is currently unused. The included policy file is for a range of tg3 devices, which is the only type of quirky device I know about. Users with other quirky devices are invited to either add entries to this policy file or add an entry in the permissive file, described next. In either case, send an email to the xen-devel list to make the device known. 2. xend-pci-permissive.sxp Lists PCI devices that pciback should not prevent from writing to their configuration space. This can be necessary if, for example, a new Tigon3 devices is released with different PCI vendor/device values such that no entry in xend-pci-quirks.sxp is triggered. Signed-off-by: Chris Bookholt <hap10@xxxxxxxxxxxxxx> --- tools/examples/Makefile | 2 tools/examples/xend-pci-permissive.sxp | 27 +++++++++ tools/examples/xend-pci-quirks.sxp | 96 +++++++++++++++++++++++++++++++++ 3 files changed, 125 insertions(+) diff -r 8cd577110904 -r df80de098d15 tools/examples/Makefile --- a/tools/examples/Makefile Fri Jul 28 12:57:55 2006 +0100 +++ b/tools/examples/Makefile Fri Jul 28 12:59:48 2006 +0100 @@ -18,6 +18,8 @@ XEN_CONFIGS += xmexample2 XEN_CONFIGS += xmexample2 XEN_CONFIGS += xmexample.hvm XEN_CONFIGS += xmexample.vti +XEN_CONFIGS += xend-pci-quirks.sxp +XEN_CONFIGS += xend-pci-permissive.sxp # Xen script dir and scripts to go there. XEN_SCRIPT_DIR = /etc/xen/scripts diff -r 8cd577110904 -r df80de098d15 tools/examples/xend-pci-permissive.sxp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/examples/xend-pci-permissive.sxp Fri Jul 28 12:59:48 2006 +0100 @@ -0,0 +1,27 @@ +############################################################################### +# Configuration file for granting quiry PCI devices full write access to their +# configuration space. This file should only be used when you are unable to +# determine the exact registers required by your device. Even so, it should +# be used only temporarily. +# +# SEND A MESSAGE TO xen-devel@xxxxxxxxxxxxxxxxxxx IF YOU USE THIS FILE. +# +# Using this file should NOT be necessary. If you must use it to make some +# device work, send a message to the above list with as much information about +# your device as possible so the developers can make accomodations for it. +# Once developers make the necessary updates you can remove the corresponding +# entry for your device. +############################################################################### +# Entries are formated as follows: <vendor>:<device>[:<subvendor>:<subdevice>] +# +# Example: Appending to an existing list +# +# (unconstrained_dev_ids +# ('XXXX:XXXX:XXXX:XXXX' # existing entry +# 'YYYY:YYYY:YYYY:YYYY' # new entry 1 +# 'ZZZZ:ZZZZ') # new entry 2 +# ) +############################################################################### +(unconstrained_dev_ids + #('0123:4567:89AB:CDEF') +) diff -r 8cd577110904 -r df80de098d15 tools/examples/xend-pci-quirks.sxp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/examples/xend-pci-quirks.sxp Fri Jul 28 12:59:48 2006 +0100 @@ -0,0 +1,96 @@ +############################################################################### +# Configuration file for quirky PCI devices that require write-access to +# parts of the configuration space. Use this file to specific PCI device +# IDs and the configuration space fields to which those devices must be +# able to write. +# +# Length is important, so be sure to match new entries with the +# lengths of comparable existing entries. +# +# Additions to this file take effect as soon as a new domain with a +# matching device is started. However, to remove a field that was +# previously applied to a device you must unbind the device from +# pciback. +############################################################################### +# This is a bogus entry to show how a new device would be added to the list +# +# (new_quirky_dev_name +# (pci_ids +# ('0123:4567:890A:BCEF') +# ) +# +# (pci_config_space_fields +# ('12345678:1:00000000') +# ) +# ) +############################################################################### + +(tg3 + (pci_ids + # Entries are formated as follows: + # <vendor>:<device>[:<subvendor>:<subdevice>] + ('14e4:1644' # Broadcom Tigon3 5700 + '14e4:1645' # Broadcom Tigon3 5701 + '14e4:1646' # Broadcom Tigon3 5702 + '14e4:1647' # Broadcom Tigon3 5703 + '14e4:1648' # Broadcom Tigon3 5704 + '14e4:164d' # Broadcom Tigon3 5702FE + '14e4:1653' # Broadcom Tigon3 5705 + '14e4:1654' # Broadcom Tigon3 5705_2 + '14e4:165d' # Broadcom Tigon3 5705M + '14e4:165e' # Broadcom Tigon3 5705M_2 + '14e4:16a6' # Broadcom Tigon3 5702X + '14e4:16a7' # Broadcom Tigon3 5703X + '14e4:16a8' # Broadcom Tigon3 5704S + '14e4:16c6' # Broadcom Tigon3 5702A3 + '14e4:16c7' # Broadcom Tigon3 5703A3 + '14e4:1696' # Broadcom Tigon3 5782 + '14e4:169c' # Broadcom Tigon3 5788 + '14e4:169d' # Broadcom Tigon3 5789 + '14e4:170d' # Broadcom Tigon3 5901 + '14e4:1649' # Broadcom Tigon3 5704S_2 + '14e4:166e' # Broadcom Tigon3 5705F + '14e4:1658' # Broadcom Tigon3 5720 + '14e4:1659' # Broadcom Tigon3 5721 + '14e4:1676' # Broadcom Tigon3 5750 + '14e4:1677' # Broadcom Tigon3 5751 + '14e4:167c' # Broadcom Tigon3 5750M + '14e4:167d' # Broadcom Tigon3 5751M + '14e4:167e' # Broadcom Tigon3 5751F + '14e4:1600' # Broadcom Tigon3 5752 + '14e4:1601' # Broadcom Tigon3 5752M + '14e4:16f7' # Broadcom Tigon3 5753 + '14e4:16fd' # Broadcom Tigon3 5753M + '14e4:16fe' # Broadcom Tigon3 5753F + '14e4:1668' # Broadcom Tigon3 5714 + '14e4:1678' # Broadcom Tigon3 5715 + '14e4:166a' # Broadcom Tigon3 5780 + '14e4:166b' # Broadcom Tigon3 5780S + '14e4:16dd' # Broadcom Tigon3 5781 + '1148:4400' # Syskonnect 9DXX + '1148:4500' # Syskonnect 9MXX + '173b:03e8' # Altima AC1000 + '173b:03e9' # Altima AC1001 + '173b:03eb' # Altima AC1003 + '173b:03ea' # Altima AC9100 + '106b:1645') # Apple Tigon3 + ) + + (pci_config_space_fields + # Entries are formated as follows: + # <register>:<size>:<mask> + # size is measured in bytes (1,2,4 are valid sizes) + # mask is currently unused; use all zero's + ('00000078:4:00000000' # TG3PCI_REG_BASE_ADDR + '0000007c:4:00000000' # TG3PCI_MEM_WIN_BASE_ADDR + '00000080:4:00000000' # TG3PCI_REG_DATA + '00000084:4:00000000' # TG3PCI_MEM_WIN_DATA + '00000090:4:00000000' # TG3PCI_MISC_LOCAL_CTRL + '00000068:4:00000000' # TG3PCI_MISC_HOST_CTRL + '0000009C:4:00000000' # TG3PCI_STD_RING_PROD_IDX + TG3_64BIT_REG_LOW + '00000098:4:00000000' # TG3PCI_STD_RING_PROD_IDX + TG3_64BIT_REG_HIGH + '000000a4:4:00000000' # TG3PCI_RCV_RET_RING_CON_IDX + TG3_64BIT_REG_LOW + '000000a0:4:00000000' # TG3PCI_RCV_RET_RING_CON_IDX + TG3_64BIT_REG_HIGH + '00000070:4:00000000') # TG3PCI_PCISTATE + ) +) _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |