1 # SPDX-License-Identifier: GPL-2.0
3 # PCI Express Port Bus Configuration
6 bool "PCI Express Port Bus support"
8 This enables PCI Express Port Bus support. Users can then enable
9 support for Native Hot-Plug, Advanced Error Reporting, Power
10 Management Events, and Downstream Port Containment.
13 # Include service Kconfig here
15 config HOTPLUG_PCI_PCIE
16 bool "PCI Express Hotplug driver"
17 depends on HOTPLUG_PCI && PCIEPORTBUS
19 Say Y here if you have a motherboard that supports PCI Express Native
25 bool "PCI Express Advanced Error Reporting support"
26 depends on PCIEPORTBUS
30 This enables PCI Express Root Port Advanced Error Reporting
31 (AER) driver support. Error reporting messages sent to Root
32 Port will be handled by PCI Express AER driver.
35 tristate "PCI Express error injection support"
37 select GENERIC_IRQ_INJECTION
39 This enables PCI Express Root Port Advanced Error Reporting
40 (AER) software error injector.
42 Debugging AER code is quite difficult because it is hard
43 to trigger various real hardware errors. Software-based
44 error injection can fake almost all kinds of errors with the
45 help of a user space helper tool aer-inject, which can be
47 http://www.kernel.org/pub/linux/utils/pci/aer-inject/
53 bool "PCI Express ECRC settings control"
56 Used to override firmware/bios settings for PCI Express ECRC
57 (transaction layer end-to-end CRC checking).
65 bool "PCI Express ASPM control" if EXPERT
68 This enables OS control over PCI Express ASPM (Active State
69 Power Management) and Clock Power Management. ASPM supports
72 ASPM is initially set up by the firmware. With this option enabled,
73 Linux can modify this state in order to disable ASPM on known-bad
74 hardware or configurations and enable it when known-safe.
76 ASPM can be disabled or enabled at runtime via
77 /sys/module/pcie_aspm/parameters/policy
82 prompt "Default ASPM policy"
83 default PCIEASPM_DEFAULT
86 config PCIEASPM_DEFAULT
90 Use the BIOS defaults for PCI Express ASPM.
92 config PCIEASPM_POWERSAVE
96 Enable PCI Express ASPM L0s and L1 where possible, even if the
99 config PCIEASPM_POWER_SUPERSAVE
100 bool "Power Supersave"
103 Same as PCIEASPM_POWERSAVE, except it also enables L1 substates where
104 possible. This would result in higher power savings while staying in L1
105 where the components support it.
107 config PCIEASPM_PERFORMANCE
111 Disable PCI Express ASPM L0s and L1, even if the BIOS enabled them.
116 depends on PCIEPORTBUS && PM
119 bool "PCI Express Downstream Port Containment support"
120 depends on PCIEPORTBUS && PCIEAER
122 This enables PCI Express Downstream Port Containment (DPC)
123 driver support. DPC events from Root and Downstream ports
124 will be handled by the DPC driver. If your system doesn't
125 have this capability or you do not want to use this feature,
126 it is safe to answer N.
129 bool "PCI Express Precision Time Measurement support"
131 This enables PCI Express Precision Time Measurement (PTM)
134 This is only useful if you have devices that support PTM, but it
135 is safe to enable even if you don't.
138 bool "PCI Express Bandwidth Change Notification"
139 depends on PCIEPORTBUS
141 This enables PCI Express Bandwidth Change Notification. If
142 you know link width or rate changes occur only to correct
143 unreliable links, you may answer Y.
146 bool "PCI Express Error Disconnect Recover support"
147 depends on PCIE_DPC && ACPI
149 This option adds Error Disconnect Recover support as specified
150 in the Downstream Port Containment Related Enhancements ECN to
151 the PCI Firmware Specification r3.2. Enable this if you want to
152 support hybrid DPC model which uses both firmware and OS to