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