xref: /linux/drivers/power/reset/Kconfig (revision ec2e0fb07d789976c601bec19ecced7a501c3705)
1# SPDX-License-Identifier: GPL-2.0-only
2menuconfig POWER_RESET
3	bool "Board level reset or power off"
4	help
5	  Provides a number of drivers which either reset a complete board
6	  or shut it down, by manipulating the main power supply on the board.
7
8	  Say Y here to enable board reset and power off
9
10if POWER_RESET
11
12config POWER_RESET_AS3722
13	bool "ams AS3722 power-off driver"
14	depends on MFD_AS3722
15	help
16	  This driver supports turning off board via a ams AS3722 power-off.
17
18config POWER_RESET_AT91_POWEROFF
19	tristate "Atmel AT91 poweroff driver"
20	depends on ARCH_AT91
21	default SOC_AT91SAM9 || SOC_SAMA5
22	help
23	  This driver supports poweroff for Atmel AT91SAM9 and SAMA5
24	  SoCs
25
26config POWER_RESET_AT91_RESET
27	tristate "Atmel AT91 reset driver"
28	depends on ARCH_AT91
29	default SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA5
30	help
31	  This driver supports restart for Atmel AT91SAM9 and SAMA5
32	  SoCs
33
34config POWER_RESET_AT91_SAMA5D2_SHDWC
35	tristate "Atmel AT91 SAMA5D2-Compatible shutdown controller driver"
36	depends on ARCH_AT91
37	default SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA5
38	help
39	  This driver supports the alternate shutdown controller for some Atmel
40	  SAMA5 SoCs. It is present for example on SAMA5D2 SoC.
41
42config POWER_RESET_ATC260X
43	tristate "Actions Semi ATC260x PMIC power-off driver"
44	depends on MFD_ATC260X
45	help
46	  This driver provides power-off and restart support for a system
47	  through Actions Semi ATC260x series PMICs.
48
49config POWER_RESET_AXXIA
50	bool "LSI Axxia reset driver"
51	depends on ARCH_AXXIA
52	help
53	  This driver supports restart for Axxia SoC.
54
55	  Say Y if you have an Axxia family SoC.
56
57config POWER_RESET_BRCMKONA
58	bool "Broadcom Kona reset driver"
59	depends on ARM || COMPILE_TEST
60	default ARCH_BCM_MOBILE
61	help
62	  This driver provides restart support for Broadcom Kona chips.
63
64	  Say Y here if you have a Broadcom Kona-based board and you wish
65	  to have restart support.
66
67config POWER_RESET_BRCMSTB
68	bool "Broadcom STB reset driver"
69	depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST
70	depends on MFD_SYSCON
71	default ARCH_BRCMSTB || BMIPS_GENERIC
72	help
73	  This driver provides restart support for Broadcom STB boards.
74
75	  Say Y here if you have a Broadcom STB board and you wish
76	  to have restart support.
77
78config POWER_RESET_EP93XX
79	bool "Cirrus EP93XX reset driver" if COMPILE_TEST
80	depends on MFD_SYSCON
81	default ARCH_EP93XX
82	select AUXILIARY_BUS
83	help
84	  This driver provides restart support for Cirrus EP93XX SoC.
85
86	  Say Y here if you have a Cirrus EP93XX SoC and you wish
87	  to have restart support.
88
89config POWER_RESET_GEMINI_POWEROFF
90	bool "Cortina Gemini power-off driver"
91	depends on ARCH_GEMINI || COMPILE_TEST
92	depends on OF && HAS_IOMEM
93	default ARCH_GEMINI
94	help
95	  This driver supports turning off the Cortina Gemini SoC.
96	  Select this if you're building a kernel with Gemini SoC support.
97
98config POWER_RESET_GPIO
99	bool "GPIO power-off driver"
100	depends on OF_GPIO
101	help
102	  This driver supports turning off your board via a GPIO line.
103	  If your board needs a GPIO high/low to power down, say Y and
104	  create a binding in your devicetree.
105
106config POWER_RESET_GPIO_RESTART
107	bool "GPIO restart driver"
108	depends on OF_GPIO
109	help
110	  This driver supports restarting your board via a GPIO line.
111	  If your board needs a GPIO high/low to restart, say Y and
112	  create a binding in your devicetree.
113
114config POWER_RESET_HISI
115	bool "Hisilicon power-off driver"
116	depends on ARCH_HISI
117	help
118	  Reboot support for Hisilicon boards.
119
120config POWER_RESET_LINKSTATION
121	tristate "Buffalo LinkStation power-off driver"
122	depends on ARCH_MVEBU || COMPILE_TEST
123	depends on OF_MDIO && PHYLIB
124	help
125	  This driver supports turning off some Buffalo LinkStations by
126	  setting an output pin at the ethernet PHY to the correct state.
127	  It also makes the device compatible with the WoL function.
128
129	  Say Y here if you have a Buffalo LinkStation LS421D/E.
130
131config POWER_RESET_MACSMC
132	tristate "Apple SMC reset/power-off driver"
133	depends on MFD_MACSMC
134	help
135	  This driver supports reset and power-off on Apple Mac machines
136	  that implement this functionality via the SMC.
137
138	  Say Y here if you have an Apple Silicon Mac.
139
140config POWER_RESET_MSM
141	bool "Qualcomm MSM power-off driver"
142	depends on ARCH_QCOM
143	help
144	  Power off and restart support for Qualcomm boards.
145
146config POWER_RESET_QCOM_PON
147	tristate "Qualcomm power-on driver"
148	depends on ARCH_QCOM
149	depends on MFD_SPMI_PMIC
150	select REBOOT_MODE
151	help
152	  Power On support for Qualcomm boards.
153	  If you have a Qualcomm platform and need support for
154	  power-on and reboot reason, Say Y.
155	  If unsure, Say N.
156
157config POWER_RESET_OCELOT_RESET
158	bool "Microsemi Ocelot reset driver"
159	depends on MSCC_OCELOT || ARCH_SPARX5 || COMPILE_TEST
160	select MFD_SYSCON
161	help
162	  This driver supports restart for Microsemi Ocelot SoC and similar.
163
164config POWER_RESET_ODROID_GO_ULTRA_POWEROFF
165	bool "Odroid Go Ultra power-off driver"
166	depends on ARCH_MESON || COMPILE_TEST
167	depends on I2C=y && OF
168	help
169	  This driver supports Power off for Odroid Go Ultra device.
170
171config POWER_RESET_PIIX4_POWEROFF
172	tristate "Intel PIIX4 power-off driver"
173	depends on PCI
174	depends on HAS_IOPORT
175	depends on MIPS || COMPILE_TEST
176	help
177	  This driver supports powering off a system using the Intel PIIX4
178	  southbridge, for example the MIPS Malta development board. The
179	  southbridge SOff state is entered in response to a request to
180	  power off the system.
181
182config POWER_RESET_LTC2952
183	bool "LTC2952 PowerPath power-off driver"
184	depends on OF_GPIO
185	help
186	  This driver supports an external powerdown trigger and board power
187	  down via the LTC2952. Bindings are made in the device tree.
188
189config POWER_RESET_MT6323
190	bool "MediaTek MT6323 power-off driver"
191	depends on MFD_MT6397
192	help
193	  The power-off driver is responsible for externally shutdown down
194	  the power of a remote MediaTek SoC MT6323 is connected to through
195	  controlling a tiny circuit BBPU inside MT6323 RTC.
196
197	  Say Y if you have a board where MT6323 could be found.
198
199config POWER_RESET_QNAP
200	bool "QNAP power-off driver"
201	depends on OF_GPIO && PLAT_ORION
202	help
203	  This driver supports turning off QNAP NAS devices by sending
204	  commands to the microcontroller which controls the main power.
205
206	  Say Y if you have a QNAP NAS.
207
208config POWER_RESET_REGULATOR
209	bool "Regulator subsystem power-off driver"
210	depends on OF && REGULATOR
211	help
212	  This driver supports turning off your board by disabling a
213	  power regulator defined in the devicetree.
214
215config POWER_RESET_RESTART
216	bool "Restart power-off driver"
217	help
218	  Some boards don't actually have the ability to power off.
219	  Instead they restart, and u-boot holds the SoC until the
220	  user presses a key. u-boot then boots into Linux.
221
222config POWER_RESET_ST
223	bool "ST restart driver"
224	depends on ARCH_STI
225	help
226	  Reset support for STMicroelectronics boards.
227
228config POWER_RESET_TH1520_AON
229	tristate "T-Head TH1520 AON firmware poweroff and reset driver"
230	depends on TH1520_PM_DOMAINS
231	help
232	  This driver supports power-off and reset operations for T-Head
233	  TH1520 SoCs running the AON firmware.
234
235config POWER_RESET_TORADEX_EC
236	tristate "Toradex Embedded Controller power-off and reset driver"
237	depends on ARCH_MXC || COMPILE_TEST
238	depends on I2C
239	select REGMAP_I2C
240	help
241	  This driver supports power-off and reset for SMARC Toradex SoMs,
242	  for example the SMARC iMX8MP and SMARC iMX95, using Toradex
243	  Embedded Controller (EC).
244
245	  Say Y here if you have a Toradex SMARC SoM.
246
247	  If unsure, say N.
248
249config POWER_RESET_TPS65086
250	bool "TPS65086 restart driver"
251	depends on MFD_TPS65086
252	help
253	  This driver adds support for resetting the TPS65086 PMIC on restart.
254
255config POWER_RESET_VERSATILE
256	bool "ARM Versatile family reboot driver"
257	depends on ARM
258	depends on MFD_SYSCON
259	depends on OF
260	help
261	  Power off and restart support for ARM Versatile family of
262	  reference boards.
263
264config POWER_RESET_VEXPRESS
265	bool "ARM Versatile Express power-off and reset driver"
266	depends on ARM || ARM64
267	depends on VEXPRESS_CONFIG=y
268	help
269	  Power off and reset support for the ARM Ltd. Versatile
270	  Express boards.
271
272config POWER_RESET_XGENE
273	bool "APM SoC X-Gene reset driver"
274	depends on ARM64
275	help
276	  Reboot support for the APM SoC X-Gene Eval boards.
277
278config POWER_RESET_KEYSTONE
279	bool "Keystone reset driver"
280	depends on ARCH_KEYSTONE || COMPILE_TEST
281	depends on HAS_IOMEM
282	select MFD_SYSCON
283	help
284	  Reboot support for the KEYSTONE SoCs.
285
286config POWER_RESET_SYSCON
287	bool "Generic SYSCON regmap reset driver"
288	depends on OF
289	depends on HAS_IOMEM
290	select MFD_SYSCON
291	help
292	  Reboot support for generic SYSCON mapped register reset.
293
294config POWER_RESET_SYSCON_POWEROFF
295	bool "Generic SYSCON regmap poweroff driver"
296	depends on OF
297	depends on HAS_IOMEM
298	select MFD_SYSCON
299	help
300	  Poweroff support for generic SYSCON mapped register poweroff.
301
302config POWER_RESET_RMOBILE
303	tristate "Renesas R-Mobile reset driver"
304	depends on ARCH_RMOBILE || COMPILE_TEST
305	depends on HAS_IOMEM
306	help
307	  Reboot support for Renesas R-Mobile and SH-Mobile SoCs.
308
309config REBOOT_MODE
310	tristate
311
312config SYSCON_REBOOT_MODE
313	tristate "Generic SYSCON regmap reboot mode driver"
314	depends on OF
315	depends on MFD_SYSCON
316	select REBOOT_MODE
317	help
318	  Say y here will enable reboot mode driver. This will
319	  get reboot mode arguments and store it in SYSCON mapped
320	  register, then the bootloader can read it to take different
321	  action according to the mode.
322
323config POWER_RESET_SC27XX
324	tristate "Spreadtrum SC27xx PMIC power-off driver"
325	depends on MFD_SC27XX_PMIC || COMPILE_TEST
326	help
327	  This driver supports powering off a system through
328	  Spreadtrum SC27xx series PMICs. The SC27xx series
329	  PMICs includes the SC2720, SC2721, SC2723, SC2730
330	  and SC2731 chips.
331
332config NVMEM_REBOOT_MODE
333	tristate "Generic NVMEM reboot mode driver"
334	depends on OF
335	select REBOOT_MODE
336	help
337	  Say y here will enable reboot mode driver. This will
338	  get reboot mode arguments and store it in a NVMEM cell,
339	  then the bootloader can read it and take different
340	  action according to the mode.
341
342config POWER_MLXBF
343	tristate "Mellanox BlueField power handling driver"
344	depends on (GPIO_MLXBF2 || GPIO_MLXBF3) && ACPI
345	help
346	  This driver supports reset or low power mode handling for Mellanox BlueField.
347
348endif
349