blob: d306054a8c241248e4df938f509de5e981310d99 [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
15 default y
16 help
17 Automatically start watchdog timer and start servicing it during
18 init phase. Enabled by default. Disable this option if you want
19 to compile U-Boot with CONFIG_WDT support but do not want to
20 activate watchdog, like when CONFIG_WDT option is disabled. You
21 would be able to start watchdog manually by 'wdt' command. Useful
22 when you want to have support for 'wdt' command but do not want
23 to have watchdog enabled by default.
24
Heiko Schocherf409f1a2019-09-30 09:33:43 +020025config WATCHDOG_TIMEOUT_MSECS
26 int "Watchdog timeout in msec"
Tom Rinieac76b82021-09-09 07:54:50 -040027 default 128000 if ARCH_MX31 || ARCH_MX5 || ARCH_MX6
Heiko Schocherf409f1a2019-09-30 09:33:43 +020028 default 128000 if ARCH_MX7 || ARCH_VF610
29 default 30000 if ARCH_SOCFPGA
Samuel Holland65c982b2021-08-22 13:53:27 -050030 default 16000 if ARCH_SUNXI
Heiko Schocherf409f1a2019-09-30 09:33:43 +020031 default 60000
32 help
33 Watchdog timeout in msec
34
Paolo Pisati6213c552017-02-10 17:28:05 +010035config HW_WATCHDOG
36 bool
37
Patrice Chotard4a0ae732019-04-30 17:26:20 +020038config IMX_WATCHDOG
39 bool "Enable Watchdog Timer support for IMX and LSCH2 of NXP"
Marek Vasutf7fc5c12019-06-09 03:46:22 +020040 select HW_WATCHDOG if !WDT
Patrice Chotard4a0ae732019-04-30 17:26:20 +020041 help
Michal Simek5288b9b2020-03-11 12:26:53 +010042 Select this to enable the IMX and LSCH2 of Layerscape watchdog
43 driver.
Patrice Chotard4a0ae732019-04-30 17:26:20 +020044
Michael Walleb9c72d02020-09-24 10:09:15 +020045config WATCHDOG_RESET_DISABLE
46 bool "Disable reset watchdog"
47 depends on IMX_WATCHDOG
48 help
49 Disable reset watchdog, which can let WATCHDOG_RESET invalid, so
50 that the watchdog will not be fed in u-boot.
51
Tom Rini4a3e7982017-05-12 22:33:24 -040052config OMAP_WATCHDOG
53 bool "TI OMAP watchdog driver"
54 depends on ARCH_OMAP2PLUS
55 select HW_WATCHDOG
Tom Rini4a3e7982017-05-12 22:33:24 -040056 help
57 Say Y here to enable the OMAP3+ watchdog driver.
Felipe Balbi24252da2017-07-05 20:33:20 +030058
Ye Li62862b62017-02-22 16:21:48 +080059config ULP_WATCHDOG
60 bool "i.MX7ULP watchdog"
61 help
62 Say Y here to enable i.MX7ULP watchdog driver.
63
Marek Vasut40919d92019-06-27 00:26:34 +020064config DESIGNWARE_WATCHDOG
65 bool "Designware watchdog timer support"
Marek Vasut8655f672019-06-27 01:19:23 +020066 select HW_WATCHDOG if !WDT
Jagan Tekiad269572020-04-20 23:34:13 +053067 default y if WDT && ROCKCHIP_RK3399
Marek Vasut40919d92019-06-27 00:26:34 +020068 help
Michal Simek5288b9b2020-03-11 12:26:53 +010069 Enable this to support Designware Watchdog Timer IP, present e.g.
70 on Altera SoCFPGA SoCs.
Marek Vasut40919d92019-06-27 00:26:34 +020071
maxims@google.comdaea6d42017-04-17 12:00:21 -070072config WDT
73 bool "Enable driver model for watchdog timer drivers"
74 depends on DM
Stefan Roese502acb02019-04-11 15:58:44 +020075 imply WATCHDOG
maxims@google.comdaea6d42017-04-17 12:00:21 -070076 help
77 Enable driver model for watchdog timer. At the moment the API
78 is very simple and only supports four operations:
Patrice Chotard0a060242019-04-25 12:57:28 +020079 start, stop, reset and expire_now (expire immediately).
maxims@google.comdaea6d42017-04-17 12:00:21 -070080 What exactly happens when the timer expires is up to a particular
81 device/driver.
82
Marek Behúna86b97d2018-04-24 17:21:30 +020083config WDT_ARMADA_37XX
84 bool "Marvell Armada 37xx watchdog timer support"
85 depends on WDT && ARMADA_3700
86 help
Michal Simek5288b9b2020-03-11 12:26:53 +010087 Enable this to support Watchdog Timer on Marvell Armada 37xx SoC.
88 There are 4 possible clocks which can be used on these SoCs. This
89 driver uses the second clock (ID 1), assuming that so will also
90 Linux's driver.
Marek Behúna86b97d2018-04-24 17:21:30 +020091
maxims@google.comdf35df22017-04-17 12:00:22 -070092config WDT_ASPEED
93 bool "Aspeed ast2400/ast2500 watchdog timer support"
94 depends on WDT
95 default y if ARCH_ASPEED
96 help
97 Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices.
98 The watchdog timer is stopped when initialized. It performs reset, either
99 full SoC reset or CPU or just some peripherals, based on the flags.
100 It currently does not support Boot Flash Addressing Mode Detection or
101 Second Boot.
102
Chia-Wei, Wang67ef5872020-12-14 13:54:25 +0800103config WDT_AST2600
104 bool "Aspeed AST2600 watchdog timer support"
105 depends on WDT
106 default y if ASPEED_AST2600
107 help
108 Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices.
109 The watchdog timer is stopped when initialized. It performs reset, either
110 full SoC reset or CPU or just some peripherals, based on the flags.
111
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200112config WDT_AT91
113 bool "AT91 watchdog timer support"
114 depends on WDT
115 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100116 Select this to enable Microchip watchdog timer, which can be found on
117 some AT91 devices.
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200118
Álvaro Fernández Rojasd8759a52017-05-16 18:29:09 +0200119config WDT_BCM6345
120 bool "BCM6345 watchdog timer support"
Philippe Reynes09b864c2020-01-07 20:14:11 +0100121 depends on WDT && (ARCH_BMIPS || ARCH_BCM68360 || \
122 ARCH_BCM6858 || ARCH_BCM63158)
Álvaro Fernández Rojasd8759a52017-05-16 18:29:09 +0200123 help
124 Select this to enable watchdog timer for BCM6345 SoCs.
125 The watchdog timer is stopped when initialized.
126 It performs full SoC reset.
127
Chris Packham69a430f2021-03-05 16:32:58 +1300128config WDT_BOOKE
129 bool "PowerPC Book-E watchdog driver"
130 depends on WDT && MPC85xx
131 help
132 Watchdog driver for PowerPC Book-E chips, such as the Freescale
133 MPC85xx SOCs and the IBM PowerPC 440.
134
Shreenidhi Shedi0787c7c2018-02-21 16:50:20 +0100135config WDT_CDNS
136 bool "Cadence watchdog timer support"
137 depends on WDT
138 imply WATCHDOG
139 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100140 Select this to enable Cadence watchdog timer, which can be found on some
141 Xilinx Microzed Platform.
Shreenidhi Shedi0787c7c2018-02-21 16:50:20 +0100142
Jason Lidd2b30b2020-01-30 12:34:57 -0800143config WDT_CORTINA
144 bool "Cortina Access CAxxxx watchdog timer support"
145 depends on WDT
146 help
147 Cortina Access CAxxxx watchdog timer support.
148 This driver support all CPU ISAs supported by Cortina
Michal Simek5288b9b2020-03-11 12:26:53 +0100149 Access CAxxxx SoCs.
Jason Lidd2b30b2020-01-30 12:34:57 -0800150
Rasmus Villemoes08667602021-08-19 11:57:04 +0200151config WDT_GPIO
152 bool "External gpio watchdog support"
153 depends on WDT
154 depends on DM_GPIO
155 help
156 Support for external watchdog fed by toggling a gpio. See
157 doc/device-tree-bindings/watchdog/gpio-wdt.txt for
158 information on how to describe the watchdog in device tree.
159
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200160config WDT_MPC8xx
161 bool "MPC8xx watchdog timer support"
162 depends on WDT && MPC8xx
Christophe Leroy545e8942020-02-20 07:39:51 +0000163 select HW_WATCHDOG
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200164 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100165 Select this to enable mpc8xx watchdog timer
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200166
developer33a3bc92020-11-12 16:36:28 +0800167config WDT_MT7620
168 bool "MediaTek MT7620 watchdog timer support"
169 depends on WDT && SOC_MT7620
170 help
171 Select this to enable watchdog timer on MediaTek MT7620 and earlier
172 SoC chips.
173
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200174config WDT_MT7621
175 bool "MediaTek MT7621 watchdog timer support"
176 depends on WDT && SOC_MT7628
177 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100178 Select this to enable Ralink / Mediatek watchdog timer,
179 which can be found on some MediaTek chips.
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200180
developer93053be2018-11-15 10:07:57 +0800181config WDT_MTK
182 bool "MediaTek watchdog timer support"
183 depends on WDT && ARCH_MEDIATEK
184 help
185 Select this to enable watchdog timer for MediaTek SoCs.
186 The watchdog timer is stopped when initialized.
187 It performs full SoC reset.
188
Suneel Garapati7072b172019-10-21 16:09:36 -0700189config WDT_OCTEONTX
190 bool "OcteonTX core watchdog support"
191 depends on WDT && (ARCH_OCTEONTX || ARCH_OCTEONTX2)
192 default y
193 imply WATCHDOG
194 help
195 This enables OcteonTX watchdog driver, which can be
196 found on OcteonTX/TX2 chipsets and inline with driver model.
197 Only supports watchdog reset.
198
Suniel Mahesh1c783ab2019-07-31 21:54:06 +0530199config WDT_OMAP3
Michal Simek5288b9b2020-03-11 12:26:53 +0100200 bool "TI OMAP watchdog timer support"
201 depends on WDT && ARCH_OMAP2PLUS
202 default y if AM33XX
203 help
Suniel Mahesh1c783ab2019-07-31 21:54:06 +0530204 This enables OMAP3+ watchdog timer driver, which can be
205 found on some TI chipsets and inline with driver model.
206
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200207config WDT_ORION
208 bool "Orion watchdog timer support"
Shreenidhi Shedi335fb5b2018-07-15 02:05:41 +0530209 depends on WDT
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200210 select CLK
Shreenidhi Shedi335fb5b2018-07-15 02:05:41 +0530211 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100212 Select this to enable Orion watchdog timer, which can be found on some
213 Marvell Armada chips.
Shreenidhi Shedi335fb5b2018-07-15 02:05:41 +0530214
Jan Kiszkaddf21d52020-06-23 13:15:08 +0200215config WDT_K3_RTI
216 bool "Texas Instruments K3 RTI watchdog"
217 depends on WDT && ARCH_K3
218 help
219 Say Y here if you want to include support for the K3 watchdog
220 timer (RTI module) available in the K3 generation of processors.
221
Jan Kiszkad35cdfb2021-09-18 08:17:55 +0200222if WDT_K3_RTI
223
224config WDT_K3_RTI_LOAD_FW
225 bool "Load watchdog firmware"
226 depends on REMOTEPROC
227 help
228 Automatically load the specified firmware image into the MCU R5F
229 core 0. On the AM65x, this firmware is supposed to handle the expiry
230 of the watchdog timer, typically by resetting the system.
231
232config WDT_K3_RTI_FW_FILE
233 string "Watchdog firmware image file"
234 default "k3-rti-wdt.fw"
235 depends on WDT_K3_RTI_LOAD_FW
236 help
237 Firmware image to be embedded into U-Boot and loaded on watchdog
238 start.
239
240endif
241
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200242config WDT_SANDBOX
243 bool "Enable Watchdog Timer support for Sandbox"
244 depends on SANDBOX && WDT
Xiaoliang Yang4161dc22018-10-18 17:14:19 +0800245 help
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200246 Enable Watchdog Timer support in Sandbox. This is a dummy device that
247 can be probed and supports all of the methods of WDT, but does not
248 really do anything.
Xiaoliang Yang4161dc22018-10-18 17:14:19 +0800249
Zhao Qiangfb816fa2020-07-10 16:55:18 +0800250config WDT_SBSA
251 bool "SBSA watchdog timer support"
252 depends on WDT
253 help
254 Select this to enable SBSA watchdog timer.
255 This driver can operate ARM SBSA Generic Watchdog as a single stage.
256 In the single stage mode, when the timeout is reached, your system
257 will be reset by WS1. The first signal (WS0) is ignored.
258
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200259config WDT_SP805
260 bool "SP805 watchdog timer support"
Prasanthi Chellakumar0509c4e2018-10-09 11:46:40 -0700261 depends on WDT
262 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100263 Select this to enable SP805 watchdog timer, which can be found on some
264 nxp layerscape chips.
Stefan Roese84569692018-10-04 13:39:07 +0200265
Patrice Chotard473b2442019-04-30 17:26:22 +0200266config WDT_STM32MP
267 bool "IWDG watchdog driver for STM32 MP's family"
268 depends on WDT
269 imply WATCHDOG
270 help
271 Enable the STM32 watchdog (IWDG) driver. Enable support to
272 configure STM32's on-SoC watchdog.
273
Samuel Holland65c982b2021-08-22 13:53:27 -0500274config WDT_SUNXI
275 bool "Allwinner sunxi watchdog timer support"
276 depends on WDT && ARCH_SUNXI
277 default y
278 help
279 Enable support for the watchdog timer in Allwinner sunxi SoCs.
280
Patrice Chotard4a0ae732019-04-30 17:26:20 +0200281config XILINX_TB_WATCHDOG
282 bool "Xilinx Axi watchdog timer support"
283 depends on WDT
284 imply WATCHDOG
Christophe Leroy40159302018-11-21 08:51:45 +0000285 help
Michal Simek5288b9b2020-03-11 12:26:53 +0100286 Select this to enable Xilinx Axi watchdog timer, which can be found on some
287 Xilinx Microblaze Platforms.
Christophe Leroy40159302018-11-21 08:51:45 +0000288
Ashok Reddy Somaf4aecf42020-03-11 03:06:04 -0600289config WDT_XILINX
290 bool "Xilinx window watchdog timer support"
291 depends on WDT && ARCH_VERSAL
292 select REGMAP
293 imply WATCHDOG
294 help
295 Select this to enable Xilinx window watchdog timer, which can be found on
296 Xilinx Versal Platforms.
297
Andy Shevchenkod13a8a32019-06-21 13:28:08 +0300298config WDT_TANGIER
299 bool "Intel Tangier watchdog timer support"
300 depends on WDT && INTEL_MID
301 help
302 This enables support for watchdog controller available on
303 Intel Tangier SoC. If you're using a board with Intel Tangier
304 SoC, say Y here.
305
Marek Vasut55ec91b2019-06-09 03:46:21 +0200306config SPL_WDT
307 bool "Enable driver model for watchdog timer drivers in SPL"
308 depends on SPL_DM
309 help
310 Enable driver model for watchdog timer in SPL.
311 This is similar to CONFIG_WDT in U-Boot.
312
Ye Li62862b62017-02-22 16:21:48 +0800313endmenu