ia64/xen-unstable

view tools/examples/xend-pci-quirks.sxp @ 10845:df80de098d15

[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@tycho.ncsc.mil>
author kfraser@localhost.localdomain
date Fri Jul 28 12:59:48 2006 +0100 (2006-07-28)
parents
children
line source
1 ###############################################################################
2 # Configuration file for quirky PCI devices that require write-access to
3 # parts of the configuration space. Use this file to specific PCI device
4 # IDs and the configuration space fields to which those devices must be
5 # able to write.
6 #
7 # Length is important, so be sure to match new entries with the
8 # lengths of comparable existing entries.
9 #
10 # Additions to this file take effect as soon as a new domain with a
11 # matching device is started. However, to remove a field that was
12 # previously applied to a device you must unbind the device from
13 # pciback.
14 ###############################################################################
15 # This is a bogus entry to show how a new device would be added to the list
16 #
17 # (new_quirky_dev_name
18 # (pci_ids
19 # ('0123:4567:890A:BCEF')
20 # )
21 #
22 # (pci_config_space_fields
23 # ('12345678:1:00000000')
24 # )
25 # )
26 ###############################################################################
28 (tg3
29 (pci_ids
30 # Entries are formated as follows:
31 # <vendor>:<device>[:<subvendor>:<subdevice>]
32 ('14e4:1644' # Broadcom Tigon3 5700
33 '14e4:1645' # Broadcom Tigon3 5701
34 '14e4:1646' # Broadcom Tigon3 5702
35 '14e4:1647' # Broadcom Tigon3 5703
36 '14e4:1648' # Broadcom Tigon3 5704
37 '14e4:164d' # Broadcom Tigon3 5702FE
38 '14e4:1653' # Broadcom Tigon3 5705
39 '14e4:1654' # Broadcom Tigon3 5705_2
40 '14e4:165d' # Broadcom Tigon3 5705M
41 '14e4:165e' # Broadcom Tigon3 5705M_2
42 '14e4:16a6' # Broadcom Tigon3 5702X
43 '14e4:16a7' # Broadcom Tigon3 5703X
44 '14e4:16a8' # Broadcom Tigon3 5704S
45 '14e4:16c6' # Broadcom Tigon3 5702A3
46 '14e4:16c7' # Broadcom Tigon3 5703A3
47 '14e4:1696' # Broadcom Tigon3 5782
48 '14e4:169c' # Broadcom Tigon3 5788
49 '14e4:169d' # Broadcom Tigon3 5789
50 '14e4:170d' # Broadcom Tigon3 5901
51 '14e4:1649' # Broadcom Tigon3 5704S_2
52 '14e4:166e' # Broadcom Tigon3 5705F
53 '14e4:1658' # Broadcom Tigon3 5720
54 '14e4:1659' # Broadcom Tigon3 5721
55 '14e4:1676' # Broadcom Tigon3 5750
56 '14e4:1677' # Broadcom Tigon3 5751
57 '14e4:167c' # Broadcom Tigon3 5750M
58 '14e4:167d' # Broadcom Tigon3 5751M
59 '14e4:167e' # Broadcom Tigon3 5751F
60 '14e4:1600' # Broadcom Tigon3 5752
61 '14e4:1601' # Broadcom Tigon3 5752M
62 '14e4:16f7' # Broadcom Tigon3 5753
63 '14e4:16fd' # Broadcom Tigon3 5753M
64 '14e4:16fe' # Broadcom Tigon3 5753F
65 '14e4:1668' # Broadcom Tigon3 5714
66 '14e4:1678' # Broadcom Tigon3 5715
67 '14e4:166a' # Broadcom Tigon3 5780
68 '14e4:166b' # Broadcom Tigon3 5780S
69 '14e4:16dd' # Broadcom Tigon3 5781
70 '1148:4400' # Syskonnect 9DXX
71 '1148:4500' # Syskonnect 9MXX
72 '173b:03e8' # Altima AC1000
73 '173b:03e9' # Altima AC1001
74 '173b:03eb' # Altima AC1003
75 '173b:03ea' # Altima AC9100
76 '106b:1645') # Apple Tigon3
77 )
79 (pci_config_space_fields
80 # Entries are formated as follows:
81 # <register>:<size>:<mask>
82 # size is measured in bytes (1,2,4 are valid sizes)
83 # mask is currently unused; use all zero's
84 ('00000078:4:00000000' # TG3PCI_REG_BASE_ADDR
85 '0000007c:4:00000000' # TG3PCI_MEM_WIN_BASE_ADDR
86 '00000080:4:00000000' # TG3PCI_REG_DATA
87 '00000084:4:00000000' # TG3PCI_MEM_WIN_DATA
88 '00000090:4:00000000' # TG3PCI_MISC_LOCAL_CTRL
89 '00000068:4:00000000' # TG3PCI_MISC_HOST_CTRL
90 '0000009C:4:00000000' # TG3PCI_STD_RING_PROD_IDX + TG3_64BIT_REG_LOW
91 '00000098:4:00000000' # TG3PCI_STD_RING_PROD_IDX + TG3_64BIT_REG_HIGH
92 '000000a4:4:00000000' # TG3PCI_RCV_RET_RING_CON_IDX + TG3_64BIT_REG_LOW
93 '000000a0:4:00000000' # TG3PCI_RCV_RET_RING_CON_IDX + TG3_64BIT_REG_HIGH
94 '00000070:4:00000000') # TG3PCI_PCISTATE
95 )
96 )