xref: /openbmc/linux/drivers/power/reset/Kconfig (revision d0c7dc17)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
296ff0f5cSJamie Lentinmenuconfig POWER_RESET
396ff0f5cSJamie Lentin	bool "Board level reset or power off"
496ff0f5cSJamie Lentin	help
596ff0f5cSJamie Lentin	  Provides a number of drivers which either reset a complete board
696ff0f5cSJamie Lentin	  or shut it down, by manipulating the main power supply on the board.
796ff0f5cSJamie Lentin
896ff0f5cSJamie Lentin	  Say Y here to enable board reset and power off
996ff0f5cSJamie Lentin
106ca4f460SMaxime Ripardif POWER_RESET
116ca4f460SMaxime Ripard
1256fb8de5SLaxman Dewanganconfig POWER_RESET_AS3722
1356fb8de5SLaxman Dewangan	bool "ams AS3722 power-off driver"
146ca4f460SMaxime Ripard	depends on MFD_AS3722
1556fb8de5SLaxman Dewangan	help
1656fb8de5SLaxman Dewangan	  This driver supports turning off board via a ams AS3722 power-off.
1756fb8de5SLaxman Dewangan
18ae499f0fSMaxime Ripardconfig POWER_RESET_AT91_POWEROFF
196dd1ad1fSAlexandre Belloni	tristate "Atmel AT91 poweroff driver"
2094d450edSNicolas Ferre	depends on ARCH_AT91
21ae499f0fSMaxime Ripard	default SOC_AT91SAM9 || SOC_SAMA5
22ae499f0fSMaxime Ripard	help
23ae499f0fSMaxime Ripard	  This driver supports poweroff for Atmel AT91SAM9 and SAMA5
24ae499f0fSMaxime Ripard	  SoCs
25ae499f0fSMaxime Ripard
26ecfe64d8SMaxime Ripardconfig POWER_RESET_AT91_RESET
276e64180aSAlexandre Belloni	tristate "Atmel AT91 reset driver"
2894d450edSNicolas Ferre	depends on ARCH_AT91
29a79fa0c1SClaudiu Beznea	default SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAMA5
30ecfe64d8SMaxime Ripard	help
31ecfe64d8SMaxime Ripard	  This driver supports restart for Atmel AT91SAM9 and SAMA5
32ecfe64d8SMaxime Ripard	  SoCs
33ecfe64d8SMaxime Ripard
34f80cb488SNicolas Ferreconfig POWER_RESET_AT91_SAMA5D2_SHDWC
35f80cb488SNicolas Ferre	tristate "Atmel AT91 SAMA5D2-Compatible shutdown controller driver"
360b040874SAlexandre Belloni	depends on ARCH_AT91
371b6e21f2SClaudiu Beznea	default SOC_SAM9X60 || SOC_SAMA5
38f80cb488SNicolas Ferre	help
39f80cb488SNicolas Ferre	  This driver supports the alternate shutdown controller for some Atmel
40f80cb488SNicolas Ferre	  SAMA5 SoCs. It is present for example on SAMA5D2 SoC.
41f80cb488SNicolas Ferre
424a315e34SAnders Bergconfig POWER_RESET_AXXIA
434a315e34SAnders Berg	bool "LSI Axxia reset driver"
446ca4f460SMaxime Ripard	depends on ARCH_AXXIA
454a315e34SAnders Berg	help
464a315e34SAnders Berg	  This driver supports restart for Axxia SoC.
474a315e34SAnders Berg
484a315e34SAnders Berg	  Say Y if you have an Axxia family SoC.
494a315e34SAnders Berg
50783cb948SChris Brandconfig POWER_RESET_BRCMKONA
51783cb948SChris Brand	bool "Broadcom Kona reset driver"
52783cb948SChris Brand	depends on ARM || COMPILE_TEST
53783cb948SChris Brand	default ARCH_BCM_MOBILE
54783cb948SChris Brand	help
55783cb948SChris Brand	  This driver provides restart support for Broadcom Kona chips.
56783cb948SChris Brand
57783cb948SChris Brand	  Say Y here if you have a Broadcom Kona-based board and you wish
58783cb948SChris Brand	  to have restart support.
59783cb948SChris Brand
60030494e7SMarc Carinoconfig POWER_RESET_BRCMSTB
614f5fd640SKevin Cernekee	bool "Broadcom STB reset driver"
6212031fcaSFlorian Fainelli	depends on ARM || ARM64 || MIPS || COMPILE_TEST
630a73125dSFlorian Fainelli	depends on MFD_SYSCON
641d2495e8SFlorian Fainelli	default ARCH_BRCMSTB || BMIPS_GENERIC
65030494e7SMarc Carino	help
664f5fd640SKevin Cernekee	  This driver provides restart support for Broadcom STB boards.
67030494e7SMarc Carino
684f5fd640SKevin Cernekee	  Say Y here if you have a Broadcom STB board and you wish
69030494e7SMarc Carino	  to have restart support.
70030494e7SMarc Carino
71f7a388d6SLinus Walleijconfig POWER_RESET_GEMINI_POWEROFF
72f7a388d6SLinus Walleij	bool "Cortina Gemini power-off driver"
73f7a388d6SLinus Walleij	depends on ARCH_GEMINI || COMPILE_TEST
74f7a388d6SLinus Walleij	depends on OF && HAS_IOMEM
75f7a388d6SLinus Walleij	default ARCH_GEMINI
76f7a388d6SLinus Walleij	help
77f7a388d6SLinus Walleij	  This driver supports turning off the Cortina Gemini SoC.
78f7a388d6SLinus Walleij	  Select this if you're building a kernel with Gemini SoC support.
79f7a388d6SLinus Walleij
8096ff0f5cSJamie Lentinconfig POWER_RESET_GPIO
8196ff0f5cSJamie Lentin	bool "GPIO power-off driver"
826ca4f460SMaxime Ripard	depends on OF_GPIO
8396ff0f5cSJamie Lentin	help
8496ff0f5cSJamie Lentin	  This driver supports turning off your board via a GPIO line.
8596ff0f5cSJamie Lentin	  If your board needs a GPIO high/low to power down, say Y and
8696ff0f5cSJamie Lentin	  create a binding in your devicetree.
87e8fc721aSAndrew Lunn
88371bb20dSDavid Rileyconfig POWER_RESET_GPIO_RESTART
89371bb20dSDavid Riley	bool "GPIO restart driver"
9050fa8617SLinus Torvalds	depends on OF_GPIO
91371bb20dSDavid Riley	help
92371bb20dSDavid Riley	  This driver supports restarting your board via a GPIO line.
93371bb20dSDavid Riley	  If your board needs a GPIO high/low to restart, say Y and
94371bb20dSDavid Riley	  create a binding in your devicetree.
95371bb20dSDavid Riley
964a9b3737SHaojian Zhuangconfig POWER_RESET_HISI
974a9b3737SHaojian Zhuang	bool "Hisilicon power-off driver"
9850fa8617SLinus Torvalds	depends on ARCH_HISI
994a9b3737SHaojian Zhuang	help
1004a9b3737SHaojian Zhuang	  Reboot support for Hisilicon boards.
1014a9b3737SHaojian Zhuang
10278be3176SAbhimanyu Kapurconfig POWER_RESET_MSM
10378be3176SAbhimanyu Kapur	bool "Qualcomm MSM power-off driver"
1046ca4f460SMaxime Ripard	depends on ARCH_QCOM
10578be3176SAbhimanyu Kapur	help
10678be3176SAbhimanyu Kapur	  Power off and restart support for Qualcomm boards.
10778be3176SAbhimanyu Kapur
108e6a578e2SVinod Koulconfig POWER_RESET_QCOM_PON
109e6a578e2SVinod Koul	tristate "Qualcomm power-on driver"
110e6a578e2SVinod Koul	depends on ARCH_QCOM
111e6a578e2SVinod Koul	depends on MFD_SPMI_PMIC
112e6a578e2SVinod Koul	select REBOOT_MODE
113e6a578e2SVinod Koul	help
114e6a578e2SVinod Koul	  Power On support for Qualcomm boards.
115e6a578e2SVinod Koul	  If you have a Qualcomm platform and need support for
116e6a578e2SVinod Koul	  power-on and reboot reason, Say Y.
117e6a578e2SVinod Koul	  If unsure, Say N.
118e6a578e2SVinod Koul
1196ab739bcSAlexandre Belloniconfig POWER_RESET_OCELOT_RESET
1206ab739bcSAlexandre Belloni	bool "Microsemi Ocelot reset driver"
1216ab739bcSAlexandre Belloni	depends on MSCC_OCELOT || COMPILE_TEST
1226ab739bcSAlexandre Belloni	select MFD_SYSCON
1236ab739bcSAlexandre Belloni	help
1246ab739bcSAlexandre Belloni	  This driver supports restart for Microsemi Ocelot SoC.
1256ab739bcSAlexandre Belloni
12629676833SPaul Burtonconfig POWER_RESET_PIIX4_POWEROFF
12729676833SPaul Burton	tristate "Intel PIIX4 power-off driver"
12829676833SPaul Burton	depends on PCI
12929676833SPaul Burton	depends on MIPS || COMPILE_TEST
13029676833SPaul Burton	help
13129676833SPaul Burton	  This driver supports powering off a system using the Intel PIIX4
13229676833SPaul Burton	  southbridge, for example the MIPS Malta development board. The
13329676833SPaul Burton	  southbridge SOff state is entered in response to a request to
13429676833SPaul Burton	  power off the system.
13529676833SPaul Burton
1366647156cSRené Mollconfig POWER_RESET_LTC2952
1376647156cSRené Moll	bool "LTC2952 PowerPath power-off driver"
13850fa8617SLinus Torvalds	depends on OF_GPIO
1396647156cSRené Moll	help
1406647156cSRené Moll	  This driver supports an external powerdown trigger and board power
1416647156cSRené Moll	  down via the LTC2952. Bindings are made in the device tree.
1426647156cSRené Moll
143d28c74c1SJosef Friedlconfig POWER_RESET_MT6323
144d28c74c1SJosef Friedl	bool "MediaTek MT6323 power-off driver"
145d28c74c1SJosef Friedl	depends on MFD_MT6397
146d28c74c1SJosef Friedl	help
147d28c74c1SJosef Friedl	  The power-off driver is responsible for externally shutdown down
148d28c74c1SJosef Friedl	  the power of a remote MediaTek SoC MT6323 is connected to through
149d28c74c1SJosef Friedl	  controlling a tiny circuit BBPU inside MT6323 RTC.
150d28c74c1SJosef Friedl
151d28c74c1SJosef Friedl	  Say Y if you have a board where MT6323 could be found.
152d28c74c1SJosef Friedl
153e8fc721aSAndrew Lunnconfig POWER_RESET_QNAP
154e8fc721aSAndrew Lunn	bool "QNAP power-off driver"
1556ca4f460SMaxime Ripard	depends on OF_GPIO && PLAT_ORION
156e8fc721aSAndrew Lunn	help
157e8fc721aSAndrew Lunn	  This driver supports turning off QNAP NAS devices by sending
158e8fc721aSAndrew Lunn	  commands to the microcontroller which controls the main power.
159e8fc721aSAndrew Lunn
160e8fc721aSAndrew Lunn	  Say Y if you have a QNAP NAS.
161ffd8f9a7SAndrew Lunn
162ffd8f9a7SAndrew Lunnconfig POWER_RESET_RESTART
163ffd8f9a7SAndrew Lunn	bool "Restart power-off driver"
164ffd8f9a7SAndrew Lunn	help
165ffd8f9a7SAndrew Lunn	  Some boards don't actually have the ability to power off.
166ffd8f9a7SAndrew Lunn	  Instead they restart, and u-boot holds the SoC until the
167ffd8f9a7SAndrew Lunn	  user presses a key. u-boot then boots into Linux.
1682655f51dSCatalin Marinas
169f0745f36SLee Jonesconfig POWER_RESET_ST
1707fa650bcSGuenter Roeck	bool "ST restart driver"
17150fa8617SLinus Torvalds	depends on ARCH_STI
172f0745f36SLee Jones	help
1737fa650bcSGuenter Roeck	  Reset support for STMicroelectronics boards.
174f0745f36SLee Jones
1750e545f57SLinus Walleijconfig POWER_RESET_VERSATILE
1760e545f57SLinus Walleij	bool "ARM Versatile family reboot driver"
1770e545f57SLinus Walleij	depends on ARM
1780e545f57SLinus Walleij	depends on MFD_SYSCON
1790e545f57SLinus Walleij	depends on OF
1800e545f57SLinus Walleij	help
1810e545f57SLinus Walleij	  Power off and restart support for ARM Versatile family of
1820e545f57SLinus Walleij	  reference boards.
1830e545f57SLinus Walleij
1842655f51dSCatalin Marinasconfig POWER_RESET_VEXPRESS
185b52eafcdSPawel Moll	bool "ARM Versatile Express power-off and reset driver"
186b52eafcdSPawel Moll	depends on ARM || ARM64
187d0c7dc17SAnders Roxell	depends on VEXPRESS_CONFIG=y
1882655f51dSCatalin Marinas	help
1892655f51dSCatalin Marinas	  Power off and reset support for the ARM Ltd. Versatile
1902655f51dSCatalin Marinas	  Express boards.
19167778e0eSLoc Ho
19267778e0eSLoc Hoconfig POWER_RESET_XGENE
19367778e0eSLoc Ho	bool "APM SoC X-Gene reset driver"
19467778e0eSLoc Ho	depends on ARM64
19567778e0eSLoc Ho	help
19667778e0eSLoc Ho	  Reboot support for the APM SoC X-Gene Eval boards.
197a3e01e80SIvan Khoronzhuk
198a3e01e80SIvan Khoronzhukconfig POWER_RESET_KEYSTONE
199a3e01e80SIvan Khoronzhuk	bool "Keystone reset driver"
200e771e0a1SKrzysztof Kozlowski	depends on ARCH_KEYSTONE || COMPILE_TEST
201e771e0a1SKrzysztof Kozlowski	depends on HAS_IOMEM
202a3e01e80SIvan Khoronzhuk	select MFD_SYSCON
203a3e01e80SIvan Khoronzhuk	help
204a3e01e80SIvan Khoronzhuk	  Reboot support for the KEYSTONE SoCs.
205a3e01e80SIvan Khoronzhuk
20609fb07bcSFeng Kanconfig POWER_RESET_SYSCON
20709fb07bcSFeng Kan	bool "Generic SYSCON regmap reset driver"
20850fa8617SLinus Torvalds	depends on OF
2094f4bfe6bSRichard Weinberger	depends on HAS_IOMEM
210afaebbdbSFeng Kan	select MFD_SYSCON
21109fb07bcSFeng Kan	help
21209fb07bcSFeng Kan	  Reboot support for generic SYSCON mapped register reset.
21350fa8617SLinus Torvalds
2148a577608SMoritz Fischerconfig POWER_RESET_SYSCON_POWEROFF
2158a577608SMoritz Fischer	bool "Generic SYSCON regmap poweroff driver"
2168a577608SMoritz Fischer	depends on OF
2174f4bfe6bSRichard Weinberger	depends on HAS_IOMEM
2188a577608SMoritz Fischer	select MFD_SYSCON
2198a577608SMoritz Fischer	help
2208a577608SMoritz Fischer	  Poweroff support for generic SYSCON mapped register poweroff.
2218a577608SMoritz Fischer
222fa0f8d67SGeert Uytterhoevenconfig POWER_RESET_RMOBILE
223fa0f8d67SGeert Uytterhoeven	tristate "Renesas R-Mobile reset driver"
224fa0f8d67SGeert Uytterhoeven	depends on ARCH_RMOBILE || COMPILE_TEST
225039ab50bSRichard Weinberger	depends on HAS_IOMEM
226fa0f8d67SGeert Uytterhoeven	help
227fa0f8d67SGeert Uytterhoeven	  Reboot support for Renesas R-Mobile and SH-Mobile SoCs.
228fa0f8d67SGeert Uytterhoeven
229dd9f1486SJun Nieconfig POWER_RESET_ZX
230dd9f1486SJun Nie	tristate "ZTE SoCs reset driver"
231dd9f1486SJun Nie	depends on ARCH_ZX || COMPILE_TEST
232dd9f1486SJun Nie	depends on HAS_IOMEM
233dd9f1486SJun Nie	help
234dd9f1486SJun Nie	  Reboot support for ZTE SoCs.
235dd9f1486SJun Nie
2364fcd504eSAndy Yanconfig REBOOT_MODE
2374fcd504eSAndy Yan	tristate
2384fcd504eSAndy Yan
2394fcd504eSAndy Yanconfig SYSCON_REBOOT_MODE
2404fcd504eSAndy Yan	tristate "Generic SYSCON regmap reboot mode driver"
2414fcd504eSAndy Yan	depends on OF
2427a4947cfSAndy Yan	depends on MFD_SYSCON
2434fcd504eSAndy Yan	select REBOOT_MODE
2444fcd504eSAndy Yan	help
2454fcd504eSAndy Yan	  Say y here will enable reboot mode driver. This will
2464fcd504eSAndy Yan	  get reboot mode arguments and store it in SYSCON mapped
2474fcd504eSAndy Yan	  register, then the bootloader can read it to take different
2484fcd504eSAndy Yan	  action according to the mode.
2494fcd504eSAndy Yan
2503f5faf3aSBaolin Wangconfig POWER_RESET_SC27XX
251f78c55e3SBaolin Wang	tristate "Spreadtrum SC27xx PMIC power-off driver"
2523f5faf3aSBaolin Wang	depends on MFD_SC27XX_PMIC || COMPILE_TEST
2533f5faf3aSBaolin Wang	help
2543f5faf3aSBaolin Wang	  This driver supports powering off a system through
2553f5faf3aSBaolin Wang	  Spreadtrum SC27xx series PMICs. The SC27xx series
2563f5faf3aSBaolin Wang	  PMICs includes the SC2720, SC2721, SC2723, SC2730
2573f5faf3aSBaolin Wang	  and SC2731 chips.
2583f5faf3aSBaolin Wang
2597a78a7f7SHan Nandorconfig NVMEM_REBOOT_MODE
2607a78a7f7SHan Nandor	tristate "Generic NVMEM reboot mode driver"
261caa2b557SArnd Bergmann	depends on OF
2627a78a7f7SHan Nandor	select REBOOT_MODE
2637a78a7f7SHan Nandor	help
2647a78a7f7SHan Nandor	  Say y here will enable reboot mode driver. This will
2657a78a7f7SHan Nandor	  get reboot mode arguments and store it in a NVMEM cell,
2667a78a7f7SHan Nandor	  then the bootloader can read it and take different
2677a78a7f7SHan Nandor	  action according to the mode.
2687a78a7f7SHan Nandor
2696ca4f460SMaxime Ripardendif
27050fa8617SLinus Torvalds
271