1d22157b3SChris WrightWhat:		/sys/bus/pci/drivers/.../bind
2d22157b3SChris WrightDate:		December 2003
3d22157b3SChris WrightContact:	linux-pci@vger.kernel.org
4d22157b3SChris WrightDescription:
5d22157b3SChris Wright		Writing a device location to this file will cause
6d22157b3SChris Wright		the driver to attempt to bind to the device found at
7d22157b3SChris Wright		this location.	This is useful for overriding default
8d22157b3SChris Wright		bindings.  The format for the location is: DDDD:BB:DD.F.
9d22157b3SChris Wright		That is Domain:Bus:Device.Function and is the same as
10d22157b3SChris Wright		found in /sys/bus/pci/devices/.  For example:
11d22157b3SChris Wright		# echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/bind
12d22157b3SChris Wright		(Note: kernels before 2.6.28 may require echo -n).
13d22157b3SChris Wright
14d22157b3SChris WrightWhat:		/sys/bus/pci/drivers/.../unbind
15d22157b3SChris WrightDate:		December 2003
16d22157b3SChris WrightContact:	linux-pci@vger.kernel.org
17d22157b3SChris WrightDescription:
18d22157b3SChris Wright		Writing a device location to this file will cause the
19d22157b3SChris Wright		driver to attempt to unbind from the device found at
20d22157b3SChris Wright		this location.	This may be useful when overriding default
21d22157b3SChris Wright		bindings.  The format for the location is: DDDD:BB:DD.F.
22d22157b3SChris Wright		That is Domain:Bus:Device.Function and is the same as
23d22157b3SChris Wright		found in /sys/bus/pci/devices/. For example:
24d22157b3SChris Wright		# echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/unbind
25d22157b3SChris Wright		(Note: kernels before 2.6.28 may require echo -n).
26d22157b3SChris Wright
27d22157b3SChris WrightWhat:		/sys/bus/pci/drivers/.../new_id
28d22157b3SChris WrightDate:		December 2003
29d22157b3SChris WrightContact:	linux-pci@vger.kernel.org
30d22157b3SChris WrightDescription:
31d22157b3SChris Wright		Writing a device ID to this file will attempt to
32d22157b3SChris Wright		dynamically add a new device ID to a PCI device driver.
33d22157b3SChris Wright		This may allow the driver to support more hardware than
34d22157b3SChris Wright		was included in the driver's static device ID support
35d22157b3SChris Wright		table at compile time.  The format for the device ID is:
36d22157b3SChris Wright		VVVV DDDD SVVV SDDD CCCC MMMM PPPP.  That is Vendor ID,
37d22157b3SChris Wright		Device ID, Subsystem Vendor ID, Subsystem Device ID,
38d22157b3SChris Wright		Class, Class Mask, and Private Driver Data.  The Vendor ID
39d22157b3SChris Wright		and Device ID fields are required, the rest are optional.
40d22157b3SChris Wright		Upon successfully adding an ID, the driver will probe
41d22157b3SChris Wright		for the device and attempt to bind to it.  For example:
42d22157b3SChris Wright		# echo "8086 10f5" > /sys/bus/pci/drivers/foo/new_id
43d22157b3SChris Wright
440994375eSChris WrightWhat:		/sys/bus/pci/drivers/.../remove_id
450994375eSChris WrightDate:		February 2009
460994375eSChris WrightContact:	Chris Wright <chrisw@sous-sol.org>
470994375eSChris WrightDescription:
480994375eSChris Wright		Writing a device ID to this file will remove an ID
490994375eSChris Wright		that was dynamically added via the new_id sysfs entry.
500994375eSChris Wright		The format for the device ID is:
510994375eSChris Wright		VVVV DDDD SVVV SDDD CCCC MMMM.	That is Vendor ID, Device
520994375eSChris Wright		ID, Subsystem Vendor ID, Subsystem Device ID, Class,
530994375eSChris Wright		and Class Mask.  The Vendor ID and Device ID fields are
540994375eSChris Wright		required, the rest are optional.  After successfully
550994375eSChris Wright		removing an ID, the driver will no longer support the
560994375eSChris Wright		device.  This is useful to ensure auto probing won't
570994375eSChris Wright		match the driver to the device.  For example:
580994375eSChris Wright		# echo "8086 10f5" > /sys/bus/pci/drivers/foo/remove_id
590994375eSChris Wright
60705b1aaaSAlex ChiangWhat:		/sys/bus/pci/rescan
61705b1aaaSAlex ChiangDate:		January 2009
62705b1aaaSAlex ChiangContact:	Linux PCI developers <linux-pci@vger.kernel.org>
63705b1aaaSAlex ChiangDescription:
64705b1aaaSAlex Chiang		Writing a non-zero value to this attribute will
65705b1aaaSAlex Chiang		force a rescan of all PCI buses in the system, and
66705b1aaaSAlex Chiang		re-discover previously removed devices.
67705b1aaaSAlex Chiang		Depends on CONFIG_HOTPLUG.
68705b1aaaSAlex Chiang
6977c27c7bSAlex ChiangWhat:		/sys/bus/pci/devices/.../remove
7077c27c7bSAlex ChiangDate:		January 2009
7177c27c7bSAlex ChiangContact:	Linux PCI developers <linux-pci@vger.kernel.org>
7277c27c7bSAlex ChiangDescription:
7377c27c7bSAlex Chiang		Writing a non-zero value to this attribute will
7477c27c7bSAlex Chiang		hot-remove the PCI device and any of its children.
7577c27c7bSAlex Chiang		Depends on CONFIG_HOTPLUG.
7677c27c7bSAlex Chiang
77738a6396SAlex ChiangWhat:		/sys/bus/pci/devices/.../rescan
78738a6396SAlex ChiangDate:		January 2009
79738a6396SAlex ChiangContact:	Linux PCI developers <linux-pci@vger.kernel.org>
80738a6396SAlex ChiangDescription:
81738a6396SAlex Chiang		Writing a non-zero value to this attribute will
82738a6396SAlex Chiang		force a rescan of the device's parent bus and all
83738a6396SAlex Chiang		child buses, and re-discover devices removed earlier
84738a6396SAlex Chiang		from this part of the device tree.
85738a6396SAlex Chiang		Depends on CONFIG_HOTPLUG.
86738a6396SAlex Chiang
8794e61088SBen HutchingsWhat:		/sys/bus/pci/devices/.../vpd
8894e61088SBen HutchingsDate:		February 2008
8994e61088SBen HutchingsContact:	Ben Hutchings <bhutchings@solarflare.com>
9094e61088SBen HutchingsDescription:
9194e61088SBen Hutchings		A file named vpd in a device directory will be a
9294e61088SBen Hutchings		binary file containing the Vital Product Data for the
9394e61088SBen Hutchings		device.  It should follow the VPD format defined in
9494e61088SBen Hutchings		PCI Specification 2.1 or 2.2, but users should consider
9594e61088SBen Hutchings		that some devices may have malformatted data.  If the
9694e61088SBen Hutchings		underlying VPD has a writable section then the
9794e61088SBen Hutchings		corresponding section of this file will be writable.
9801db4957SYu Zhao
9901db4957SYu ZhaoWhat:		/sys/bus/pci/devices/.../virtfnN
10001db4957SYu ZhaoDate:		March 2009
10101db4957SYu ZhaoContact:	Yu Zhao <yu.zhao@intel.com>
10201db4957SYu ZhaoDescription:
10301db4957SYu Zhao		This symbolic link appears when hardware supports the SR-IOV
10401db4957SYu Zhao		capability and the Physical Function driver has enabled it.
10501db4957SYu Zhao		The symbolic link points to the PCI device sysfs entry of the
10601db4957SYu Zhao		Virtual Function whose index is N (0...MaxVFs-1).
10701db4957SYu Zhao
10801db4957SYu ZhaoWhat:		/sys/bus/pci/devices/.../dep_link
10901db4957SYu ZhaoDate:		March 2009
11001db4957SYu ZhaoContact:	Yu Zhao <yu.zhao@intel.com>
11101db4957SYu ZhaoDescription:
11201db4957SYu Zhao		This symbolic link appears when hardware supports the SR-IOV
11301db4957SYu Zhao		capability and the Physical Function driver has enabled it,
11401db4957SYu Zhao		and this device has vendor specific dependencies with others.
11501db4957SYu Zhao		The symbolic link points to the PCI device sysfs entry of
11601db4957SYu Zhao		Physical Function this device depends on.
11701db4957SYu Zhao
11801db4957SYu ZhaoWhat:		/sys/bus/pci/devices/.../physfn
11901db4957SYu ZhaoDate:		March 2009
12001db4957SYu ZhaoContact:	Yu Zhao <yu.zhao@intel.com>
12101db4957SYu ZhaoDescription:
12201db4957SYu Zhao		This symbolic link appears when a device is a Virtual Function.
12301db4957SYu Zhao		The symbolic link points to the PCI device sysfs entry of the
12401db4957SYu Zhao		Physical Function this device associates with.
125