blob: f979d825d112109e03db36cf44ad170a7743fd06 [file] [log] [blame]
Chris Wrightd22157b2009-02-23 21:50:35 -08001What: /sys/bus/pci/drivers/.../bind
2Date: December 2003
3Contact: linux-pci@vger.kernel.org
4Description:
5 Writing a device location to this file will cause
6 the driver to attempt to bind to the device found at
7 this location. This is useful for overriding default
8 bindings. The format for the location is: DDDD:BB:DD.F.
9 That is Domain:Bus:Device.Function and is the same as
10 found in /sys/bus/pci/devices/. For example:
11 # echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/bind
12 (Note: kernels before 2.6.28 may require echo -n).
13
14What: /sys/bus/pci/drivers/.../unbind
15Date: December 2003
16Contact: linux-pci@vger.kernel.org
17Description:
18 Writing a device location to this file will cause the
19 driver to attempt to unbind from the device found at
20 this location. This may be useful when overriding default
21 bindings. The format for the location is: DDDD:BB:DD.F.
22 That is Domain:Bus:Device.Function and is the same as
23 found in /sys/bus/pci/devices/. For example:
24 # echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/unbind
25 (Note: kernels before 2.6.28 may require echo -n).
26
27What: /sys/bus/pci/drivers/.../new_id
28Date: December 2003
29Contact: linux-pci@vger.kernel.org
30Description:
31 Writing a device ID to this file will attempt to
32 dynamically add a new device ID to a PCI device driver.
33 This may allow the driver to support more hardware than
34 was included in the driver's static device ID support
35 table at compile time. The format for the device ID is:
36 VVVV DDDD SVVV SDDD CCCC MMMM PPPP. That is Vendor ID,
37 Device ID, Subsystem Vendor ID, Subsystem Device ID,
38 Class, Class Mask, and Private Driver Data. The Vendor ID
39 and Device ID fields are required, the rest are optional.
40 Upon successfully adding an ID, the driver will probe
41 for the device and attempt to bind to it. For example:
42 # echo "8086 10f5" > /sys/bus/pci/drivers/foo/new_id
43
Chris Wright09943752009-02-23 21:52:23 -080044What: /sys/bus/pci/drivers/.../remove_id
45Date: February 2009
46Contact: Chris Wright <chrisw@sous-sol.org>
47Description:
48 Writing a device ID to this file will remove an ID
49 that was dynamically added via the new_id sysfs entry.
50 The format for the device ID is:
51 VVVV DDDD SVVV SDDD CCCC MMMM. That is Vendor ID, Device
52 ID, Subsystem Vendor ID, Subsystem Device ID, Class,
53 and Class Mask. The Vendor ID and Device ID fields are
54 required, the rest are optional. After successfully
55 removing an ID, the driver will no longer support the
56 device. This is useful to ensure auto probing won't
57 match the driver to the device. For example:
58 # echo "8086 10f5" > /sys/bus/pci/drivers/foo/remove_id
59
Alex Chiang705b1aa2009-03-20 14:56:31 -060060What: /sys/bus/pci/rescan
61Date: January 2009
62Contact: Linux PCI developers <linux-pci@vger.kernel.org>
63Description:
64 Writing a non-zero value to this attribute will
65 force a rescan of all PCI buses in the system, and
66 re-discover previously removed devices.
67 Depends on CONFIG_HOTPLUG.
68
Alex Chiang77c27c72009-03-20 14:56:36 -060069What: /sys/bus/pci/devices/.../remove
70Date: January 2009
71Contact: Linux PCI developers <linux-pci@vger.kernel.org>
72Description:
73 Writing a non-zero value to this attribute will
74 hot-remove the PCI device and any of its children.
75 Depends on CONFIG_HOTPLUG.
76
Alex Chiang738a6392009-03-20 14:56:41 -060077What: /sys/bus/pci/devices/.../rescan
78Date: January 2009
79Contact: Linux PCI developers <linux-pci@vger.kernel.org>
80Description:
81 Writing a non-zero value to this attribute will
82 force a rescan of the device's parent bus and all
83 child buses, and re-discover devices removed earlier
84 from this part of the device tree.
85 Depends on CONFIG_HOTPLUG.
86
Michael S. Tsirkin711d5772009-07-27 23:37:48 +030087What: /sys/bus/pci/devices/.../reset
88Date: July 2009
89Contact: Michael S. Tsirkin <mst@redhat.com>
90Description:
91 Some devices allow an individual function to be reset
92 without affecting other functions in the same device.
93 For devices that have this support, a file named reset
94 will be present in sysfs. Writing 1 to this file
95 will perform reset.
96
Ben Hutchings94e61082008-03-05 16:52:39 +000097What: /sys/bus/pci/devices/.../vpd
98Date: February 2008
99Contact: Ben Hutchings <bhutchings@solarflare.com>
100Description:
101 A file named vpd in a device directory will be a
102 binary file containing the Vital Product Data for the
103 device. It should follow the VPD format defined in
104 PCI Specification 2.1 or 2.2, but users should consider
105 that some devices may have malformatted data. If the
106 underlying VPD has a writable section then the
107 corresponding section of this file will be writable.
Yu Zhao01db4952009-03-20 11:25:17 +0800108
109What: /sys/bus/pci/devices/.../virtfnN
110Date: March 2009
111Contact: Yu Zhao <yu.zhao@intel.com>
112Description:
113 This symbolic link appears when hardware supports the SR-IOV
114 capability and the Physical Function driver has enabled it.
115 The symbolic link points to the PCI device sysfs entry of the
116 Virtual Function whose index is N (0...MaxVFs-1).
117
118What: /sys/bus/pci/devices/.../dep_link
119Date: March 2009
120Contact: Yu Zhao <yu.zhao@intel.com>
121Description:
122 This symbolic link appears when hardware supports the SR-IOV
123 capability and the Physical Function driver has enabled it,
124 and this device has vendor specific dependencies with others.
125 The symbolic link points to the PCI device sysfs entry of
126 Physical Function this device depends on.
127
128What: /sys/bus/pci/devices/.../physfn
129Date: March 2009
130Contact: Yu Zhao <yu.zhao@intel.com>
131Description:
132 This symbolic link appears when a device is a Virtual Function.
133 The symbolic link points to the PCI device sysfs entry of the
134 Physical Function this device associates with.
Kenji Kaneshigec825bc92009-06-16 11:01:25 +0900135
136What: /sys/bus/pci/slots/.../module
137Date: June 2009
138Contact: linux-pci@vger.kernel.org
139Description:
140 This symbolic link points to the PCI hotplug controller driver
141 module that manages the hotplug slot.
Narendra K911e1c92010-07-26 05:56:50 -0500142
143What: /sys/bus/pci/devices/.../label
144Date: July 2010
145Contact: Narendra K <narendra_k@dell.com>, linux-bugs@dell.com
146Description:
147 Reading this attribute will provide the firmware
148 given name(SMBIOS type 41 string) of the PCI device.
149 The attribute will be created only if the firmware
150 has given a name to the PCI device.
151Users:
152 Userspace applications interested in knowing the
153 firmware assigned name of the PCI device.
154
155What: /sys/bus/pci/devices/.../index
156Date: July 2010
157Contact: Narendra K <narendra_k@dell.com>, linux-bugs@dell.com
158Description:
159 Reading this attribute will provide the firmware
160 given instance(SMBIOS type 41 device type instance)
161 of the PCI device. The attribute will be created
162 only if the firmware has given a device type instance
163 to the PCI device.
164Users:
165 Userspace applications interested in knowing the
166 firmware assigned device type instance of the PCI
167 device that can help in understanding the firmware
168 intended order of the PCI device.