1# SPDX-License-Identifier: GPL-2.0
2#
3# PCI Hotplug support
4#
5
6menuconfig HOTPLUG_PCI
7	bool "Support for PCI Hotplug"
8	depends on PCI && SYSFS
9	default y if USB4
10	help
11	  Say Y here if you have a motherboard with a PCI Hotplug controller.
12	  This allows you to add and remove PCI cards while the machine is
13	  powered up and running.
14
15	  Thunderbolt/USB4 PCIe tunneling depends on native PCIe hotplug.
16
17	  When in doubt, say N.
18
19if HOTPLUG_PCI
20
21config HOTPLUG_PCI_COMPAQ
22	tristate "Compaq PCI Hotplug driver"
23	depends on X86 && PCI_BIOS
24	help
25	  Say Y here if you have a motherboard with a Compaq PCI Hotplug
26	  controller.
27
28	  To compile this driver as a module, choose M here: the
29	  module will be called cpqphp.
30
31	  When in doubt, say N.
32
33config HOTPLUG_PCI_COMPAQ_NVRAM
34	bool "Save configuration into NVRAM on Compaq servers"
35	depends on HOTPLUG_PCI_COMPAQ
36	help
37	  Say Y here if you have a Compaq server that has a PCI Hotplug
38	  controller.  This will allow the PCI Hotplug driver to store the PCI
39	  system configuration options in NVRAM.
40
41	  When in doubt, say N.
42
43config HOTPLUG_PCI_IBM
44	tristate "IBM PCI Hotplug driver"
45	depends on X86_IO_APIC && X86 && PCI_BIOS
46	help
47	  Say Y here if you have a motherboard with a IBM PCI Hotplug
48	  controller.
49
50	  To compile this driver as a module, choose M here: the
51	  module will be called ibmphp.
52
53	  When in doubt, say N.
54
55config HOTPLUG_PCI_ACPI
56	bool "ACPI PCI Hotplug driver"
57	depends on HOTPLUG_PCI=y && ((!ACPI_DOCK && ACPI) || (ACPI_DOCK))
58	help
59	  Say Y here if you have a system that supports PCI Hotplug using
60	  ACPI.
61
62	  When in doubt, say N.
63
64config HOTPLUG_PCI_ACPI_IBM
65	tristate "ACPI PCI Hotplug driver IBM extensions"
66	depends on HOTPLUG_PCI_ACPI
67	help
68	  Say Y here if you have an IBM system that supports PCI Hotplug using
69	  ACPI.
70
71	  To compile this driver as a module, choose M here: the
72	  module will be called acpiphp_ibm.
73
74	  When in doubt, say N.
75
76config HOTPLUG_PCI_CPCI
77	bool "CompactPCI Hotplug driver"
78	help
79	  Say Y here if you have a CompactPCI system card with CompactPCI
80	  hotswap support per the PICMG 2.1 specification.
81
82	  When in doubt, say N.
83
84config HOTPLUG_PCI_CPCI_ZT5550
85	tristate "Ziatech ZT5550 CompactPCI Hotplug driver"
86	depends on HOTPLUG_PCI_CPCI && X86
87	help
88	  Say Y here if you have an Performance Technologies (formerly Intel,
89	  formerly just Ziatech) Ziatech ZT5550 CompactPCI system card.
90
91	  To compile this driver as a module, choose M here: the
92	  module will be called cpcihp_zt5550.
93
94	  When in doubt, say N.
95
96config HOTPLUG_PCI_CPCI_GENERIC
97	tristate "Generic port I/O CompactPCI Hotplug driver"
98	depends on HOTPLUG_PCI_CPCI && X86
99	help
100	  Say Y here if you have a CompactPCI system card that exposes the #ENUM
101	  hotswap signal as a bit in a system register that can be read through
102	  standard port I/O.
103
104	  To compile this driver as a module, choose M here: the
105	  module will be called cpcihp_generic.
106
107	  When in doubt, say N.
108
109config HOTPLUG_PCI_SHPC
110	bool "SHPC PCI Hotplug driver"
111	help
112	  Say Y here if you have a motherboard with a SHPC PCI Hotplug
113	  controller.
114
115	  When in doubt, say N.
116
117config HOTPLUG_PCI_POWERNV
118	tristate "PowerPC PowerNV PCI Hotplug driver"
119	depends on PPC_POWERNV && EEH
120	select OF_DYNAMIC
121	help
122	  Say Y here if you run PowerPC PowerNV platform that supports
123	  PCI Hotplug
124
125	  To compile this driver as a module, choose M here: the
126	  module will be called pnv-php.
127
128	  When in doubt, say N.
129
130config HOTPLUG_PCI_RPA
131	tristate "RPA PCI Hotplug driver"
132	depends on PPC_PSERIES && EEH
133	help
134	  Say Y here if you have a RPA system that supports PCI Hotplug.
135
136	  To compile this driver as a module, choose M here: the
137	  module will be called rpaphp.
138
139	  When in doubt, say N.
140
141config HOTPLUG_PCI_RPA_DLPAR
142	tristate "RPA Dynamic Logical Partitioning for I/O slots"
143	depends on HOTPLUG_PCI_RPA
144	help
145	  Say Y here if your system supports Dynamic Logical Partitioning
146	  for I/O slots.
147
148	  To compile this driver as a module, choose M here: the
149	  module will be called rpadlpar_io.
150
151	  When in doubt, say N.
152
153config HOTPLUG_PCI_S390
154	bool "System z PCI Hotplug Support"
155	depends on S390 && 64BIT
156	help
157	  Say Y here if you want to use the System z PCI Hotplug
158	  driver for PCI devices. Without this driver it is not
159	  possible to access stand-by PCI functions nor to deconfigure
160	  PCI functions.
161
162	  When in doubt, say Y.
163
164endif # HOTPLUG_PCI
165