1*4882a593SmuzhiyunWhat: /sys/bus/pci/drivers/.../bind 2*4882a593SmuzhiyunDate: December 2003 3*4882a593SmuzhiyunContact: linux-pci@vger.kernel.org 4*4882a593SmuzhiyunDescription: 5*4882a593Smuzhiyun Writing a device location to this file will cause 6*4882a593Smuzhiyun the driver to attempt to bind to the device found at 7*4882a593Smuzhiyun this location. This is useful for overriding default 8*4882a593Smuzhiyun bindings. The format for the location is: DDDD:BB:DD.F. 9*4882a593Smuzhiyun That is Domain:Bus:Device.Function and is the same as 10*4882a593Smuzhiyun found in /sys/bus/pci/devices/. For example:: 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun # echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/bind 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun (Note: kernels before 2.6.28 may require echo -n). 15*4882a593Smuzhiyun 16*4882a593SmuzhiyunWhat: /sys/bus/pci/drivers/.../unbind 17*4882a593SmuzhiyunDate: December 2003 18*4882a593SmuzhiyunContact: linux-pci@vger.kernel.org 19*4882a593SmuzhiyunDescription: 20*4882a593Smuzhiyun Writing a device location to this file will cause the 21*4882a593Smuzhiyun driver to attempt to unbind from the device found at 22*4882a593Smuzhiyun this location. This may be useful when overriding default 23*4882a593Smuzhiyun bindings. The format for the location is: DDDD:BB:DD.F. 24*4882a593Smuzhiyun That is Domain:Bus:Device.Function and is the same as 25*4882a593Smuzhiyun found in /sys/bus/pci/devices/. For example:: 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun # echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/unbind 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun (Note: kernels before 2.6.28 may require echo -n). 30*4882a593Smuzhiyun 31*4882a593SmuzhiyunWhat: /sys/bus/pci/drivers/.../new_id 32*4882a593SmuzhiyunDate: December 2003 33*4882a593SmuzhiyunContact: linux-pci@vger.kernel.org 34*4882a593SmuzhiyunDescription: 35*4882a593Smuzhiyun Writing a device ID to this file will attempt to 36*4882a593Smuzhiyun dynamically add a new device ID to a PCI device driver. 37*4882a593Smuzhiyun This may allow the driver to support more hardware than 38*4882a593Smuzhiyun was included in the driver's static device ID support 39*4882a593Smuzhiyun table at compile time. The format for the device ID is: 40*4882a593Smuzhiyun VVVV DDDD SVVV SDDD CCCC MMMM PPPP. That is Vendor ID, 41*4882a593Smuzhiyun Device ID, Subsystem Vendor ID, Subsystem Device ID, 42*4882a593Smuzhiyun Class, Class Mask, and Private Driver Data. The Vendor ID 43*4882a593Smuzhiyun and Device ID fields are required, the rest are optional. 44*4882a593Smuzhiyun Upon successfully adding an ID, the driver will probe 45*4882a593Smuzhiyun for the device and attempt to bind to it. For example:: 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun # echo "8086 10f5" > /sys/bus/pci/drivers/foo/new_id 48*4882a593Smuzhiyun 49*4882a593SmuzhiyunWhat: /sys/bus/pci/drivers/.../remove_id 50*4882a593SmuzhiyunDate: February 2009 51*4882a593SmuzhiyunContact: Chris Wright <chrisw@sous-sol.org> 52*4882a593SmuzhiyunDescription: 53*4882a593Smuzhiyun Writing a device ID to this file will remove an ID 54*4882a593Smuzhiyun that was dynamically added via the new_id sysfs entry. 55*4882a593Smuzhiyun The format for the device ID is: 56*4882a593Smuzhiyun VVVV DDDD SVVV SDDD CCCC MMMM. That is Vendor ID, Device 57*4882a593Smuzhiyun ID, Subsystem Vendor ID, Subsystem Device ID, Class, 58*4882a593Smuzhiyun and Class Mask. The Vendor ID and Device ID fields are 59*4882a593Smuzhiyun required, the rest are optional. After successfully 60*4882a593Smuzhiyun removing an ID, the driver will no longer support the 61*4882a593Smuzhiyun device. This is useful to ensure auto probing won't 62*4882a593Smuzhiyun match the driver to the device. For example:: 63*4882a593Smuzhiyun 64*4882a593Smuzhiyun # echo "8086 10f5" > /sys/bus/pci/drivers/foo/remove_id 65*4882a593Smuzhiyun 66*4882a593SmuzhiyunWhat: /sys/bus/pci/rescan 67*4882a593SmuzhiyunDate: January 2009 68*4882a593SmuzhiyunContact: Linux PCI developers <linux-pci@vger.kernel.org> 69*4882a593SmuzhiyunDescription: 70*4882a593Smuzhiyun Writing a non-zero value to this attribute will 71*4882a593Smuzhiyun force a rescan of all PCI buses in the system, and 72*4882a593Smuzhiyun re-discover previously removed devices. 73*4882a593Smuzhiyun 74*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../msi_bus 75*4882a593SmuzhiyunDate: September 2014 76*4882a593SmuzhiyunContact: Linux PCI developers <linux-pci@vger.kernel.org> 77*4882a593SmuzhiyunDescription: 78*4882a593Smuzhiyun Writing a zero value to this attribute disallows MSI and 79*4882a593Smuzhiyun MSI-X for any future drivers of the device. If the device 80*4882a593Smuzhiyun is a bridge, MSI and MSI-X will be disallowed for future 81*4882a593Smuzhiyun drivers of all child devices under the bridge. Drivers 82*4882a593Smuzhiyun must be reloaded for the new setting to take effect. 83*4882a593Smuzhiyun 84*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../msi_irqs/ 85*4882a593SmuzhiyunDate: September, 2011 86*4882a593SmuzhiyunContact: Neil Horman <nhorman@tuxdriver.com> 87*4882a593SmuzhiyunDescription: 88*4882a593Smuzhiyun The /sys/devices/.../msi_irqs directory contains a variable set 89*4882a593Smuzhiyun of files, with each file being named after a corresponding msi 90*4882a593Smuzhiyun irq vector allocated to that device. 91*4882a593Smuzhiyun 92*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../msi_irqs/<N> 93*4882a593SmuzhiyunDate: September 2011 94*4882a593SmuzhiyunContact: Neil Horman <nhorman@tuxdriver.com> 95*4882a593SmuzhiyunDescription: 96*4882a593Smuzhiyun This attribute indicates the mode that the irq vector named by 97*4882a593Smuzhiyun the file is in (msi vs. msix) 98*4882a593Smuzhiyun 99*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../remove 100*4882a593SmuzhiyunDate: January 2009 101*4882a593SmuzhiyunContact: Linux PCI developers <linux-pci@vger.kernel.org> 102*4882a593SmuzhiyunDescription: 103*4882a593Smuzhiyun Writing a non-zero value to this attribute will 104*4882a593Smuzhiyun hot-remove the PCI device and any of its children. 105*4882a593Smuzhiyun 106*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../pci_bus/.../rescan 107*4882a593SmuzhiyunDate: May 2011 108*4882a593SmuzhiyunContact: Linux PCI developers <linux-pci@vger.kernel.org> 109*4882a593SmuzhiyunDescription: 110*4882a593Smuzhiyun Writing a non-zero value to this attribute will 111*4882a593Smuzhiyun force a rescan of the bus and all child buses, 112*4882a593Smuzhiyun and re-discover devices removed earlier from this 113*4882a593Smuzhiyun part of the device tree. 114*4882a593Smuzhiyun 115*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../rescan 116*4882a593SmuzhiyunDate: January 2009 117*4882a593SmuzhiyunContact: Linux PCI developers <linux-pci@vger.kernel.org> 118*4882a593SmuzhiyunDescription: 119*4882a593Smuzhiyun Writing a non-zero value to this attribute will 120*4882a593Smuzhiyun force a rescan of the device's parent bus and all 121*4882a593Smuzhiyun child buses, and re-discover devices removed earlier 122*4882a593Smuzhiyun from this part of the device tree. 123*4882a593Smuzhiyun 124*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../reset 125*4882a593SmuzhiyunDate: July 2009 126*4882a593SmuzhiyunContact: Michael S. Tsirkin <mst@redhat.com> 127*4882a593SmuzhiyunDescription: 128*4882a593Smuzhiyun Some devices allow an individual function to be reset 129*4882a593Smuzhiyun without affecting other functions in the same device. 130*4882a593Smuzhiyun For devices that have this support, a file named reset 131*4882a593Smuzhiyun will be present in sysfs. Writing 1 to this file 132*4882a593Smuzhiyun will perform reset. 133*4882a593Smuzhiyun 134*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../vpd 135*4882a593SmuzhiyunDate: February 2008 136*4882a593SmuzhiyunContact: Ben Hutchings <bwh@kernel.org> 137*4882a593SmuzhiyunDescription: 138*4882a593Smuzhiyun A file named vpd in a device directory will be a 139*4882a593Smuzhiyun binary file containing the Vital Product Data for the 140*4882a593Smuzhiyun device. It should follow the VPD format defined in 141*4882a593Smuzhiyun PCI Specification 2.1 or 2.2, but users should consider 142*4882a593Smuzhiyun that some devices may have malformatted data. If the 143*4882a593Smuzhiyun underlying VPD has a writable section then the 144*4882a593Smuzhiyun corresponding section of this file will be writable. 145*4882a593Smuzhiyun 146*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../virtfnN 147*4882a593SmuzhiyunDate: March 2009 148*4882a593SmuzhiyunContact: Yu Zhao <yu.zhao@intel.com> 149*4882a593SmuzhiyunDescription: 150*4882a593Smuzhiyun This symbolic link appears when hardware supports the SR-IOV 151*4882a593Smuzhiyun capability and the Physical Function driver has enabled it. 152*4882a593Smuzhiyun The symbolic link points to the PCI device sysfs entry of the 153*4882a593Smuzhiyun Virtual Function whose index is N (0...MaxVFs-1). 154*4882a593Smuzhiyun 155*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../dep_link 156*4882a593SmuzhiyunDate: March 2009 157*4882a593SmuzhiyunContact: Yu Zhao <yu.zhao@intel.com> 158*4882a593SmuzhiyunDescription: 159*4882a593Smuzhiyun This symbolic link appears when hardware supports the SR-IOV 160*4882a593Smuzhiyun capability and the Physical Function driver has enabled it, 161*4882a593Smuzhiyun and this device has vendor specific dependencies with others. 162*4882a593Smuzhiyun The symbolic link points to the PCI device sysfs entry of 163*4882a593Smuzhiyun Physical Function this device depends on. 164*4882a593Smuzhiyun 165*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../physfn 166*4882a593SmuzhiyunDate: March 2009 167*4882a593SmuzhiyunContact: Yu Zhao <yu.zhao@intel.com> 168*4882a593SmuzhiyunDescription: 169*4882a593Smuzhiyun This symbolic link appears when a device is a Virtual Function. 170*4882a593Smuzhiyun The symbolic link points to the PCI device sysfs entry of the 171*4882a593Smuzhiyun Physical Function this device associates with. 172*4882a593Smuzhiyun 173*4882a593SmuzhiyunWhat: /sys/bus/pci/slots/.../module 174*4882a593SmuzhiyunDate: June 2009 175*4882a593SmuzhiyunContact: linux-pci@vger.kernel.org 176*4882a593SmuzhiyunDescription: 177*4882a593Smuzhiyun This symbolic link points to the PCI hotplug controller driver 178*4882a593Smuzhiyun module that manages the hotplug slot. 179*4882a593Smuzhiyun 180*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../label 181*4882a593SmuzhiyunDate: July 2010 182*4882a593SmuzhiyunContact: Narendra K <narendra_k@dell.com>, linux-bugs@dell.com 183*4882a593SmuzhiyunDescription: 184*4882a593Smuzhiyun Reading this attribute will provide the firmware 185*4882a593Smuzhiyun given name (SMBIOS type 41 string or ACPI _DSM string) of 186*4882a593Smuzhiyun the PCI device. The attribute will be created only 187*4882a593Smuzhiyun if the firmware has given a name to the PCI device. 188*4882a593Smuzhiyun ACPI _DSM string name will be given priority if the 189*4882a593Smuzhiyun system firmware provides SMBIOS type 41 string also. 190*4882a593SmuzhiyunUsers: 191*4882a593Smuzhiyun Userspace applications interested in knowing the 192*4882a593Smuzhiyun firmware assigned name of the PCI device. 193*4882a593Smuzhiyun 194*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../index 195*4882a593SmuzhiyunDate: July 2010 196*4882a593SmuzhiyunContact: Narendra K <narendra_k@dell.com>, linux-bugs@dell.com 197*4882a593SmuzhiyunDescription: 198*4882a593Smuzhiyun Reading this attribute will provide the firmware 199*4882a593Smuzhiyun given instance (SMBIOS type 41 device type instance) of the 200*4882a593Smuzhiyun PCI device. The attribute will be created only if the firmware 201*4882a593Smuzhiyun has given an instance number to the PCI device. 202*4882a593SmuzhiyunUsers: 203*4882a593Smuzhiyun Userspace applications interested in knowing the 204*4882a593Smuzhiyun firmware assigned device type instance of the PCI 205*4882a593Smuzhiyun device that can help in understanding the firmware 206*4882a593Smuzhiyun intended order of the PCI device. 207*4882a593Smuzhiyun 208*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../acpi_index 209*4882a593SmuzhiyunDate: July 2010 210*4882a593SmuzhiyunContact: Narendra K <narendra_k@dell.com>, linux-bugs@dell.com 211*4882a593SmuzhiyunDescription: 212*4882a593Smuzhiyun Reading this attribute will provide the firmware 213*4882a593Smuzhiyun given instance (ACPI _DSM instance number) of the PCI device. 214*4882a593Smuzhiyun The attribute will be created only if the firmware has given 215*4882a593Smuzhiyun an instance number to the PCI device. ACPI _DSM instance number 216*4882a593Smuzhiyun will be given priority if the system firmware provides SMBIOS 217*4882a593Smuzhiyun type 41 device type instance also. 218*4882a593SmuzhiyunUsers: 219*4882a593Smuzhiyun Userspace applications interested in knowing the 220*4882a593Smuzhiyun firmware assigned instance number of the PCI 221*4882a593Smuzhiyun device that can help in understanding the firmware 222*4882a593Smuzhiyun intended order of the PCI device. 223*4882a593Smuzhiyun 224*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../d3cold_allowed 225*4882a593SmuzhiyunDate: July 2012 226*4882a593SmuzhiyunContact: Huang Ying <ying.huang@intel.com> 227*4882a593SmuzhiyunDescription: 228*4882a593Smuzhiyun d3cold_allowed is bit to control whether the corresponding PCI 229*4882a593Smuzhiyun device can be put into D3Cold state. If it is cleared, the 230*4882a593Smuzhiyun device will never be put into D3Cold state. If it is set, the 231*4882a593Smuzhiyun device may be put into D3Cold state if other requirements are 232*4882a593Smuzhiyun satisfied too. Reading this attribute will show the current 233*4882a593Smuzhiyun value of d3cold_allowed bit. Writing this attribute will set 234*4882a593Smuzhiyun the value of d3cold_allowed bit. 235*4882a593Smuzhiyun 236*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../sriov_totalvfs 237*4882a593SmuzhiyunDate: November 2012 238*4882a593SmuzhiyunContact: Donald Dutile <ddutile@redhat.com> 239*4882a593SmuzhiyunDescription: 240*4882a593Smuzhiyun This file appears when a physical PCIe device supports SR-IOV. 241*4882a593Smuzhiyun Userspace applications can read this file to determine the 242*4882a593Smuzhiyun maximum number of Virtual Functions (VFs) a PCIe physical 243*4882a593Smuzhiyun function (PF) can support. Typically, this is the value reported 244*4882a593Smuzhiyun in the PF's SR-IOV extended capability structure's TotalVFs 245*4882a593Smuzhiyun element. Drivers have the ability at probe time to reduce the 246*4882a593Smuzhiyun value read from this file via the pci_sriov_set_totalvfs() 247*4882a593Smuzhiyun function. 248*4882a593Smuzhiyun 249*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../sriov_numvfs 250*4882a593SmuzhiyunDate: November 2012 251*4882a593SmuzhiyunContact: Donald Dutile <ddutile@redhat.com> 252*4882a593SmuzhiyunDescription: 253*4882a593Smuzhiyun This file appears when a physical PCIe device supports SR-IOV. 254*4882a593Smuzhiyun Userspace applications can read and write to this file to 255*4882a593Smuzhiyun determine and control the enablement or disablement of Virtual 256*4882a593Smuzhiyun Functions (VFs) on the physical function (PF). A read of this 257*4882a593Smuzhiyun file will return the number of VFs that are enabled on this PF. 258*4882a593Smuzhiyun A number written to this file will enable the specified 259*4882a593Smuzhiyun number of VFs. A userspace application would typically read the 260*4882a593Smuzhiyun file and check that the value is zero, and then write the number 261*4882a593Smuzhiyun of VFs that should be enabled on the PF; the value written 262*4882a593Smuzhiyun should be less than or equal to the value in the sriov_totalvfs 263*4882a593Smuzhiyun file. A userspace application wanting to disable the VFs would 264*4882a593Smuzhiyun write a zero to this file. The core ensures that valid values 265*4882a593Smuzhiyun are written to this file, and returns errors when values are not 266*4882a593Smuzhiyun valid. For example, writing a 2 to this file when sriov_numvfs 267*4882a593Smuzhiyun is not 0 and not 2 already will return an error. Writing a 10 268*4882a593Smuzhiyun when the value of sriov_totalvfs is 8 will return an error. 269*4882a593Smuzhiyun 270*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../driver_override 271*4882a593SmuzhiyunDate: April 2014 272*4882a593SmuzhiyunContact: Alex Williamson <alex.williamson@redhat.com> 273*4882a593SmuzhiyunDescription: 274*4882a593Smuzhiyun This file allows the driver for a device to be specified which 275*4882a593Smuzhiyun will override standard static and dynamic ID matching. When 276*4882a593Smuzhiyun specified, only a driver with a name matching the value written 277*4882a593Smuzhiyun to driver_override will have an opportunity to bind to the 278*4882a593Smuzhiyun device. The override is specified by writing a string to the 279*4882a593Smuzhiyun driver_override file (echo pci-stub > driver_override) and 280*4882a593Smuzhiyun may be cleared with an empty string (echo > driver_override). 281*4882a593Smuzhiyun This returns the device to standard matching rules binding. 282*4882a593Smuzhiyun Writing to driver_override does not automatically unbind the 283*4882a593Smuzhiyun device from its current driver or make any attempt to 284*4882a593Smuzhiyun automatically load the specified driver. If no driver with a 285*4882a593Smuzhiyun matching name is currently loaded in the kernel, the device 286*4882a593Smuzhiyun will not bind to any driver. This also allows devices to 287*4882a593Smuzhiyun opt-out of driver binding using a driver_override name such as 288*4882a593Smuzhiyun "none". Only a single driver may be specified in the override, 289*4882a593Smuzhiyun there is no support for parsing delimiters. 290*4882a593Smuzhiyun 291*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../numa_node 292*4882a593SmuzhiyunDate: Oct 2014 293*4882a593SmuzhiyunContact: Prarit Bhargava <prarit@redhat.com> 294*4882a593SmuzhiyunDescription: 295*4882a593Smuzhiyun This file contains the NUMA node to which the PCI device is 296*4882a593Smuzhiyun attached, or -1 if the node is unknown. The initial value 297*4882a593Smuzhiyun comes from an ACPI _PXM method or a similar firmware 298*4882a593Smuzhiyun source. If that is missing or incorrect, this file can be 299*4882a593Smuzhiyun written to override the node. In that case, please report 300*4882a593Smuzhiyun a firmware bug to the system vendor. Writing to this file 301*4882a593Smuzhiyun taints the kernel with TAINT_FIRMWARE_WORKAROUND, which 302*4882a593Smuzhiyun reduces the supportability of your system. 303*4882a593Smuzhiyun 304*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../revision 305*4882a593SmuzhiyunDate: November 2016 306*4882a593SmuzhiyunContact: Emil Velikov <emil.l.velikov@gmail.com> 307*4882a593SmuzhiyunDescription: 308*4882a593Smuzhiyun This file contains the revision field of the PCI device. 309*4882a593Smuzhiyun The value comes from device config space. The file is read only. 310*4882a593Smuzhiyun 311*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../sriov_drivers_autoprobe 312*4882a593SmuzhiyunDate: April 2017 313*4882a593SmuzhiyunContact: Bodong Wang<bodong@mellanox.com> 314*4882a593SmuzhiyunDescription: 315*4882a593Smuzhiyun This file is associated with the PF of a device that 316*4882a593Smuzhiyun supports SR-IOV. It determines whether newly-enabled VFs 317*4882a593Smuzhiyun are immediately bound to a driver. It initially contains 318*4882a593Smuzhiyun 1, which means the kernel automatically binds VFs to a 319*4882a593Smuzhiyun compatible driver immediately after they are enabled. If 320*4882a593Smuzhiyun an application writes 0 to the file before enabling VFs, 321*4882a593Smuzhiyun the kernel will not bind VFs to a driver. 322*4882a593Smuzhiyun 323*4882a593Smuzhiyun A typical use case is to write 0 to this file, then enable 324*4882a593Smuzhiyun VFs, then assign the newly-created VFs to virtual machines. 325*4882a593Smuzhiyun Note that changing this file does not affect already- 326*4882a593Smuzhiyun enabled VFs. In this scenario, the user must first disable 327*4882a593Smuzhiyun the VFs, write 0 to sriov_drivers_autoprobe, then re-enable 328*4882a593Smuzhiyun the VFs. 329*4882a593Smuzhiyun 330*4882a593Smuzhiyun This is similar to /sys/bus/pci/drivers_autoprobe, but 331*4882a593Smuzhiyun affects only the VFs associated with a specific PF. 332*4882a593Smuzhiyun 333*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../p2pmem/size 334*4882a593SmuzhiyunDate: November 2017 335*4882a593SmuzhiyunContact: Logan Gunthorpe <logang@deltatee.com> 336*4882a593SmuzhiyunDescription: 337*4882a593Smuzhiyun If the device has any Peer-to-Peer memory registered, this 338*4882a593Smuzhiyun file contains the total amount of memory that the device 339*4882a593Smuzhiyun provides (in decimal). 340*4882a593Smuzhiyun 341*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../p2pmem/available 342*4882a593SmuzhiyunDate: November 2017 343*4882a593SmuzhiyunContact: Logan Gunthorpe <logang@deltatee.com> 344*4882a593SmuzhiyunDescription: 345*4882a593Smuzhiyun If the device has any Peer-to-Peer memory registered, this 346*4882a593Smuzhiyun file contains the amount of memory that has not been 347*4882a593Smuzhiyun allocated (in decimal). 348*4882a593Smuzhiyun 349*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../p2pmem/published 350*4882a593SmuzhiyunDate: November 2017 351*4882a593SmuzhiyunContact: Logan Gunthorpe <logang@deltatee.com> 352*4882a593SmuzhiyunDescription: 353*4882a593Smuzhiyun If the device has any Peer-to-Peer memory registered, this 354*4882a593Smuzhiyun file contains a '1' if the memory has been published for 355*4882a593Smuzhiyun use outside the driver that owns the device. 356*4882a593Smuzhiyun 357*4882a593SmuzhiyunWhat: /sys/bus/pci/devices/.../link/clkpm 358*4882a593Smuzhiyun /sys/bus/pci/devices/.../link/l0s_aspm 359*4882a593Smuzhiyun /sys/bus/pci/devices/.../link/l1_aspm 360*4882a593Smuzhiyun /sys/bus/pci/devices/.../link/l1_1_aspm 361*4882a593Smuzhiyun /sys/bus/pci/devices/.../link/l1_2_aspm 362*4882a593Smuzhiyun /sys/bus/pci/devices/.../link/l1_1_pcipm 363*4882a593Smuzhiyun /sys/bus/pci/devices/.../link/l1_2_pcipm 364*4882a593SmuzhiyunDate: October 2019 365*4882a593SmuzhiyunContact: Heiner Kallweit <hkallweit1@gmail.com> 366*4882a593SmuzhiyunDescription: If ASPM is supported for an endpoint, these files can be 367*4882a593Smuzhiyun used to disable or enable the individual power management 368*4882a593Smuzhiyun states. Write y/1/on to enable, n/0/off to disable. 369