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_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_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_AXXIA 43 bool "LSI Axxia reset driver" 44 depends on ARCH_AXXIA 45 help 46 This driver supports restart for Axxia SoC. 47 48 Say Y if you have an Axxia family SoC. 49 50config POWER_RESET_BRCMKONA 51 bool "Broadcom Kona reset driver" 52 depends on ARM || COMPILE_TEST 53 default ARCH_BCM_MOBILE 54 help 55 This driver provides restart support for Broadcom Kona chips. 56 57 Say Y here if you have a Broadcom Kona-based board and you wish 58 to have restart support. 59 60config POWER_RESET_BRCMSTB 61 bool "Broadcom STB reset driver" 62 depends on ARM || ARM64 || MIPS || COMPILE_TEST 63 depends on MFD_SYSCON 64 default ARCH_BRCMSTB || BMIPS_GENERIC 65 help 66 This driver provides restart support for Broadcom STB boards. 67 68 Say Y here if you have a Broadcom STB board and you wish 69 to have restart support. 70 71config POWER_RESET_GEMINI_POWEROFF 72 bool "Cortina Gemini power-off driver" 73 depends on ARCH_GEMINI || COMPILE_TEST 74 depends on OF && HAS_IOMEM 75 default ARCH_GEMINI 76 help 77 This driver supports turning off the Cortina Gemini SoC. 78 Select this if you're building a kernel with Gemini SoC support. 79 80config POWER_RESET_GPIO 81 bool "GPIO power-off driver" 82 depends on OF_GPIO 83 help 84 This driver supports turning off your board via a GPIO line. 85 If your board needs a GPIO high/low to power down, say Y and 86 create a binding in your devicetree. 87 88config POWER_RESET_GPIO_RESTART 89 bool "GPIO restart driver" 90 depends on OF_GPIO 91 help 92 This driver supports restarting your board via a GPIO line. 93 If your board needs a GPIO high/low to restart, say Y and 94 create a binding in your devicetree. 95 96config POWER_RESET_HISI 97 bool "Hisilicon power-off driver" 98 depends on ARCH_HISI 99 help 100 Reboot support for Hisilicon boards. 101 102config POWER_RESET_LINKSTATION 103 tristate "Buffalo LinkStation power-off driver" 104 depends on ARCH_MVEBU || COMPILE_TEST 105 depends on OF_MDIO && PHYLIB 106 help 107 This driver supports turning off some Buffalo LinkStations by 108 setting an output pin at the ethernet PHY to the correct state. 109 It also makes the device compatible with the WoL function. 110 111 Say Y here if you have a Buffalo LinkStation LS421D/E. 112 113config POWER_RESET_MSM 114 bool "Qualcomm MSM power-off driver" 115 depends on ARCH_QCOM 116 help 117 Power off and restart support for Qualcomm boards. 118 119config POWER_RESET_QCOM_PON 120 tristate "Qualcomm power-on driver" 121 depends on ARCH_QCOM 122 depends on MFD_SPMI_PMIC 123 select REBOOT_MODE 124 help 125 Power On support for Qualcomm boards. 126 If you have a Qualcomm platform and need support for 127 power-on and reboot reason, Say Y. 128 If unsure, Say N. 129 130config POWER_RESET_OCELOT_RESET 131 bool "Microsemi Ocelot reset driver" 132 depends on MSCC_OCELOT || ARCH_SPARX5 || COMPILE_TEST 133 select MFD_SYSCON 134 help 135 This driver supports restart for Microsemi Ocelot SoC and similar. 136 137config POWER_RESET_OXNAS 138 bool "OXNAS SoC restart driver" 139 depends on ARCH_OXNAS 140 default MACH_OX820 141 help 142 Restart support for OXNAS/PLXTECH OX820 SoC. 143 144config POWER_RESET_PIIX4_POWEROFF 145 tristate "Intel PIIX4 power-off driver" 146 depends on PCI 147 depends on MIPS || COMPILE_TEST 148 help 149 This driver supports powering off a system using the Intel PIIX4 150 southbridge, for example the MIPS Malta development board. The 151 southbridge SOff state is entered in response to a request to 152 power off the system. 153 154config POWER_RESET_LTC2952 155 bool "LTC2952 PowerPath power-off driver" 156 depends on OF_GPIO 157 help 158 This driver supports an external powerdown trigger and board power 159 down via the LTC2952. Bindings are made in the device tree. 160 161config POWER_RESET_MT6323 162 bool "MediaTek MT6323 power-off driver" 163 depends on MFD_MT6397 164 help 165 The power-off driver is responsible for externally shutdown down 166 the power of a remote MediaTek SoC MT6323 is connected to through 167 controlling a tiny circuit BBPU inside MT6323 RTC. 168 169 Say Y if you have a board where MT6323 could be found. 170 171config POWER_RESET_QNAP 172 bool "QNAP power-off driver" 173 depends on OF_GPIO && PLAT_ORION 174 help 175 This driver supports turning off QNAP NAS devices by sending 176 commands to the microcontroller which controls the main power. 177 178 Say Y if you have a QNAP NAS. 179 180config POWER_RESET_REGULATOR 181 bool "Regulator subsystem power-off driver" 182 depends on OF && REGULATOR 183 help 184 This driver supports turning off your board by disabling a 185 power regulator defined in the devicetree. 186 187config POWER_RESET_RESTART 188 bool "Restart power-off driver" 189 help 190 Some boards don't actually have the ability to power off. 191 Instead they restart, and u-boot holds the SoC until the 192 user presses a key. u-boot then boots into Linux. 193 194config POWER_RESET_ST 195 bool "ST restart driver" 196 depends on ARCH_STI 197 help 198 Reset support for STMicroelectronics boards. 199 200config POWER_RESET_VERSATILE 201 bool "ARM Versatile family reboot driver" 202 depends on ARM 203 depends on MFD_SYSCON 204 depends on OF 205 help 206 Power off and restart support for ARM Versatile family of 207 reference boards. 208 209config POWER_RESET_VEXPRESS 210 bool "ARM Versatile Express power-off and reset driver" 211 depends on ARM || ARM64 212 depends on VEXPRESS_CONFIG=y 213 help 214 Power off and reset support for the ARM Ltd. Versatile 215 Express boards. 216 217config POWER_RESET_XGENE 218 bool "APM SoC X-Gene reset driver" 219 depends on ARM64 220 help 221 Reboot support for the APM SoC X-Gene Eval boards. 222 223config POWER_RESET_KEYSTONE 224 bool "Keystone reset driver" 225 depends on ARCH_KEYSTONE || COMPILE_TEST 226 depends on HAS_IOMEM 227 select MFD_SYSCON 228 help 229 Reboot support for the KEYSTONE SoCs. 230 231config POWER_RESET_SYSCON 232 bool "Generic SYSCON regmap reset driver" 233 depends on OF 234 depends on HAS_IOMEM 235 select MFD_SYSCON 236 help 237 Reboot support for generic SYSCON mapped register reset. 238 239config POWER_RESET_SYSCON_POWEROFF 240 bool "Generic SYSCON regmap poweroff driver" 241 depends on OF 242 depends on HAS_IOMEM 243 select MFD_SYSCON 244 help 245 Poweroff support for generic SYSCON mapped register poweroff. 246 247config POWER_RESET_RMOBILE 248 tristate "Renesas R-Mobile reset driver" 249 depends on ARCH_RMOBILE || COMPILE_TEST 250 depends on HAS_IOMEM 251 help 252 Reboot support for Renesas R-Mobile and SH-Mobile SoCs. 253 254config POWER_RESET_ZX 255 tristate "ZTE SoCs reset driver" 256 depends on ARCH_ZX || COMPILE_TEST 257 depends on HAS_IOMEM 258 help 259 Reboot support for ZTE SoCs. 260 261config REBOOT_MODE 262 tristate 263 264config SYSCON_REBOOT_MODE 265 tristate "Generic SYSCON regmap reboot mode driver" 266 depends on OF 267 depends on MFD_SYSCON 268 select REBOOT_MODE 269 help 270 Say y here will enable reboot mode driver. This will 271 get reboot mode arguments and store it in SYSCON mapped 272 register, then the bootloader can read it to take different 273 action according to the mode. 274 275config POWER_RESET_SC27XX 276 tristate "Spreadtrum SC27xx PMIC power-off driver" 277 depends on MFD_SC27XX_PMIC || COMPILE_TEST 278 help 279 This driver supports powering off a system through 280 Spreadtrum SC27xx series PMICs. The SC27xx series 281 PMICs includes the SC2720, SC2721, SC2723, SC2730 282 and SC2731 chips. 283 284config NVMEM_REBOOT_MODE 285 tristate "Generic NVMEM reboot mode driver" 286 depends on OF 287 select REBOOT_MODE 288 help 289 Say y here will enable reboot mode driver. This will 290 get reboot mode arguments and store it in a NVMEM cell, 291 then the bootloader can read it and take different 292 action according to the mode. 293 294endif 295 296