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 44*0994375eSChris WrightWhat: /sys/bus/pci/drivers/.../remove_id 45*0994375eSChris WrightDate: February 2009 46*0994375eSChris WrightContact: Chris Wright <chrisw@sous-sol.org> 47*0994375eSChris WrightDescription: 48*0994375eSChris Wright Writing a device ID to this file will remove an ID 49*0994375eSChris Wright that was dynamically added via the new_id sysfs entry. 50*0994375eSChris Wright The format for the device ID is: 51*0994375eSChris Wright VVVV DDDD SVVV SDDD CCCC MMMM. That is Vendor ID, Device 52*0994375eSChris Wright ID, Subsystem Vendor ID, Subsystem Device ID, Class, 53*0994375eSChris Wright and Class Mask. The Vendor ID and Device ID fields are 54*0994375eSChris Wright required, the rest are optional. After successfully 55*0994375eSChris Wright removing an ID, the driver will no longer support the 56*0994375eSChris Wright device. This is useful to ensure auto probing won't 57*0994375eSChris Wright match the driver to the device. For example: 58*0994375eSChris Wright # echo "8086 10f5" > /sys/bus/pci/drivers/foo/remove_id 59*0994375eSChris Wright 6094e61088SBen HutchingsWhat: /sys/bus/pci/devices/.../vpd 6194e61088SBen HutchingsDate: February 2008 6294e61088SBen HutchingsContact: Ben Hutchings <bhutchings@solarflare.com> 6394e61088SBen HutchingsDescription: 6494e61088SBen Hutchings A file named vpd in a device directory will be a 6594e61088SBen Hutchings binary file containing the Vital Product Data for the 6694e61088SBen Hutchings device. It should follow the VPD format defined in 6794e61088SBen Hutchings PCI Specification 2.1 or 2.2, but users should consider 6894e61088SBen Hutchings that some devices may have malformatted data. If the 6994e61088SBen Hutchings underlying VPD has a writable section then the 7094e61088SBen Hutchings corresponding section of this file will be writable. 71