blob: 50e6a1efba51c56af0e468784086257e0cfb00d0 [file] [log] [blame]
maxims@google.comdaea6d42017-04-17 12:00:21 -07001menu "Watchdog Timer Support"
Ye Li62862b62017-02-22 16:21:48 +08002
Shreenidhi Shedi0787c7c2018-02-21 16:50:20 +01003config WATCHDOG
4 bool "Enable U-Boot watchdog reset"
Christophe Leroy9a5760e2020-02-26 16:17:52 +00005 depends on !HW_WATCHDOG
Shreenidhi Shedi0787c7c2018-02-21 16:50:20 +01006 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árf698a772021-03-09 14:26:56 +010012config WATCHDOG_AUTOSTART
13 bool "Automatically start watchdog timer"
14 depends on WDT
Heinrich Schuchardt150528f2021-11-05 19:34:31 +010015 default n if ARCH_SUNXI
Pali Rohárf698a772021-03-09 14:26:56 +010016 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 Schocherf409f1a2019-09-30 09:33:43 +020026config WATCHDOG_TIMEOUT_MSECS
27 int "Watchdog timeout in msec"
Tom Rinieac76b82021-09-09 07:54:50 -040028 default 128000 if ARCH_MX31 || ARCH_MX5 || ARCH_MX6
Heiko Schocherf409f1a2019-09-30 09:33:43 +020029 default 128000 if ARCH_MX7 || ARCH_VF610
30 default 30000 if ARCH_SOCFPGA
Samuel Holland65c982b2021-08-22 13:53:27 -050031 default 16000 if ARCH_SUNXI
Heiko Schocherf409f1a2019-09-30 09:33:43 +020032 default 60000
33 help
34 Watchdog timeout in msec
35
Paolo Pisati6213c552017-02-10 17:28:05 +010036config HW_WATCHDOG
37 bool
38
Patrice Chotard4a0ae732019-04-30 17:26:20 +020039config IMX_WATCHDOG
40 bool "Enable Watchdog Timer support for IMX and LSCH2 of NXP"
Marek Vasutf7fc5c12019-06-09 03:46:22 +020041 select HW_WATCHDOG if !WDT
Patrice Chotard4a0ae732019-04-30 17:26:20 +020042 help
Michal Simek5288b9b2020-03-11 12:26:53 +010043 Select this to enable the IMX and LSCH2 of Layerscape watchdog
44 driver.
Patrice Chotard4a0ae732019-04-30 17:26:20 +020045
Michael Walleb9c72d02020-09-24 10:09:15 +020046config 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 Rini4a3e7982017-05-12 22:33:24 -040053config OMAP_WATCHDOG
54 bool "TI OMAP watchdog driver"
55 depends on ARCH_OMAP2PLUS
56 select HW_WATCHDOG
Tom Rini4a3e7982017-05-12 22:33:24 -040057 help
58 Say Y here to enable the OMAP3+ watchdog driver.
Felipe Balbi24252da2017-07-05 20:33:20 +030059
Ye Li62862b62017-02-22 16:21:48 +080060config ULP_WATCHDOG
61 bool "i.MX7ULP watchdog"
62 help
63 Say Y here to enable i.MX7ULP watchdog driver.
64
Marek Vasut40919d92019-06-27 00:26:34 +020065config DESIGNWARE_WATCHDOG
66 bool "Designware watchdog timer support"
Tom Rinib5eb2fe2022-06-15 12:03:46 -040067 depends on WDT
68 default y if ROCKCHIP_RK3399
Marek Vasut40919d92019-06-27 00:26:34 +020069 help
Michal Simek5288b9b2020-03-11 12:26:53 +010070 Enable this to support Designware Watchdog Timer IP, present e.g.
71 on Altera SoCFPGA SoCs.
Marek Vasut40919d92019-06-27 00:26:34 +020072
maxims@google.comdaea6d42017-04-17 12:00:21 -070073config WDT
74 bool "Enable driver model for watchdog timer drivers"
75 depends on DM
Stefan Roese502acb02019-04-11 15:58:44 +020076 imply WATCHDOG
maxims@google.comdaea6d42017-04-17 12:00:21 -070077 help
78 Enable driver model for watchdog timer. At the moment the API
79 is very simple and only supports four operations:
Patrice Chotard0a060242019-04-25 12:57:28 +020080 start, stop, reset and expire_now (expire immediately).
maxims@google.comdaea6d42017-04-17 12:00:21 -070081 What exactly happens when the timer expires is up to a particular
82 device/driver.
83
Mark Kettenis7e8c6dd2022-01-12 19:55:15 +010084config 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úna86b97d2018-04-24 17:21:30 +020093config WDT_ARMADA_37XX
94 bool "Marvell Armada 37xx watchdog timer support"
95 depends on WDT && ARMADA_3700
96 help
Michal Simek5288b9b2020-03-11 12:26:53 +010097 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úna86b97d2018-04-24 17:21:30 +0200101
maxims@google.comdf35df22017-04-17 12:00:22 -0700102config 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, Wang67ef5872020-12-14 13:54:25 +0800113config 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 Chotard4a0ae732019-04-30 17:26:20 +0200122config WDT_AT91
123 bool "AT91 watchdog timer support"
124 depends on WDT
125 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100126 Select this to enable Microchip watchdog timer, which can be found on
127 some AT91 devices.
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200128
Álvaro Fernández Rojasd8759a52017-05-16 18:29:09 +0200129config WDT_BCM6345
130 bool "BCM6345 watchdog timer support"
Philippe Reynes09b864c2020-01-07 20:14:11 +0100131 depends on WDT && (ARCH_BMIPS || ARCH_BCM68360 || \
Philippe Reynes9b0acb82022-02-11 19:18:37 +0100132 ARCH_BCM6858 || ARCH_BCM63158 || \
133 ARCH_BCM6753)
Álvaro Fernández Rojasd8759a52017-05-16 18:29:09 +0200134 help
135 Select this to enable watchdog timer for BCM6345 SoCs.
136 The watchdog timer is stopped when initialized.
137 It performs full SoC reset.
138
Chris Packham69a430f2021-03-05 16:32:58 +1300139config WDT_BOOKE
140 bool "PowerPC Book-E watchdog driver"
141 depends on WDT && MPC85xx
142 help
143 Watchdog driver for PowerPC Book-E chips, such as the Freescale
144 MPC85xx SOCs and the IBM PowerPC 440.
145
Shreenidhi Shedi0787c7c2018-02-21 16:50:20 +0100146config WDT_CDNS
147 bool "Cadence watchdog timer support"
148 depends on WDT
149 imply WATCHDOG
150 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100151 Select this to enable Cadence watchdog timer, which can be found on some
152 Xilinx Microzed Platform.
Shreenidhi Shedi0787c7c2018-02-21 16:50:20 +0100153
Jason Lidd2b30b2020-01-30 12:34:57 -0800154config WDT_CORTINA
155 bool "Cortina Access CAxxxx watchdog timer support"
156 depends on WDT
157 help
158 Cortina Access CAxxxx watchdog timer support.
159 This driver support all CPU ISAs supported by Cortina
Michal Simek5288b9b2020-03-11 12:26:53 +0100160 Access CAxxxx SoCs.
Jason Lidd2b30b2020-01-30 12:34:57 -0800161
Rasmus Villemoes08667602021-08-19 11:57:04 +0200162config WDT_GPIO
163 bool "External gpio watchdog support"
164 depends on WDT
165 depends on DM_GPIO
166 help
167 Support for external watchdog fed by toggling a gpio. See
168 doc/device-tree-bindings/watchdog/gpio-wdt.txt for
169 information on how to describe the watchdog in device tree.
170
Pali Rohárb93e8ea2022-05-02 18:41:07 +0200171config WDT_MAX6370
172 bool "MAX6370 watchdog timer support"
173 depends on WDT
174 select DM_GPIO
175 help
176 Select this to enable max6370 watchdog timer.
177
Philippe Boos35de0c52022-06-13 16:00:56 +0200178config WDT_MESON_GXBB
179 bool "Amlogic watchdog timer support"
180 depends on WDT
181 help
182 Select this to enable Meson watchdog timer,
183 which can be found on some Amlogic platforms.
184
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200185config WDT_MPC8xx
186 bool "MPC8xx watchdog timer support"
187 depends on WDT && MPC8xx
Christophe Leroy545e8942020-02-20 07:39:51 +0000188 select HW_WATCHDOG
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200189 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100190 Select this to enable mpc8xx watchdog timer
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200191
developer33a3bc92020-11-12 16:36:28 +0800192config WDT_MT7620
193 bool "MediaTek MT7620 watchdog timer support"
194 depends on WDT && SOC_MT7620
195 help
196 Select this to enable watchdog timer on MediaTek MT7620 and earlier
197 SoC chips.
198
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200199config WDT_MT7621
200 bool "MediaTek MT7621 watchdog timer support"
developercf569c02022-05-20 11:23:19 +0800201 depends on WDT && (SOC_MT7621 || SOC_MT7628)
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200202 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100203 Select this to enable Ralink / Mediatek watchdog timer,
204 which can be found on some MediaTek chips.
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200205
developer93053be2018-11-15 10:07:57 +0800206config WDT_MTK
207 bool "MediaTek watchdog timer support"
208 depends on WDT && ARCH_MEDIATEK
209 help
210 Select this to enable watchdog timer for MediaTek SoCs.
211 The watchdog timer is stopped when initialized.
212 It performs full SoC reset.
213
Jim Liufc166b02022-04-01 17:59:39 +0800214config WDT_NPCM
215 bool "Nuvoton watchdog timer support"
216 depends on WDT && ARCH_NPCM
217 help
218 This enables Nuvoton npcm7xx/npcm8xx watchdog timer driver,
219 The watchdog timer is stopped when initialized.
220 It performs full SoC reset.
221
Suneel Garapati7072b172019-10-21 16:09:36 -0700222config WDT_OCTEONTX
Stefan Roeseaf3b2102022-05-11 09:08:47 +0200223 bool "Octeon core watchdog support"
224 depends on WDT && (ARCH_OCTEON || ARCH_OCTEONTX || ARCH_OCTEONTX2)
Suneel Garapati7072b172019-10-21 16:09:36 -0700225 default y
226 imply WATCHDOG
227 help
Stefan Roeseaf3b2102022-05-11 09:08:47 +0200228 This enables the Octeon watchdog driver, which can be found on
229 various Octeon parts such as Octeon II/III and OcteonTX/TX2.
Suneel Garapati7072b172019-10-21 16:09:36 -0700230
Suniel Mahesh1c783ab2019-07-31 21:54:06 +0530231config WDT_OMAP3
Michal Simek5288b9b2020-03-11 12:26:53 +0100232 bool "TI OMAP watchdog timer support"
233 depends on WDT && ARCH_OMAP2PLUS
234 default y if AM33XX
235 help
Suniel Mahesh1c783ab2019-07-31 21:54:06 +0530236 This enables OMAP3+ watchdog timer driver, which can be
237 found on some TI chipsets and inline with driver model.
238
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200239config WDT_ORION
240 bool "Orion watchdog timer support"
Shreenidhi Shedi335fb5b2018-07-15 02:05:41 +0530241 depends on WDT
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200242 select CLK
Shreenidhi Shedi335fb5b2018-07-15 02:05:41 +0530243 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100244 Select this to enable Orion watchdog timer, which can be found on some
245 Marvell Armada chips.
Shreenidhi Shedi335fb5b2018-07-15 02:05:41 +0530246
Jan Kiszkaddf21d52020-06-23 13:15:08 +0200247config WDT_K3_RTI
248 bool "Texas Instruments K3 RTI watchdog"
249 depends on WDT && ARCH_K3
250 help
251 Say Y here if you want to include support for the K3 watchdog
252 timer (RTI module) available in the K3 generation of processors.
253
Jan Kiszkad35cdfb2021-09-18 08:17:55 +0200254if WDT_K3_RTI
255
256config WDT_K3_RTI_LOAD_FW
257 bool "Load watchdog firmware"
258 depends on REMOTEPROC
259 help
260 Automatically load the specified firmware image into the MCU R5F
261 core 0. On the AM65x, this firmware is supposed to handle the expiry
262 of the watchdog timer, typically by resetting the system.
263
264config WDT_K3_RTI_FW_FILE
265 string "Watchdog firmware image file"
266 default "k3-rti-wdt.fw"
267 depends on WDT_K3_RTI_LOAD_FW
268 help
269 Firmware image to be embedded into U-Boot and loaded on watchdog
270 start.
271
272endif
273
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200274config WDT_SANDBOX
275 bool "Enable Watchdog Timer support for Sandbox"
276 depends on SANDBOX && WDT
Xiaoliang Yang4161dc22018-10-18 17:14:19 +0800277 help
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200278 Enable Watchdog Timer support in Sandbox. This is a dummy device that
279 can be probed and supports all of the methods of WDT, but does not
280 really do anything.
Xiaoliang Yang4161dc22018-10-18 17:14:19 +0800281
Zhao Qiangfb816fa2020-07-10 16:55:18 +0800282config WDT_SBSA
283 bool "SBSA watchdog timer support"
284 depends on WDT
285 help
286 Select this to enable SBSA watchdog timer.
287 This driver can operate ARM SBSA Generic Watchdog as a single stage.
288 In the single stage mode, when the timeout is reached, your system
289 will be reset by WS1. The first signal (WS0) is ignored.
290
Michael Wallefa842012021-11-15 23:45:43 +0100291config WDT_SL28CPLD
292 bool "sl28cpld watchdog timer support"
293 depends on WDT && SL28CPLD
294 help
295 Enable support for the watchdog timer in the Kontron sl28cpld
296 management controller.
297
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200298config WDT_SP805
299 bool "SP805 watchdog timer support"
Prasanthi Chellakumar0509c4e2018-10-09 11:46:40 -0700300 depends on WDT
301 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100302 Select this to enable SP805 watchdog timer, which can be found on some
303 nxp layerscape chips.
Stefan Roese84569692018-10-04 13:39:07 +0200304
Patrice Chotard473b2442019-04-30 17:26:22 +0200305config WDT_STM32MP
306 bool "IWDG watchdog driver for STM32 MP's family"
307 depends on WDT
308 imply WATCHDOG
309 help
310 Enable the STM32 watchdog (IWDG) driver. Enable support to
311 configure STM32's on-SoC watchdog.
312
Samuel Holland65c982b2021-08-22 13:53:27 -0500313config WDT_SUNXI
314 bool "Allwinner sunxi watchdog timer support"
315 depends on WDT && ARCH_SUNXI
316 default y
317 help
318 Enable support for the watchdog timer in Allwinner sunxi SoCs.
319
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200320config XILINX_TB_WATCHDOG
321 bool "Xilinx Axi watchdog timer support"
322 depends on WDT
323 imply WATCHDOG
Christophe Leroy40159302018-11-21 08:51:45 +0000324 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100325 Select this to enable Xilinx Axi watchdog timer, which can be found on some
326 Xilinx Microblaze Platforms.
Christophe Leroy40159302018-11-21 08:51:45 +0000327
Ashok Reddy Somaf4aecf42020-03-11 03:06:04 -0600328config WDT_XILINX
329 bool "Xilinx window watchdog timer support"
330 depends on WDT && ARCH_VERSAL
331 select REGMAP
332 imply WATCHDOG
333 help
334 Select this to enable Xilinx window watchdog timer, which can be found on
335 Xilinx Versal Platforms.
336
Andy Shevchenkod13a8a32019-06-21 13:28:08 +0300337config WDT_TANGIER
338 bool "Intel Tangier watchdog timer support"
339 depends on WDT && INTEL_MID
340 help
341 This enables support for watchdog controller available on
342 Intel Tangier SoC. If you're using a board with Intel Tangier
343 SoC, say Y here.
344
Marek Vasut55ec91b2019-06-09 03:46:21 +0200345config SPL_WDT
346 bool "Enable driver model for watchdog timer drivers in SPL"
347 depends on SPL_DM
348 help
349 Enable driver model for watchdog timer in SPL.
350 This is similar to CONFIG_WDT in U-Boot.
351
Ye Li62862b62017-02-22 16:21:48 +0800352endmenu