maxims@google.com | 0753bc2 | 2017-04-17 12:00:21 -0700 | [diff] [blame] | 1 | menu "Watchdog Timer Support" |
Ye Li | 253531b | 2017-02-22 16:21:48 +0800 | [diff] [blame] | 2 | |
Shreenidhi Shedi | 42537ca | 2018-02-21 16:50:20 +0100 | [diff] [blame] | 3 | config WATCHDOG |
| 4 | bool "Enable U-Boot watchdog reset" |
Christophe Leroy | 7e00e90 | 2020-02-26 16:17:52 +0000 | [diff] [blame] | 5 | depends on !HW_WATCHDOG |
Shreenidhi Shedi | 42537ca | 2018-02-21 16:50:20 +0100 | [diff] [blame] | 6 | help |
| 7 | This option enables U-Boot watchdog support where U-Boot is using |
| 8 | watchdog_reset function to service watchdog device in U-Boot. Enable |
| 9 | this option if you want to service enabled watchdog by U-Boot. Disable |
| 10 | this option if you want U-Boot to start watchdog but never service it. |
| 11 | |
Pali Rohár | 830d29a | 2021-03-09 14:26:56 +0100 | [diff] [blame] | 12 | config WATCHDOG_AUTOSTART |
| 13 | bool "Automatically start watchdog timer" |
| 14 | depends on WDT |
Heinrich Schuchardt | 86798ee | 2021-11-05 19:34:31 +0100 | [diff] [blame] | 15 | default n if ARCH_SUNXI |
Pali Rohár | 830d29a | 2021-03-09 14:26:56 +0100 | [diff] [blame] | 16 | default y |
| 17 | help |
| 18 | Automatically start watchdog timer and start servicing it during |
| 19 | init phase. Enabled by default. Disable this option if you want |
| 20 | to compile U-Boot with CONFIG_WDT support but do not want to |
| 21 | activate watchdog, like when CONFIG_WDT option is disabled. You |
| 22 | would be able to start watchdog manually by 'wdt' command. Useful |
| 23 | when you want to have support for 'wdt' command but do not want |
| 24 | to have watchdog enabled by default. |
| 25 | |
Heiko Schocher | ca51ef7 | 2019-09-30 09:33:43 +0200 | [diff] [blame] | 26 | config WATCHDOG_TIMEOUT_MSECS |
| 27 | int "Watchdog timeout in msec" |
Tom Rini | 8ba5960 | 2021-09-09 07:54:50 -0400 | [diff] [blame] | 28 | default 128000 if ARCH_MX31 || ARCH_MX5 || ARCH_MX6 |
Heiko Schocher | ca51ef7 | 2019-09-30 09:33:43 +0200 | [diff] [blame] | 29 | default 128000 if ARCH_MX7 || ARCH_VF610 |
| 30 | default 30000 if ARCH_SOCFPGA |
Samuel Holland | 93d34fa | 2021-08-22 13:53:27 -0500 | [diff] [blame] | 31 | default 16000 if ARCH_SUNXI |
Heiko Schocher | ca51ef7 | 2019-09-30 09:33:43 +0200 | [diff] [blame] | 32 | default 60000 |
| 33 | help |
| 34 | Watchdog timeout in msec |
| 35 | |
Paolo Pisati | 45a6d23 | 2017-02-10 17:28:05 +0100 | [diff] [blame] | 36 | config HW_WATCHDOG |
| 37 | bool |
| 38 | |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 39 | config IMX_WATCHDOG |
| 40 | bool "Enable Watchdog Timer support for IMX and LSCH2 of NXP" |
Marek Vasut | 4b969de | 2019-06-09 03:46:22 +0200 | [diff] [blame] | 41 | select HW_WATCHDOG if !WDT |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 42 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 43 | Select this to enable the IMX and LSCH2 of Layerscape watchdog |
| 44 | driver. |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 45 | |
Michael Walle | 95b3d6a | 2020-09-24 10:09:15 +0200 | [diff] [blame] | 46 | config WATCHDOG_RESET_DISABLE |
| 47 | bool "Disable reset watchdog" |
| 48 | depends on IMX_WATCHDOG |
| 49 | help |
| 50 | Disable reset watchdog, which can let WATCHDOG_RESET invalid, so |
| 51 | that the watchdog will not be fed in u-boot. |
| 52 | |
Tom Rini | 897f706 | 2017-05-12 22:33:24 -0400 | [diff] [blame] | 53 | config OMAP_WATCHDOG |
| 54 | bool "TI OMAP watchdog driver" |
| 55 | depends on ARCH_OMAP2PLUS |
| 56 | select HW_WATCHDOG |
Tom Rini | 897f706 | 2017-05-12 22:33:24 -0400 | [diff] [blame] | 57 | help |
| 58 | Say Y here to enable the OMAP3+ watchdog driver. |
Felipe Balbi | 8f8a12d | 2017-07-05 20:33:20 +0300 | [diff] [blame] | 59 | |
Ye Li | 253531b | 2017-02-22 16:21:48 +0800 | [diff] [blame] | 60 | config ULP_WATCHDOG |
| 61 | bool "i.MX7ULP watchdog" |
| 62 | help |
| 63 | Say Y here to enable i.MX7ULP watchdog driver. |
| 64 | |
Marek Vasut | 8941f84 | 2019-06-27 00:26:34 +0200 | [diff] [blame] | 65 | config DESIGNWARE_WATCHDOG |
| 66 | bool "Designware watchdog timer support" |
Marek Vasut | cf8c836 | 2019-06-27 01:19:23 +0200 | [diff] [blame] | 67 | select HW_WATCHDOG if !WDT |
Jagan Teki | 0a08a61 | 2020-04-20 23:34:13 +0530 | [diff] [blame] | 68 | default y if WDT && ROCKCHIP_RK3399 |
Marek Vasut | 8941f84 | 2019-06-27 00:26:34 +0200 | [diff] [blame] | 69 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 70 | Enable this to support Designware Watchdog Timer IP, present e.g. |
| 71 | on Altera SoCFPGA SoCs. |
Marek Vasut | 8941f84 | 2019-06-27 00:26:34 +0200 | [diff] [blame] | 72 | |
maxims@google.com | 0753bc2 | 2017-04-17 12:00:21 -0700 | [diff] [blame] | 73 | config WDT |
| 74 | bool "Enable driver model for watchdog timer drivers" |
| 75 | depends on DM |
Stefan Roese | 0698528 | 2019-04-11 15:58:44 +0200 | [diff] [blame] | 76 | imply WATCHDOG |
maxims@google.com | 0753bc2 | 2017-04-17 12:00:21 -0700 | [diff] [blame] | 77 | help |
| 78 | Enable driver model for watchdog timer. At the moment the API |
| 79 | is very simple and only supports four operations: |
Patrice Chotard | 8d4f91b | 2019-04-25 12:57:28 +0200 | [diff] [blame] | 80 | start, stop, reset and expire_now (expire immediately). |
maxims@google.com | 0753bc2 | 2017-04-17 12:00:21 -0700 | [diff] [blame] | 81 | What exactly happens when the timer expires is up to a particular |
| 82 | device/driver. |
| 83 | |
Mark Kettenis | ee327d1 | 2022-01-12 19:55:15 +0100 | [diff] [blame] | 84 | config WDT_APPLE |
| 85 | bool "Apple watchdog timer support" |
| 86 | depends on WDT |
| 87 | default y if ARCH_APPLE |
| 88 | help |
| 89 | Enable support for the watchdog timer on Apple SoCs. |
| 90 | The watchdog will perform a full SoC reset resulting in a |
| 91 | reboot of the entire system. |
| 92 | |
Marek Behún | 2b69a67 | 2018-04-24 17:21:30 +0200 | [diff] [blame] | 93 | config WDT_ARMADA_37XX |
| 94 | bool "Marvell Armada 37xx watchdog timer support" |
| 95 | depends on WDT && ARMADA_3700 |
| 96 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 97 | Enable this to support Watchdog Timer on Marvell Armada 37xx SoC. |
| 98 | There are 4 possible clocks which can be used on these SoCs. This |
| 99 | driver uses the second clock (ID 1), assuming that so will also |
| 100 | Linux's driver. |
Marek Behún | 2b69a67 | 2018-04-24 17:21:30 +0200 | [diff] [blame] | 101 | |
maxims@google.com | 1eb0a46 | 2017-04-17 12:00:22 -0700 | [diff] [blame] | 102 | config WDT_ASPEED |
| 103 | bool "Aspeed ast2400/ast2500 watchdog timer support" |
| 104 | depends on WDT |
| 105 | default y if ARCH_ASPEED |
| 106 | help |
| 107 | Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices. |
| 108 | The watchdog timer is stopped when initialized. It performs reset, either |
| 109 | full SoC reset or CPU or just some peripherals, based on the flags. |
| 110 | It currently does not support Boot Flash Addressing Mode Detection or |
| 111 | Second Boot. |
| 112 | |
Chia-Wei, Wang | 337d95c | 2020-12-14 13:54:25 +0800 | [diff] [blame] | 113 | config WDT_AST2600 |
| 114 | bool "Aspeed AST2600 watchdog timer support" |
| 115 | depends on WDT |
| 116 | default y if ASPEED_AST2600 |
| 117 | help |
| 118 | Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices. |
| 119 | The watchdog timer is stopped when initialized. It performs reset, either |
| 120 | full SoC reset or CPU or just some peripherals, based on the flags. |
| 121 | |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 122 | config WDT_AT91 |
| 123 | bool "AT91 watchdog timer support" |
| 124 | depends on WDT |
| 125 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 126 | Select this to enable Microchip watchdog timer, which can be found on |
| 127 | some AT91 devices. |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 128 | |
Álvaro Fernández Rojas | 7733193 | 2017-05-16 18:29:09 +0200 | [diff] [blame] | 129 | config WDT_BCM6345 |
| 130 | bool "BCM6345 watchdog timer support" |
Philippe Reynes | d0edec6 | 2020-01-07 20:14:11 +0100 | [diff] [blame] | 131 | depends on WDT && (ARCH_BMIPS || ARCH_BCM68360 || \ |
| 132 | ARCH_BCM6858 || ARCH_BCM63158) |
Álvaro Fernández Rojas | 7733193 | 2017-05-16 18:29:09 +0200 | [diff] [blame] | 133 | help |
| 134 | Select this to enable watchdog timer for BCM6345 SoCs. |
| 135 | The watchdog timer is stopped when initialized. |
| 136 | It performs full SoC reset. |
| 137 | |
Chris Packham | 017af7f | 2021-03-05 16:32:58 +1300 | [diff] [blame] | 138 | config WDT_BOOKE |
| 139 | bool "PowerPC Book-E watchdog driver" |
| 140 | depends on WDT && MPC85xx |
| 141 | help |
| 142 | Watchdog driver for PowerPC Book-E chips, such as the Freescale |
| 143 | MPC85xx SOCs and the IBM PowerPC 440. |
| 144 | |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 145 | config WDT_CDNS |
| 146 | bool "Cadence watchdog timer support" |
| 147 | depends on WDT |
| 148 | imply WATCHDOG |
| 149 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 150 | Select this to enable Cadence watchdog timer, which can be found on some |
| 151 | Xilinx Microzed Platform. |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 152 | |
Jason Li | 7f54b83 | 2020-01-30 12:34:57 -0800 | [diff] [blame] | 153 | config WDT_CORTINA |
| 154 | bool "Cortina Access CAxxxx watchdog timer support" |
| 155 | depends on WDT |
| 156 | help |
| 157 | Cortina Access CAxxxx watchdog timer support. |
| 158 | This driver support all CPU ISAs supported by Cortina |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 159 | Access CAxxxx SoCs. |
Jason Li | 7f54b83 | 2020-01-30 12:34:57 -0800 | [diff] [blame] | 160 | |
Rasmus Villemoes | 2ac8490 | 2021-08-19 11:57:04 +0200 | [diff] [blame] | 161 | config WDT_GPIO |
| 162 | bool "External gpio watchdog support" |
| 163 | depends on WDT |
| 164 | depends on DM_GPIO |
| 165 | help |
| 166 | Support for external watchdog fed by toggling a gpio. See |
| 167 | doc/device-tree-bindings/watchdog/gpio-wdt.txt for |
| 168 | information on how to describe the watchdog in device tree. |
| 169 | |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 170 | config WDT_MPC8xx |
| 171 | bool "MPC8xx watchdog timer support" |
| 172 | depends on WDT && MPC8xx |
Christophe Leroy | a682560 | 2020-02-20 07:39:51 +0000 | [diff] [blame] | 173 | select HW_WATCHDOG |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 174 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 175 | Select this to enable mpc8xx watchdog timer |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 176 | |
Weijie Gao | bba4ec8 | 2020-11-12 16:36:28 +0800 | [diff] [blame] | 177 | config WDT_MT7620 |
| 178 | bool "MediaTek MT7620 watchdog timer support" |
| 179 | depends on WDT && SOC_MT7620 |
| 180 | help |
| 181 | Select this to enable watchdog timer on MediaTek MT7620 and earlier |
| 182 | SoC chips. |
| 183 | |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 184 | config WDT_MT7621 |
| 185 | bool "MediaTek MT7621 watchdog timer support" |
| 186 | depends on WDT && SOC_MT7628 |
| 187 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 188 | Select this to enable Ralink / Mediatek watchdog timer, |
| 189 | which can be found on some MediaTek chips. |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 190 | |
| 191 | config WDT_MTK |
| 192 | bool "MediaTek watchdog timer support" |
| 193 | depends on WDT && ARCH_MEDIATEK |
| 194 | help |
| 195 | Select this to enable watchdog timer for MediaTek SoCs. |
| 196 | The watchdog timer is stopped when initialized. |
| 197 | It performs full SoC reset. |
| 198 | |
Suneel Garapati | af6ba90 | 2019-10-21 16:09:36 -0700 | [diff] [blame] | 199 | config WDT_OCTEONTX |
| 200 | bool "OcteonTX core watchdog support" |
| 201 | depends on WDT && (ARCH_OCTEONTX || ARCH_OCTEONTX2) |
| 202 | default y |
| 203 | imply WATCHDOG |
| 204 | help |
| 205 | This enables OcteonTX watchdog driver, which can be |
| 206 | found on OcteonTX/TX2 chipsets and inline with driver model. |
| 207 | Only supports watchdog reset. |
| 208 | |
Suniel Mahesh | 7659ea3 | 2019-07-31 21:54:06 +0530 | [diff] [blame] | 209 | config WDT_OMAP3 |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 210 | bool "TI OMAP watchdog timer support" |
| 211 | depends on WDT && ARCH_OMAP2PLUS |
| 212 | default y if AM33XX |
| 213 | help |
Suniel Mahesh | 7659ea3 | 2019-07-31 21:54:06 +0530 | [diff] [blame] | 214 | This enables OMAP3+ watchdog timer driver, which can be |
| 215 | found on some TI chipsets and inline with driver model. |
| 216 | |
Marek Behún | 2ab7704 | 2017-06-09 19:28:41 +0200 | [diff] [blame] | 217 | config WDT_ORION |
| 218 | bool "Orion watchdog timer support" |
| 219 | depends on WDT |
Chris Packham | 8e427ba | 2019-02-18 10:30:53 +1300 | [diff] [blame] | 220 | select CLK |
Marek Behún | 2ab7704 | 2017-06-09 19:28:41 +0200 | [diff] [blame] | 221 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 222 | Select this to enable Orion watchdog timer, which can be found on some |
| 223 | Marvell Armada chips. |
Marek Behún | 2ab7704 | 2017-06-09 19:28:41 +0200 | [diff] [blame] | 224 | |
Jan Kiszka | d388f36 | 2020-06-23 13:15:08 +0200 | [diff] [blame] | 225 | config WDT_K3_RTI |
| 226 | bool "Texas Instruments K3 RTI watchdog" |
| 227 | depends on WDT && ARCH_K3 |
| 228 | help |
| 229 | Say Y here if you want to include support for the K3 watchdog |
| 230 | timer (RTI module) available in the K3 generation of processors. |
| 231 | |
Jan Kiszka | f3efb1d | 2021-09-18 08:17:55 +0200 | [diff] [blame] | 232 | if WDT_K3_RTI |
| 233 | |
| 234 | config WDT_K3_RTI_LOAD_FW |
| 235 | bool "Load watchdog firmware" |
| 236 | depends on REMOTEPROC |
| 237 | help |
| 238 | Automatically load the specified firmware image into the MCU R5F |
| 239 | core 0. On the AM65x, this firmware is supposed to handle the expiry |
| 240 | of the watchdog timer, typically by resetting the system. |
| 241 | |
| 242 | config WDT_K3_RTI_FW_FILE |
| 243 | string "Watchdog firmware image file" |
| 244 | default "k3-rti-wdt.fw" |
| 245 | depends on WDT_K3_RTI_LOAD_FW |
| 246 | help |
| 247 | Firmware image to be embedded into U-Boot and loaded on watchdog |
| 248 | start. |
| 249 | |
| 250 | endif |
| 251 | |
Patrice Chotard | b3134ff | 2019-04-30 17:26:20 +0200 | [diff] [blame] | 252 | config WDT_SANDBOX |
| 253 | bool "Enable Watchdog Timer support for Sandbox" |
| 254 | depends on SANDBOX && WDT |
| 255 | help |
| 256 | Enable Watchdog Timer support in Sandbox. This is a dummy device that |
| 257 | can be probed and supports all of the methods of WDT, but does not |
| 258 | really do anything. |
| 259 | |
Zhao Qiang | f27d73e | 2020-07-10 16:55:18 +0800 | [diff] [blame] | 260 | config WDT_SBSA |
| 261 | bool "SBSA watchdog timer support" |
| 262 | depends on WDT |
| 263 | help |
| 264 | Select this to enable SBSA watchdog timer. |
| 265 | This driver can operate ARM SBSA Generic Watchdog as a single stage. |
| 266 | In the single stage mode, when the timeout is reached, your system |
| 267 | will be reset by WS1. The first signal (WS0) is ignored. |
| 268 | |
Michael Walle | f606c9a | 2021-11-15 23:45:43 +0100 | [diff] [blame] | 269 | config WDT_SL28CPLD |
| 270 | bool "sl28cpld watchdog timer support" |
| 271 | depends on WDT && SL28CPLD |
| 272 | help |
| 273 | Enable support for the watchdog timer in the Kontron sl28cpld |
| 274 | management controller. |
| 275 | |
Qiang Zhao | 0652d9f | 2019-05-07 03:16:09 +0000 | [diff] [blame] | 276 | config WDT_SP805 |
| 277 | bool "SP805 watchdog timer support" |
| 278 | depends on WDT |
| 279 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 280 | Select this to enable SP805 watchdog timer, which can be found on some |
| 281 | nxp layerscape chips. |
Qiang Zhao | 0652d9f | 2019-05-07 03:16:09 +0000 | [diff] [blame] | 282 | |
Patrice Chotard | 8c1007a | 2019-04-30 17:26:22 +0200 | [diff] [blame] | 283 | config WDT_STM32MP |
| 284 | bool "IWDG watchdog driver for STM32 MP's family" |
| 285 | depends on WDT |
| 286 | imply WATCHDOG |
| 287 | help |
| 288 | Enable the STM32 watchdog (IWDG) driver. Enable support to |
| 289 | configure STM32's on-SoC watchdog. |
| 290 | |
Samuel Holland | 93d34fa | 2021-08-22 13:53:27 -0500 | [diff] [blame] | 291 | config WDT_SUNXI |
| 292 | bool "Allwinner sunxi watchdog timer support" |
| 293 | depends on WDT && ARCH_SUNXI |
| 294 | default y |
| 295 | help |
| 296 | Enable support for the watchdog timer in Allwinner sunxi SoCs. |
| 297 | |
Shreenidhi Shedi | e0e9caa | 2018-07-15 02:05:41 +0530 | [diff] [blame] | 298 | config XILINX_TB_WATCHDOG |
| 299 | bool "Xilinx Axi watchdog timer support" |
| 300 | depends on WDT |
| 301 | imply WATCHDOG |
| 302 | help |
Michal Simek | 92a19be | 2020-03-11 12:26:53 +0100 | [diff] [blame] | 303 | Select this to enable Xilinx Axi watchdog timer, which can be found on some |
| 304 | Xilinx Microblaze Platforms. |
Shreenidhi Shedi | e0e9caa | 2018-07-15 02:05:41 +0530 | [diff] [blame] | 305 | |
Ashok Reddy Soma | 5028358 | 2020-03-11 03:06:04 -0600 | [diff] [blame] | 306 | config WDT_XILINX |
| 307 | bool "Xilinx window watchdog timer support" |
| 308 | depends on WDT && ARCH_VERSAL |
| 309 | select REGMAP |
| 310 | imply WATCHDOG |
| 311 | help |
| 312 | Select this to enable Xilinx window watchdog timer, which can be found on |
| 313 | Xilinx Versal Platforms. |
| 314 | |
Andy Shevchenko | c974a3d | 2019-06-21 13:28:08 +0300 | [diff] [blame] | 315 | config WDT_TANGIER |
| 316 | bool "Intel Tangier watchdog timer support" |
| 317 | depends on WDT && INTEL_MID |
| 318 | help |
| 319 | This enables support for watchdog controller available on |
| 320 | Intel Tangier SoC. If you're using a board with Intel Tangier |
| 321 | SoC, say Y here. |
| 322 | |
Marek Vasut | 6874cb7 | 2019-06-09 03:46:21 +0200 | [diff] [blame] | 323 | config SPL_WDT |
| 324 | bool "Enable driver model for watchdog timer drivers in SPL" |
| 325 | depends on SPL_DM |
| 326 | help |
| 327 | Enable driver model for watchdog timer in SPL. |
| 328 | This is similar to CONFIG_WDT in U-Boot. |
| 329 | |
Ye Li | 253531b | 2017-02-22 16:21:48 +0800 | [diff] [blame] | 330 | endmenu |