xref: /openbmc/linux/drivers/power/reset/Kconfig (revision 3235d130)
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
42*3235d130SCristian Ciocalteaconfig POWER_RESET_ATC260X
43*3235d130SCristian Ciocaltea	tristate "Actions Semi ATC260x PMIC power-off driver"
44*3235d130SCristian Ciocaltea	depends on MFD_ATC260X
45*3235d130SCristian Ciocaltea	help
46*3235d130SCristian Ciocaltea	  This driver provides power-off and restart support for a system
47*3235d130SCristian Ciocaltea	  through Actions Semi ATC260x series PMICs.
48*3235d130SCristian Ciocaltea
494a315e34SAnders Bergconfig POWER_RESET_AXXIA
504a315e34SAnders Berg	bool "LSI Axxia reset driver"
516ca4f460SMaxime Ripard	depends on ARCH_AXXIA
524a315e34SAnders Berg	help
534a315e34SAnders Berg	  This driver supports restart for Axxia SoC.
544a315e34SAnders Berg
554a315e34SAnders Berg	  Say Y if you have an Axxia family SoC.
564a315e34SAnders Berg
57783cb948SChris Brandconfig POWER_RESET_BRCMKONA
58783cb948SChris Brand	bool "Broadcom Kona reset driver"
59783cb948SChris Brand	depends on ARM || COMPILE_TEST
60783cb948SChris Brand	default ARCH_BCM_MOBILE
61783cb948SChris Brand	help
62783cb948SChris Brand	  This driver provides restart support for Broadcom Kona chips.
63783cb948SChris Brand
64783cb948SChris Brand	  Say Y here if you have a Broadcom Kona-based board and you wish
65783cb948SChris Brand	  to have restart support.
66783cb948SChris Brand
67030494e7SMarc Carinoconfig POWER_RESET_BRCMSTB
684f5fd640SKevin Cernekee	bool "Broadcom STB reset driver"
6912031fcaSFlorian Fainelli	depends on ARM || ARM64 || MIPS || COMPILE_TEST
700a73125dSFlorian Fainelli	depends on MFD_SYSCON
711d2495e8SFlorian Fainelli	default ARCH_BRCMSTB || BMIPS_GENERIC
72030494e7SMarc Carino	help
734f5fd640SKevin Cernekee	  This driver provides restart support for Broadcom STB boards.
74030494e7SMarc Carino
754f5fd640SKevin Cernekee	  Say Y here if you have a Broadcom STB board and you wish
76030494e7SMarc Carino	  to have restart support.
77030494e7SMarc Carino
78f7a388d6SLinus Walleijconfig POWER_RESET_GEMINI_POWEROFF
79f7a388d6SLinus Walleij	bool "Cortina Gemini power-off driver"
80f7a388d6SLinus Walleij	depends on ARCH_GEMINI || COMPILE_TEST
81f7a388d6SLinus Walleij	depends on OF && HAS_IOMEM
82f7a388d6SLinus Walleij	default ARCH_GEMINI
83f7a388d6SLinus Walleij	help
84f7a388d6SLinus Walleij	  This driver supports turning off the Cortina Gemini SoC.
85f7a388d6SLinus Walleij	  Select this if you're building a kernel with Gemini SoC support.
86f7a388d6SLinus Walleij
8796ff0f5cSJamie Lentinconfig POWER_RESET_GPIO
8896ff0f5cSJamie Lentin	bool "GPIO power-off driver"
896ca4f460SMaxime Ripard	depends on OF_GPIO
9096ff0f5cSJamie Lentin	help
9196ff0f5cSJamie Lentin	  This driver supports turning off your board via a GPIO line.
9296ff0f5cSJamie Lentin	  If your board needs a GPIO high/low to power down, say Y and
9396ff0f5cSJamie Lentin	  create a binding in your devicetree.
94e8fc721aSAndrew Lunn
95371bb20dSDavid Rileyconfig POWER_RESET_GPIO_RESTART
96371bb20dSDavid Riley	bool "GPIO restart driver"
9750fa8617SLinus Torvalds	depends on OF_GPIO
98371bb20dSDavid Riley	help
99371bb20dSDavid Riley	  This driver supports restarting your board via a GPIO line.
100371bb20dSDavid Riley	  If your board needs a GPIO high/low to restart, say Y and
101371bb20dSDavid Riley	  create a binding in your devicetree.
102371bb20dSDavid Riley
1034a9b3737SHaojian Zhuangconfig POWER_RESET_HISI
1044a9b3737SHaojian Zhuang	bool "Hisilicon power-off driver"
10550fa8617SLinus Torvalds	depends on ARCH_HISI
1064a9b3737SHaojian Zhuang	help
1074a9b3737SHaojian Zhuang	  Reboot support for Hisilicon boards.
1084a9b3737SHaojian Zhuang
109a7f79f99SDaniel González Cabanelasconfig POWER_RESET_LINKSTATION
110a7f79f99SDaniel González Cabanelas	tristate "Buffalo LinkStation power-off driver"
111a7f79f99SDaniel González Cabanelas	depends on ARCH_MVEBU || COMPILE_TEST
112a7f79f99SDaniel González Cabanelas	depends on OF_MDIO && PHYLIB
113a7f79f99SDaniel González Cabanelas	help
114a7f79f99SDaniel González Cabanelas	  This driver supports turning off some Buffalo LinkStations by
115a7f79f99SDaniel González Cabanelas	  setting an output pin at the ethernet PHY to the correct state.
116a7f79f99SDaniel González Cabanelas	  It also makes the device compatible with the WoL function.
117a7f79f99SDaniel González Cabanelas
118a7f79f99SDaniel González Cabanelas	  Say Y here if you have a Buffalo LinkStation LS421D/E.
119a7f79f99SDaniel González Cabanelas
12078be3176SAbhimanyu Kapurconfig POWER_RESET_MSM
12178be3176SAbhimanyu Kapur	bool "Qualcomm MSM power-off driver"
1226ca4f460SMaxime Ripard	depends on ARCH_QCOM
12378be3176SAbhimanyu Kapur	help
12478be3176SAbhimanyu Kapur	  Power off and restart support for Qualcomm boards.
12578be3176SAbhimanyu Kapur
126e6a578e2SVinod Koulconfig POWER_RESET_QCOM_PON
127e6a578e2SVinod Koul	tristate "Qualcomm power-on driver"
128e6a578e2SVinod Koul	depends on ARCH_QCOM
129e6a578e2SVinod Koul	depends on MFD_SPMI_PMIC
130e6a578e2SVinod Koul	select REBOOT_MODE
131e6a578e2SVinod Koul	help
132e6a578e2SVinod Koul	  Power On support for Qualcomm boards.
133e6a578e2SVinod Koul	  If you have a Qualcomm platform and need support for
134e6a578e2SVinod Koul	  power-on and reboot reason, Say Y.
135e6a578e2SVinod Koul	  If unsure, Say N.
136e6a578e2SVinod Koul
1376ab739bcSAlexandre Belloniconfig POWER_RESET_OCELOT_RESET
1386ab739bcSAlexandre Belloni	bool "Microsemi Ocelot reset driver"
1397007fab4SGeert Uytterhoeven	depends on MSCC_OCELOT || ARCH_SPARX5 || COMPILE_TEST
1406ab739bcSAlexandre Belloni	select MFD_SYSCON
1416ab739bcSAlexandre Belloni	help
142ec871696SLars Povlsen	  This driver supports restart for Microsemi Ocelot SoC and similar.
1436ab739bcSAlexandre Belloni
1440edb259cSDaniel Golleconfig POWER_RESET_OXNAS
1450edb259cSDaniel Golle	bool "OXNAS SoC restart driver"
1460edb259cSDaniel Golle	depends on ARCH_OXNAS
1470edb259cSDaniel Golle	default MACH_OX820
1480edb259cSDaniel Golle	help
1490edb259cSDaniel Golle	  Restart support for OXNAS/PLXTECH OX820 SoC.
1500edb259cSDaniel Golle
15129676833SPaul Burtonconfig POWER_RESET_PIIX4_POWEROFF
15229676833SPaul Burton	tristate "Intel PIIX4 power-off driver"
15329676833SPaul Burton	depends on PCI
15429676833SPaul Burton	depends on MIPS || COMPILE_TEST
15529676833SPaul Burton	help
15629676833SPaul Burton	  This driver supports powering off a system using the Intel PIIX4
15729676833SPaul Burton	  southbridge, for example the MIPS Malta development board. The
15829676833SPaul Burton	  southbridge SOff state is entered in response to a request to
15929676833SPaul Burton	  power off the system.
16029676833SPaul Burton
1616647156cSRené Mollconfig POWER_RESET_LTC2952
1626647156cSRené Moll	bool "LTC2952 PowerPath power-off driver"
16350fa8617SLinus Torvalds	depends on OF_GPIO
1646647156cSRené Moll	help
1656647156cSRené Moll	  This driver supports an external powerdown trigger and board power
1666647156cSRené Moll	  down via the LTC2952. Bindings are made in the device tree.
1676647156cSRené Moll
168d28c74c1SJosef Friedlconfig POWER_RESET_MT6323
169d28c74c1SJosef Friedl	bool "MediaTek MT6323 power-off driver"
170d28c74c1SJosef Friedl	depends on MFD_MT6397
171d28c74c1SJosef Friedl	help
172d28c74c1SJosef Friedl	  The power-off driver is responsible for externally shutdown down
173d28c74c1SJosef Friedl	  the power of a remote MediaTek SoC MT6323 is connected to through
174d28c74c1SJosef Friedl	  controlling a tiny circuit BBPU inside MT6323 RTC.
175d28c74c1SJosef Friedl
176d28c74c1SJosef Friedl	  Say Y if you have a board where MT6323 could be found.
177d28c74c1SJosef Friedl
178e8fc721aSAndrew Lunnconfig POWER_RESET_QNAP
179e8fc721aSAndrew Lunn	bool "QNAP power-off driver"
1806ca4f460SMaxime Ripard	depends on OF_GPIO && PLAT_ORION
181e8fc721aSAndrew Lunn	help
182e8fc721aSAndrew Lunn	  This driver supports turning off QNAP NAS devices by sending
183e8fc721aSAndrew Lunn	  commands to the microcontroller which controls the main power.
184e8fc721aSAndrew Lunn
185e8fc721aSAndrew Lunn	  Say Y if you have a QNAP NAS.
186ffd8f9a7SAndrew Lunn
187ec66096bSMichael Kleinconfig POWER_RESET_REGULATOR
188ec66096bSMichael Klein	bool "Regulator subsystem power-off driver"
189ec66096bSMichael Klein	depends on OF && REGULATOR
190ec66096bSMichael Klein	help
191ec66096bSMichael Klein	  This driver supports turning off your board by disabling a
192ec66096bSMichael Klein	  power regulator defined in the devicetree.
193ec66096bSMichael Klein
194ffd8f9a7SAndrew Lunnconfig POWER_RESET_RESTART
195ffd8f9a7SAndrew Lunn	bool "Restart power-off driver"
196ffd8f9a7SAndrew Lunn	help
197ffd8f9a7SAndrew Lunn	  Some boards don't actually have the ability to power off.
198ffd8f9a7SAndrew Lunn	  Instead they restart, and u-boot holds the SoC until the
199ffd8f9a7SAndrew Lunn	  user presses a key. u-boot then boots into Linux.
2002655f51dSCatalin Marinas
201f0745f36SLee Jonesconfig POWER_RESET_ST
2027fa650bcSGuenter Roeck	bool "ST restart driver"
20350fa8617SLinus Torvalds	depends on ARCH_STI
204f0745f36SLee Jones	help
2057fa650bcSGuenter Roeck	  Reset support for STMicroelectronics boards.
206f0745f36SLee Jones
2070e545f57SLinus Walleijconfig POWER_RESET_VERSATILE
2080e545f57SLinus Walleij	bool "ARM Versatile family reboot driver"
2090e545f57SLinus Walleij	depends on ARM
2100e545f57SLinus Walleij	depends on MFD_SYSCON
2110e545f57SLinus Walleij	depends on OF
2120e545f57SLinus Walleij	help
2130e545f57SLinus Walleij	  Power off and restart support for ARM Versatile family of
2140e545f57SLinus Walleij	  reference boards.
2150e545f57SLinus Walleij
2162655f51dSCatalin Marinasconfig POWER_RESET_VEXPRESS
217b52eafcdSPawel Moll	bool "ARM Versatile Express power-off and reset driver"
218b52eafcdSPawel Moll	depends on ARM || ARM64
219d0c7dc17SAnders Roxell	depends on VEXPRESS_CONFIG=y
2202655f51dSCatalin Marinas	help
2212655f51dSCatalin Marinas	  Power off and reset support for the ARM Ltd. Versatile
2222655f51dSCatalin Marinas	  Express boards.
22367778e0eSLoc Ho
22467778e0eSLoc Hoconfig POWER_RESET_XGENE
22567778e0eSLoc Ho	bool "APM SoC X-Gene reset driver"
22667778e0eSLoc Ho	depends on ARM64
22767778e0eSLoc Ho	help
22867778e0eSLoc Ho	  Reboot support for the APM SoC X-Gene Eval boards.
229a3e01e80SIvan Khoronzhuk
230a3e01e80SIvan Khoronzhukconfig POWER_RESET_KEYSTONE
231a3e01e80SIvan Khoronzhuk	bool "Keystone reset driver"
232e771e0a1SKrzysztof Kozlowski	depends on ARCH_KEYSTONE || COMPILE_TEST
233e771e0a1SKrzysztof Kozlowski	depends on HAS_IOMEM
234a3e01e80SIvan Khoronzhuk	select MFD_SYSCON
235a3e01e80SIvan Khoronzhuk	help
236a3e01e80SIvan Khoronzhuk	  Reboot support for the KEYSTONE SoCs.
237a3e01e80SIvan Khoronzhuk
23809fb07bcSFeng Kanconfig POWER_RESET_SYSCON
23909fb07bcSFeng Kan	bool "Generic SYSCON regmap reset driver"
24050fa8617SLinus Torvalds	depends on OF
2414f4bfe6bSRichard Weinberger	depends on HAS_IOMEM
242afaebbdbSFeng Kan	select MFD_SYSCON
24309fb07bcSFeng Kan	help
24409fb07bcSFeng Kan	  Reboot support for generic SYSCON mapped register reset.
24550fa8617SLinus Torvalds
2468a577608SMoritz Fischerconfig POWER_RESET_SYSCON_POWEROFF
2478a577608SMoritz Fischer	bool "Generic SYSCON regmap poweroff driver"
2488a577608SMoritz Fischer	depends on OF
2494f4bfe6bSRichard Weinberger	depends on HAS_IOMEM
2508a577608SMoritz Fischer	select MFD_SYSCON
2518a577608SMoritz Fischer	help
2528a577608SMoritz Fischer	  Poweroff support for generic SYSCON mapped register poweroff.
2538a577608SMoritz Fischer
254fa0f8d67SGeert Uytterhoevenconfig POWER_RESET_RMOBILE
255fa0f8d67SGeert Uytterhoeven	tristate "Renesas R-Mobile reset driver"
256fa0f8d67SGeert Uytterhoeven	depends on ARCH_RMOBILE || COMPILE_TEST
257039ab50bSRichard Weinberger	depends on HAS_IOMEM
258fa0f8d67SGeert Uytterhoeven	help
259fa0f8d67SGeert Uytterhoeven	  Reboot support for Renesas R-Mobile and SH-Mobile SoCs.
260fa0f8d67SGeert Uytterhoeven
261dd9f1486SJun Nieconfig POWER_RESET_ZX
262dd9f1486SJun Nie	tristate "ZTE SoCs reset driver"
263dd9f1486SJun Nie	depends on ARCH_ZX || COMPILE_TEST
264dd9f1486SJun Nie	depends on HAS_IOMEM
265dd9f1486SJun Nie	help
266dd9f1486SJun Nie	  Reboot support for ZTE SoCs.
267dd9f1486SJun Nie
2684fcd504eSAndy Yanconfig REBOOT_MODE
2694fcd504eSAndy Yan	tristate
2704fcd504eSAndy Yan
2714fcd504eSAndy Yanconfig SYSCON_REBOOT_MODE
2724fcd504eSAndy Yan	tristate "Generic SYSCON regmap reboot mode driver"
2734fcd504eSAndy Yan	depends on OF
2747a4947cfSAndy Yan	depends on MFD_SYSCON
2754fcd504eSAndy Yan	select REBOOT_MODE
2764fcd504eSAndy Yan	help
2774fcd504eSAndy Yan	  Say y here will enable reboot mode driver. This will
2784fcd504eSAndy Yan	  get reboot mode arguments and store it in SYSCON mapped
2794fcd504eSAndy Yan	  register, then the bootloader can read it to take different
2804fcd504eSAndy Yan	  action according to the mode.
2814fcd504eSAndy Yan
2823f5faf3aSBaolin Wangconfig POWER_RESET_SC27XX
283f78c55e3SBaolin Wang	tristate "Spreadtrum SC27xx PMIC power-off driver"
2843f5faf3aSBaolin Wang	depends on MFD_SC27XX_PMIC || COMPILE_TEST
2853f5faf3aSBaolin Wang	help
2863f5faf3aSBaolin Wang	  This driver supports powering off a system through
2873f5faf3aSBaolin Wang	  Spreadtrum SC27xx series PMICs. The SC27xx series
2883f5faf3aSBaolin Wang	  PMICs includes the SC2720, SC2721, SC2723, SC2730
2893f5faf3aSBaolin Wang	  and SC2731 chips.
2903f5faf3aSBaolin Wang
2917a78a7f7SHan Nandorconfig NVMEM_REBOOT_MODE
2927a78a7f7SHan Nandor	tristate "Generic NVMEM reboot mode driver"
293caa2b557SArnd Bergmann	depends on OF
2947a78a7f7SHan Nandor	select REBOOT_MODE
2957a78a7f7SHan Nandor	help
2967a78a7f7SHan Nandor	  Say y here will enable reboot mode driver. This will
2977a78a7f7SHan Nandor	  get reboot mode arguments and store it in a NVMEM cell,
2987a78a7f7SHan Nandor	  then the bootloader can read it and take different
2997a78a7f7SHan Nandor	  action according to the mode.
3007a78a7f7SHan Nandor
3016ca4f460SMaxime Ripardendif
302