blob: 7958e59d6077dcf341e4e76f8bfb902c3ef81e10 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# PCI Express Port Bus Configuration
3#
4config PCIEPORTBUS
Ezequiel Garciad47af0b2013-07-04 17:45:20 -03005 bool "PCI Express Port Bus support"
Linus Torvalds1da177e2005-04-16 15:20:36 -07006 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#
16config HOTPLUG_PCI_PCIE
Bjorn Helgaasc10cc482013-07-23 10:55:56 -060017 bool "PCI Express Hotplug driver"
Linus Torvalds1da177e2005-04-16 15:20:36 -070018 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 Torvalds1da177e2005-04-16 15:20:36 -070023 When in doubt, say N.
24
Zhang, Yanmin6c2b3742006-07-31 15:21:33 +080025source "drivers/pci/pcie/aer/Kconfig"
Shaohua Li7d715a62008-02-25 09:46:41 +080026
27#
28# PCI Express ASPM
29#
30config PCIEASPM
David Rientjes6a108a12011-01-20 14:44:16 -080031 bool "PCI Express ASPM control" if EXPERT
Matthew Garrettea5f9fc2010-06-22 17:03:03 -040032 depends on PCI && PCIEPORTBUS
33 default y
Shaohua Li7d715a62008-02-25 09:46:41 +080034 help
Matthew Garrettea5f9fc2010-06-22 17:03:03 -040035 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 Li7d715a62008-02-25 09:46:41 +080038
P. Christeasd56641c2011-12-06 20:48:35 +020039 ASPM is initially set up by the firmware. With this option enabled,
Matthew Garrettea5f9fc2010-06-22 17:03:03 -040040 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 Li7d715a62008-02-25 09:46:41 +080047config 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. Wysockic7f48652010-02-17 23:39:08 +010054
Matthew Garrettad71c962012-02-03 10:18:13 -050055choice
56 prompt "Default ASPM policy"
57 default PCIEASPM_DEFAULT
58 depends on PCIEASPM
59
60config PCIEASPM_DEFAULT
61 bool "BIOS default"
62 depends on PCIEASPM
63 help
64 Use the BIOS defaults for PCI Express ASPM.
65
66config 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
73config 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.
78endchoice
79
Rafael J. Wysockic7f48652010-02-17 23:39:08 +010080config PCIE_PME
81 def_bool y
Bjorn Helgaas05795722013-04-11 17:36:50 -060082 depends on PCIEPORTBUS && PM_RUNTIME