Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | # |
| 2 | # PCI Express Port Bus Configuration |
| 3 | # |
| 4 | config PCIEPORTBUS |
Ezequiel Garcia | d47af0b | 2013-07-04 17:45:20 -0300 | [diff] [blame] | 5 | bool "PCI Express Port Bus support" |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 6 | depends on PCI |
| 7 | help |
| 8 | This automatically enables PCI Express Port Bus support. Users can |
| 9 | choose Native Hot-Plug support, Advanced Error Reporting support, |
| 10 | Power Management Event support and Virtual Channel support to run |
| 11 | on PCI Express Ports (Root or Switch). |
| 12 | |
| 13 | # |
| 14 | # Include service Kconfig here |
| 15 | # |
| 16 | config HOTPLUG_PCI_PCIE |
Bjorn Helgaas | c10cc48 | 2013-07-23 10:55:56 -0600 | [diff] [blame] | 17 | bool "PCI Express Hotplug driver" |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 18 | depends on HOTPLUG_PCI && PCIEPORTBUS |
| 19 | help |
| 20 | Say Y here if you have a motherboard that supports PCI Express Native |
| 21 | Hotplug |
| 22 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 23 | When in doubt, say N. |
| 24 | |
Zhang, Yanmin | 6c2b374 | 2006-07-31 15:21:33 +0800 | [diff] [blame] | 25 | source "drivers/pci/pcie/aer/Kconfig" |
Shaohua Li | 7d715a6 | 2008-02-25 09:46:41 +0800 | [diff] [blame] | 26 | |
| 27 | # |
| 28 | # PCI Express ASPM |
| 29 | # |
| 30 | config PCIEASPM |
David Rientjes | 6a108a1 | 2011-01-20 14:44:16 -0800 | [diff] [blame] | 31 | bool "PCI Express ASPM control" if EXPERT |
Matthew Garrett | ea5f9fc | 2010-06-22 17:03:03 -0400 | [diff] [blame] | 32 | depends on PCI && PCIEPORTBUS |
| 33 | default y |
Shaohua Li | 7d715a6 | 2008-02-25 09:46:41 +0800 | [diff] [blame] | 34 | help |
Matthew Garrett | ea5f9fc | 2010-06-22 17:03:03 -0400 | [diff] [blame] | 35 | This enables OS control over PCI Express ASPM (Active State |
| 36 | Power Management) and Clock Power Management. ASPM supports |
| 37 | state L0/L0s/L1. |
Shaohua Li | 7d715a6 | 2008-02-25 09:46:41 +0800 | [diff] [blame] | 38 | |
P. Christeas | d56641c | 2011-12-06 20:48:35 +0200 | [diff] [blame] | 39 | ASPM is initially set up by the firmware. With this option enabled, |
Matthew Garrett | ea5f9fc | 2010-06-22 17:03:03 -0400 | [diff] [blame] | 40 | Linux can modify this state in order to disable ASPM on known-bad |
| 41 | hardware or configurations and enable it when known-safe. |
| 42 | |
| 43 | ASPM can be disabled or enabled at runtime via |
| 44 | /sys/module/pcie_aspm/parameters/policy |
| 45 | |
| 46 | When in doubt, say Y. |
Shaohua Li | 7d715a6 | 2008-02-25 09:46:41 +0800 | [diff] [blame] | 47 | config PCIEASPM_DEBUG |
| 48 | bool "Debug PCI Express ASPM" |
| 49 | depends on PCIEASPM |
| 50 | default n |
| 51 | help |
| 52 | This enables PCI Express ASPM debug support. It will add per-device |
| 53 | interface to control ASPM. |
Rafael J. Wysocki | c7f4865 | 2010-02-17 23:39:08 +0100 | [diff] [blame] | 54 | |
Matthew Garrett | ad71c96 | 2012-02-03 10:18:13 -0500 | [diff] [blame] | 55 | choice |
| 56 | prompt "Default ASPM policy" |
| 57 | default PCIEASPM_DEFAULT |
| 58 | depends on PCIEASPM |
| 59 | |
| 60 | config PCIEASPM_DEFAULT |
| 61 | bool "BIOS default" |
| 62 | depends on PCIEASPM |
| 63 | help |
| 64 | Use the BIOS defaults for PCI Express ASPM. |
| 65 | |
| 66 | config PCIEASPM_POWERSAVE |
| 67 | bool "Powersave" |
| 68 | depends on PCIEASPM |
| 69 | help |
| 70 | Enable PCI Express ASPM L0s and L1 where possible, even if the |
| 71 | BIOS did not. |
| 72 | |
| 73 | config PCIEASPM_PERFORMANCE |
| 74 | bool "Performance" |
| 75 | depends on PCIEASPM |
| 76 | help |
| 77 | Disable PCI Express ASPM L0s and L1, even if the BIOS enabled them. |
| 78 | endchoice |
| 79 | |
Rafael J. Wysocki | c7f4865 | 2010-02-17 23:39:08 +0100 | [diff] [blame] | 80 | config PCIE_PME |
| 81 | def_bool y |
Bjorn Helgaas | 0579572 | 2013-04-11 17:36:50 -0600 | [diff] [blame] | 82 | depends on PCIEPORTBUS && PM_RUNTIME |