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 1876ca4f460SMaxime Ripard depends on VEXPRESS_CONFIG 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 2513f5faf3aSBaolin Wang bool "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