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 1260edb259cSDaniel Golleconfig POWER_RESET_OXNAS 1270edb259cSDaniel Golle bool "OXNAS SoC restart driver" 1280edb259cSDaniel Golle depends on ARCH_OXNAS 1290edb259cSDaniel Golle default MACH_OX820 1300edb259cSDaniel Golle help 1310edb259cSDaniel Golle Restart support for OXNAS/PLXTECH OX820 SoC. 1320edb259cSDaniel Golle 13329676833SPaul Burtonconfig POWER_RESET_PIIX4_POWEROFF 13429676833SPaul Burton tristate "Intel PIIX4 power-off driver" 13529676833SPaul Burton depends on PCI 13629676833SPaul Burton depends on MIPS || COMPILE_TEST 13729676833SPaul Burton help 13829676833SPaul Burton This driver supports powering off a system using the Intel PIIX4 13929676833SPaul Burton southbridge, for example the MIPS Malta development board. The 14029676833SPaul Burton southbridge SOff state is entered in response to a request to 14129676833SPaul Burton power off the system. 14229676833SPaul Burton 1436647156cSRené Mollconfig POWER_RESET_LTC2952 1446647156cSRené Moll bool "LTC2952 PowerPath power-off driver" 14550fa8617SLinus Torvalds depends on OF_GPIO 1466647156cSRené Moll help 1476647156cSRené Moll This driver supports an external powerdown trigger and board power 1486647156cSRené Moll down via the LTC2952. Bindings are made in the device tree. 1496647156cSRené Moll 150d28c74c1SJosef Friedlconfig POWER_RESET_MT6323 151d28c74c1SJosef Friedl bool "MediaTek MT6323 power-off driver" 152d28c74c1SJosef Friedl depends on MFD_MT6397 153d28c74c1SJosef Friedl help 154d28c74c1SJosef Friedl The power-off driver is responsible for externally shutdown down 155d28c74c1SJosef Friedl the power of a remote MediaTek SoC MT6323 is connected to through 156d28c74c1SJosef Friedl controlling a tiny circuit BBPU inside MT6323 RTC. 157d28c74c1SJosef Friedl 158d28c74c1SJosef Friedl Say Y if you have a board where MT6323 could be found. 159d28c74c1SJosef Friedl 160e8fc721aSAndrew Lunnconfig POWER_RESET_QNAP 161e8fc721aSAndrew Lunn bool "QNAP power-off driver" 1626ca4f460SMaxime Ripard depends on OF_GPIO && PLAT_ORION 163e8fc721aSAndrew Lunn help 164e8fc721aSAndrew Lunn This driver supports turning off QNAP NAS devices by sending 165e8fc721aSAndrew Lunn commands to the microcontroller which controls the main power. 166e8fc721aSAndrew Lunn 167e8fc721aSAndrew Lunn Say Y if you have a QNAP NAS. 168ffd8f9a7SAndrew Lunn 169ffd8f9a7SAndrew Lunnconfig POWER_RESET_RESTART 170ffd8f9a7SAndrew Lunn bool "Restart power-off driver" 171ffd8f9a7SAndrew Lunn help 172ffd8f9a7SAndrew Lunn Some boards don't actually have the ability to power off. 173ffd8f9a7SAndrew Lunn Instead they restart, and u-boot holds the SoC until the 174ffd8f9a7SAndrew Lunn user presses a key. u-boot then boots into Linux. 1752655f51dSCatalin Marinas 176f0745f36SLee Jonesconfig POWER_RESET_ST 1777fa650bcSGuenter Roeck bool "ST restart driver" 17850fa8617SLinus Torvalds depends on ARCH_STI 179f0745f36SLee Jones help 1807fa650bcSGuenter Roeck Reset support for STMicroelectronics boards. 181f0745f36SLee Jones 1820e545f57SLinus Walleijconfig POWER_RESET_VERSATILE 1830e545f57SLinus Walleij bool "ARM Versatile family reboot driver" 1840e545f57SLinus Walleij depends on ARM 1850e545f57SLinus Walleij depends on MFD_SYSCON 1860e545f57SLinus Walleij depends on OF 1870e545f57SLinus Walleij help 1880e545f57SLinus Walleij Power off and restart support for ARM Versatile family of 1890e545f57SLinus Walleij reference boards. 1900e545f57SLinus Walleij 1912655f51dSCatalin Marinasconfig POWER_RESET_VEXPRESS 192b52eafcdSPawel Moll bool "ARM Versatile Express power-off and reset driver" 193b52eafcdSPawel Moll depends on ARM || ARM64 1946ca4f460SMaxime Ripard depends on VEXPRESS_CONFIG 1952655f51dSCatalin Marinas help 1962655f51dSCatalin Marinas Power off and reset support for the ARM Ltd. Versatile 1972655f51dSCatalin Marinas Express boards. 19867778e0eSLoc Ho 19967778e0eSLoc Hoconfig POWER_RESET_XGENE 20067778e0eSLoc Ho bool "APM SoC X-Gene reset driver" 20167778e0eSLoc Ho depends on ARM64 20267778e0eSLoc Ho help 20367778e0eSLoc Ho Reboot support for the APM SoC X-Gene Eval boards. 204a3e01e80SIvan Khoronzhuk 205a3e01e80SIvan Khoronzhukconfig POWER_RESET_KEYSTONE 206a3e01e80SIvan Khoronzhuk bool "Keystone reset driver" 207e771e0a1SKrzysztof Kozlowski depends on ARCH_KEYSTONE || COMPILE_TEST 208e771e0a1SKrzysztof Kozlowski depends on HAS_IOMEM 209a3e01e80SIvan Khoronzhuk select MFD_SYSCON 210a3e01e80SIvan Khoronzhuk help 211a3e01e80SIvan Khoronzhuk Reboot support for the KEYSTONE SoCs. 212a3e01e80SIvan Khoronzhuk 21309fb07bcSFeng Kanconfig POWER_RESET_SYSCON 21409fb07bcSFeng Kan bool "Generic SYSCON regmap reset driver" 21550fa8617SLinus Torvalds depends on OF 2164f4bfe6bSRichard Weinberger depends on HAS_IOMEM 217afaebbdbSFeng Kan select MFD_SYSCON 21809fb07bcSFeng Kan help 21909fb07bcSFeng Kan Reboot support for generic SYSCON mapped register reset. 22050fa8617SLinus Torvalds 2218a577608SMoritz Fischerconfig POWER_RESET_SYSCON_POWEROFF 2228a577608SMoritz Fischer bool "Generic SYSCON regmap poweroff driver" 2238a577608SMoritz Fischer depends on OF 2244f4bfe6bSRichard Weinberger depends on HAS_IOMEM 2258a577608SMoritz Fischer select MFD_SYSCON 2268a577608SMoritz Fischer help 2278a577608SMoritz Fischer Poweroff support for generic SYSCON mapped register poweroff. 2288a577608SMoritz Fischer 229fa0f8d67SGeert Uytterhoevenconfig POWER_RESET_RMOBILE 230fa0f8d67SGeert Uytterhoeven tristate "Renesas R-Mobile reset driver" 231fa0f8d67SGeert Uytterhoeven depends on ARCH_RMOBILE || COMPILE_TEST 232039ab50bSRichard Weinberger depends on HAS_IOMEM 233fa0f8d67SGeert Uytterhoeven help 234fa0f8d67SGeert Uytterhoeven Reboot support for Renesas R-Mobile and SH-Mobile SoCs. 235fa0f8d67SGeert Uytterhoeven 236dd9f1486SJun Nieconfig POWER_RESET_ZX 237dd9f1486SJun Nie tristate "ZTE SoCs reset driver" 238dd9f1486SJun Nie depends on ARCH_ZX || COMPILE_TEST 239dd9f1486SJun Nie depends on HAS_IOMEM 240dd9f1486SJun Nie help 241dd9f1486SJun Nie Reboot support for ZTE SoCs. 242dd9f1486SJun Nie 2434fcd504eSAndy Yanconfig REBOOT_MODE 2444fcd504eSAndy Yan tristate 2454fcd504eSAndy Yan 2464fcd504eSAndy Yanconfig SYSCON_REBOOT_MODE 2474fcd504eSAndy Yan tristate "Generic SYSCON regmap reboot mode driver" 2484fcd504eSAndy Yan depends on OF 2497a4947cfSAndy Yan depends on MFD_SYSCON 2504fcd504eSAndy Yan select REBOOT_MODE 2514fcd504eSAndy Yan help 2524fcd504eSAndy Yan Say y here will enable reboot mode driver. This will 2534fcd504eSAndy Yan get reboot mode arguments and store it in SYSCON mapped 2544fcd504eSAndy Yan register, then the bootloader can read it to take different 2554fcd504eSAndy Yan action according to the mode. 2564fcd504eSAndy Yan 2573f5faf3aSBaolin Wangconfig POWER_RESET_SC27XX 258f78c55e3SBaolin Wang tristate "Spreadtrum SC27xx PMIC power-off driver" 2593f5faf3aSBaolin Wang depends on MFD_SC27XX_PMIC || COMPILE_TEST 2603f5faf3aSBaolin Wang help 2613f5faf3aSBaolin Wang This driver supports powering off a system through 2623f5faf3aSBaolin Wang Spreadtrum SC27xx series PMICs. The SC27xx series 2633f5faf3aSBaolin Wang PMICs includes the SC2720, SC2721, SC2723, SC2730 2643f5faf3aSBaolin Wang and SC2731 chips. 2653f5faf3aSBaolin Wang 2667a78a7f7SHan Nandorconfig NVMEM_REBOOT_MODE 2677a78a7f7SHan Nandor tristate "Generic NVMEM reboot mode driver" 268caa2b557SArnd Bergmann depends on OF 2697a78a7f7SHan Nandor select REBOOT_MODE 2707a78a7f7SHan Nandor help 2717a78a7f7SHan Nandor Say y here will enable reboot mode driver. This will 2727a78a7f7SHan Nandor get reboot mode arguments and store it in a NVMEM cell, 2737a78a7f7SHan Nandor then the bootloader can read it and take different 2747a78a7f7SHan Nandor action according to the mode. 2757a78a7f7SHan Nandor 2766ca4f460SMaxime Ripardendif 27750fa8617SLinus Torvalds 278