Max Filippov | b25732c | 2016-08-07 08:53:00 +0300 | [diff] [blame] | 1 | # |
| 2 | # System reset devices |
| 3 | # |
| 4 | |
| 5 | menu "System reset device drivers" |
| 6 | |
| 7 | config SYSRESET |
| 8 | bool "Enable support for system reset drivers" |
| 9 | depends on DM |
| 10 | help |
| 11 | Enable system reset drivers which can be used to reset the CPU or |
| 12 | board. Each driver can provide a reset method which will be called |
| 13 | to effect a reset. The uclass will try all available drivers when |
| 14 | reset_walk() is called. |
| 15 | |
Kever Yang | 09259fc | 2019-04-02 20:41:25 +0800 | [diff] [blame] | 16 | config SPL_SYSRESET |
| 17 | bool "Enable support for system reset drivers in SPL mode" |
| 18 | depends on SYSRESET && SPL_DM |
| 19 | help |
| 20 | Enable system reset drivers which can be used to reset the CPU or |
| 21 | board. Each driver can provide a reset method which will be called |
| 22 | to effect a reset. The uclass will try all available drivers when |
| 23 | reset_walk() is called. |
| 24 | |
| 25 | config TPL_SYSRESET |
| 26 | bool "Enable support for system reset drivers in TPL mode" |
| 27 | depends on SYSRESET && TPL_DM |
| 28 | help |
| 29 | Enable system reset drivers which can be used to reset the CPU or |
| 30 | board. Each driver can provide a reset method which will be called |
| 31 | to effect a reset. The uclass will try all available drivers when |
| 32 | reset_walk() is called. |
| 33 | |
Simon Glass | 747093d | 2022-04-30 00:56:53 -0600 | [diff] [blame] | 34 | config VPL_SYSRESET |
| 35 | bool "Enable support for system reset drivers in VPL mode" |
| 36 | depends on SYSRESET && VPL_DM |
| 37 | default y if TPL_SYSRESET |
| 38 | help |
| 39 | Enable system reset drivers which can be used to reset the CPU or |
| 40 | board. Each driver can provide a reset method which will be called |
| 41 | to effect a reset. The uclass will try all available drivers when |
| 42 | reset_walk() is called. |
| 43 | |
Masahiro Yamada | 573a381 | 2017-04-14 11:10:24 +0900 | [diff] [blame] | 44 | if SYSRESET |
| 45 | |
Bin Meng | 5f1a08b | 2021-02-25 17:22:52 +0800 | [diff] [blame] | 46 | config SYSRESET_CMD_RESET |
| 47 | bool "sysreset implementation of the reset command" |
| 48 | default y |
| 49 | help |
| 50 | Enable sysreset implementation of the reset command. |
| 51 | |
Urja Rannikko | b805051 | 2019-05-16 21:48:42 +0000 | [diff] [blame] | 52 | if CMD_POWEROFF |
| 53 | |
| 54 | config SYSRESET_CMD_POWEROFF |
| 55 | bool "sysreset implementation of the poweroff command" |
| 56 | help |
| 57 | This should be selected by the appropriate PMIC driver if |
| 58 | the poweroff command is enabled. |
| 59 | |
| 60 | endif |
| 61 | |
Sebastian Reichel | 8ccc6bf | 2020-09-02 19:31:42 +0200 | [diff] [blame] | 62 | config POWEROFF_GPIO |
| 63 | bool "Enable support for GPIO poweroff driver" |
Michal Simek | 99a0532 | 2023-07-04 14:05:13 +0200 | [diff] [blame^] | 64 | depends on DM_GPIO |
Sebastian Reichel | 8ccc6bf | 2020-09-02 19:31:42 +0200 | [diff] [blame] | 65 | help |
| 66 | Support for system poweroff using a GPIO pin. This can be used |
| 67 | for systems having a single GPIO to trigger a system poweroff. |
| 68 | |
Michal Simek | 0d832b3 | 2018-07-13 11:04:56 +0200 | [diff] [blame] | 69 | config SYSRESET_GPIO |
| 70 | bool "Enable support for GPIO reset driver" |
Michal Simek | 99a0532 | 2023-07-04 14:05:13 +0200 | [diff] [blame^] | 71 | depends on DM_GPIO |
Michal Simek | 0d832b3 | 2018-07-13 11:04:56 +0200 | [diff] [blame] | 72 | help |
| 73 | Reset support via GPIO pin connected reset logic. This is used for |
| 74 | example on Microblaze where reset logic can be controlled via GPIO |
| 75 | pin which triggers cpu reset. |
| 76 | |
Michal Simek | cae39ae | 2018-07-13 17:00:13 +0200 | [diff] [blame] | 77 | config SYSRESET_MICROBLAZE |
| 78 | bool "Enable support for Microblaze soft reset" |
| 79 | depends on MICROBLAZE |
| 80 | help |
| 81 | This is soft reset on Microblaze which does jump to 0x0 address. |
| 82 | |
Stefan Roese | 59aea37 | 2020-06-30 12:08:55 +0200 | [diff] [blame] | 83 | config SYSRESET_OCTEON |
| 84 | bool "Enable support for Marvell Octeon SoC family" |
| 85 | depends on ARCH_OCTEON |
| 86 | help |
| 87 | This enables the system reset driver support for Marvell Octeon |
| 88 | SoCs. |
| 89 | |
Sergiu Moga | 71d4393 | 2022-04-01 12:27:24 +0300 | [diff] [blame] | 90 | config SYSRESET_AT91 |
| 91 | bool "Enable support for Microchip/Atmel reset driver" |
| 92 | depends on ARCH_AT91 |
| 93 | select SYSRESET_SPL_AT91 if SPL && SPL_SYSRESET |
| 94 | help |
| 95 | This enables the system reset driver support for Microchip/Atmel |
| 96 | SoCs. |
| 97 | |
| 98 | config SYSRESET_SPL_AT91 |
| 99 | bool "Enable support for Microchip/Atmel reset driver in SPL" |
| 100 | depends on ARCH_AT91 |
| 101 | help |
| 102 | This enables the system reset driver support for Microchip/Atmel |
| 103 | SoCs in SPL. |
| 104 | |
Masahiro Yamada | 573a381 | 2017-04-14 11:10:24 +0900 | [diff] [blame] | 105 | config SYSRESET_PSCI |
| 106 | bool "Enable support for PSCI System Reset" |
| 107 | depends on ARM_PSCI_FW |
Simon Goldschmidt | a8b5031 | 2019-07-16 21:29:32 +0200 | [diff] [blame] | 108 | select SPL_ARM_PSCI_FW if SPL |
Masahiro Yamada | 573a381 | 2017-04-14 11:10:24 +0900 | [diff] [blame] | 109 | help |
| 110 | Enable PSCI SYSTEM_RESET function call. To use this, PSCI firmware |
| 111 | must be running on your system. |
| 112 | |
Heinrich Schuchardt | 24ed531 | 2021-09-12 21:11:46 +0200 | [diff] [blame] | 113 | config SYSRESET_SBI |
| 114 | bool "Enable support for SBI System Reset" |
| 115 | depends on RISCV_SMODE && SBI_V02 |
Heinrich Schuchardt | 4a98207 | 2022-09-05 16:40:49 +0200 | [diff] [blame] | 116 | default y |
Heinrich Schuchardt | 24ed531 | 2021-09-12 21:11:46 +0200 | [diff] [blame] | 117 | select SYSRESET_CMD_POWEROFF if CMD_POWEROFF |
| 118 | help |
| 119 | Enable system reset and poweroff via the SBI system reset extension. |
| 120 | The extension was introduced in version 0.3 of the SBI specification. |
| 121 | |
| 122 | If the SBI implementation provides the extension, is board specific. |
| 123 | The RISC-V platform specification mandates the extension for rich |
| 124 | operating system platforms. |
| 125 | |
Simon Goldschmidt | 1f16688 | 2019-07-15 21:47:53 +0200 | [diff] [blame] | 126 | config SYSRESET_SOCFPGA |
| 127 | bool "Enable support for Intel SOCFPGA family" |
| 128 | depends on ARCH_SOCFPGA && (TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10) |
| 129 | help |
| 130 | This enables the system reset driver support for Intel SOCFPGA SoCs |
| 131 | (Cyclone 5, Arria 5 and Arria 10). |
| 132 | |
Chee Hong Ang | a651099 | 2020-08-05 20:11:25 +0800 | [diff] [blame] | 133 | config SYSRESET_SOCFPGA_SOC64 |
| 134 | bool "Enable support for Intel SOCFPGA SoC64 family (Stratix10/Agilex)" |
Siew Chin Lim | 9a5bbdf | 2021-03-01 20:04:10 +0800 | [diff] [blame] | 135 | depends on ARCH_SOCFPGA && TARGET_SOCFPGA_SOC64 |
Simon Goldschmidt | 690c129 | 2019-07-15 21:47:54 +0200 | [diff] [blame] | 136 | help |
| 137 | This enables the system reset driver support for Intel SOCFPGA |
Chee Hong Ang | a651099 | 2020-08-05 20:11:25 +0800 | [diff] [blame] | 138 | SoC64 SoCs. |
Simon Goldschmidt | 690c129 | 2019-07-15 21:47:54 +0200 | [diff] [blame] | 139 | |
Andreas Dannenberg | 694b052 | 2018-08-27 15:57:46 +0530 | [diff] [blame] | 140 | config SYSRESET_TI_SCI |
| 141 | bool "TI System Control Interface (TI SCI) system reset driver" |
| 142 | depends on TI_SCI_PROTOCOL |
| 143 | help |
| 144 | This enables the system reset driver support over TI System Control |
| 145 | Interface available on some new TI's SoCs. |
| 146 | |
Álvaro Fernández Rojas | e388969 | 2017-04-25 00:39:14 +0200 | [diff] [blame] | 147 | config SYSRESET_SYSCON |
| 148 | bool "Enable support for mfd syscon reboot driver" |
| 149 | select REGMAP |
| 150 | select SYSCON |
| 151 | help |
| 152 | Reboot support for generic SYSCON mapped register reset. |
| 153 | |
Álvaro Fernández Rojas | 17a0c14 | 2017-05-16 18:29:13 +0200 | [diff] [blame] | 154 | config SYSRESET_WATCHDOG |
| 155 | bool "Enable support for watchdog reboot driver" |
| 156 | select WDT |
| 157 | help |
| 158 | Reboot support for generic watchdog reset. |
| 159 | |
Samuel Holland | a8f63d1 | 2021-11-03 22:55:14 -0500 | [diff] [blame] | 160 | config SYSRESET_WATCHDOG_AUTO |
| 161 | bool "Automatically register first watchdog with sysreset" |
| 162 | depends on SYSRESET_WATCHDOG |
| 163 | help |
| 164 | If enabled, the first watchdog (as selected by the watchdog uclass) |
| 165 | will automatically be registered with the watchdog reboot driver. |
| 166 | |
Weijie Gao | caf7092 | 2020-04-21 09:28:29 +0200 | [diff] [blame] | 167 | config SYSRESET_RESETCTL |
| 168 | bool "Enable support for reset controller reboot driver" |
| 169 | select DM_RESET |
| 170 | help |
| 171 | Reboot support using generic reset controller. |
| 172 | |
Bin Meng | fabb2b4 | 2018-07-03 02:48:40 -0700 | [diff] [blame] | 173 | config SYSRESET_X86 |
| 174 | bool "Enable support for x86 processor reboot driver" |
| 175 | depends on X86 |
| 176 | help |
| 177 | Reboot support for generic x86 processor reset. |
| 178 | |
Simon Glass | ff7abb8 | 2019-09-25 08:11:24 -0600 | [diff] [blame] | 179 | config SYSRESET_SPL_X86 |
| 180 | bool "Enable support for x86 processor reboot driver in SPL" |
| 181 | depends on X86 |
| 182 | help |
| 183 | Reboot support for generic x86 processor reset in SPL. |
| 184 | |
| 185 | config SYSRESET_TPL_X86 |
| 186 | bool "Enable support for x86 processor reboot driver in TPL" |
| 187 | depends on X86 |
| 188 | help |
| 189 | Reboot support for generic x86 processor reset in TPL. |
| 190 | |
Rasmus Villemoes | 875669d | 2019-12-13 15:47:58 +0000 | [diff] [blame] | 191 | config SYSRESET_MPC83XX |
Mario Six | 76fdad1 | 2018-08-06 10:23:35 +0200 | [diff] [blame] | 192 | bool "Enable support MPC83xx SoC family reboot driver" |
| 193 | help |
| 194 | Reboot support for NXP MPC83xx SoCs. |
| 195 | |
Samuel Holland | 6b84217 | 2021-11-03 22:55:11 -0500 | [diff] [blame] | 196 | endif |
| 197 | |
Max Filippov | b25732c | 2016-08-07 08:53:00 +0300 | [diff] [blame] | 198 | endmenu |