blob: 1177f17fd8a2c7784516f593c1e9700fef146bb3 [file] [log] [blame]
maxims@google.com0753bc22017-04-17 12:00:21 -07001menu "Watchdog Timer Support"
Ye Li253531b2017-02-22 16:21:48 +08002
Shreenidhi Shedi42537ca2018-02-21 16:50:20 +01003config WATCHDOG
4 bool "Enable U-Boot watchdog reset"
Christophe Leroy7e00e902020-02-26 16:17:52 +00005 depends on !HW_WATCHDOG
Shreenidhi Shedi42537ca2018-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ár830d29a2021-03-09 14:26:56 +010012config WATCHDOG_AUTOSTART
13 bool "Automatically start watchdog timer"
14 depends on WDT
Heinrich Schuchardt86798ee2021-11-05 19:34:31 +010015 default n if ARCH_SUNXI
Pali Rohár830d29a2021-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 Schocherca51ef72019-09-30 09:33:43 +020026config WATCHDOG_TIMEOUT_MSECS
27 int "Watchdog timeout in msec"
Tom Rini8ba59602021-09-09 07:54:50 -040028 default 128000 if ARCH_MX31 || ARCH_MX5 || ARCH_MX6
Heiko Schocherca51ef72019-09-30 09:33:43 +020029 default 128000 if ARCH_MX7 || ARCH_VF610
30 default 30000 if ARCH_SOCFPGA
Samuel Holland93d34fa2021-08-22 13:53:27 -050031 default 16000 if ARCH_SUNXI
Heiko Schocherca51ef72019-09-30 09:33:43 +020032 default 60000
33 help
34 Watchdog timeout in msec
35
Paolo Pisati45a6d232017-02-10 17:28:05 +010036config HW_WATCHDOG
37 bool
38
Patrice Chotardb3134ff2019-04-30 17:26:20 +020039config IMX_WATCHDOG
40 bool "Enable Watchdog Timer support for IMX and LSCH2 of NXP"
Marek Vasut4b969de2019-06-09 03:46:22 +020041 select HW_WATCHDOG if !WDT
Patrice Chotardb3134ff2019-04-30 17:26:20 +020042 help
Michal Simek92a19be2020-03-11 12:26:53 +010043 Select this to enable the IMX and LSCH2 of Layerscape watchdog
44 driver.
Patrice Chotardb3134ff2019-04-30 17:26:20 +020045
Michael Walle95b3d6a2020-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 Rini897f7062017-05-12 22:33:24 -040053config OMAP_WATCHDOG
54 bool "TI OMAP watchdog driver"
55 depends on ARCH_OMAP2PLUS
56 select HW_WATCHDOG
Tom Rini897f7062017-05-12 22:33:24 -040057 help
58 Say Y here to enable the OMAP3+ watchdog driver.
Felipe Balbi8f8a12d2017-07-05 20:33:20 +030059
Ye Li253531b2017-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 Vasut8941f842019-06-27 00:26:34 +020065config DESIGNWARE_WATCHDOG
66 bool "Designware watchdog timer support"
Marek Vasutcf8c8362019-06-27 01:19:23 +020067 select HW_WATCHDOG if !WDT
Jagan Teki0a08a612020-04-20 23:34:13 +053068 default y if WDT && ROCKCHIP_RK3399
Marek Vasut8941f842019-06-27 00:26:34 +020069 help
Michal Simek92a19be2020-03-11 12:26:53 +010070 Enable this to support Designware Watchdog Timer IP, present e.g.
71 on Altera SoCFPGA SoCs.
Marek Vasut8941f842019-06-27 00:26:34 +020072
maxims@google.com0753bc22017-04-17 12:00:21 -070073config WDT
74 bool "Enable driver model for watchdog timer drivers"
75 depends on DM
Stefan Roese06985282019-04-11 15:58:44 +020076 imply WATCHDOG
maxims@google.com0753bc22017-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 Chotard8d4f91b2019-04-25 12:57:28 +020080 start, stop, reset and expire_now (expire immediately).
maxims@google.com0753bc22017-04-17 12:00:21 -070081 What exactly happens when the timer expires is up to a particular
82 device/driver.
83
Marek Behún2b69a672018-04-24 17:21:30 +020084config WDT_ARMADA_37XX
85 bool "Marvell Armada 37xx watchdog timer support"
86 depends on WDT && ARMADA_3700
87 help
Michal Simek92a19be2020-03-11 12:26:53 +010088 Enable this to support Watchdog Timer on Marvell Armada 37xx SoC.
89 There are 4 possible clocks which can be used on these SoCs. This
90 driver uses the second clock (ID 1), assuming that so will also
91 Linux's driver.
Marek Behún2b69a672018-04-24 17:21:30 +020092
maxims@google.com1eb0a462017-04-17 12:00:22 -070093config WDT_ASPEED
94 bool "Aspeed ast2400/ast2500 watchdog timer support"
95 depends on WDT
96 default y if ARCH_ASPEED
97 help
98 Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices.
99 The watchdog timer is stopped when initialized. It performs reset, either
100 full SoC reset or CPU or just some peripherals, based on the flags.
101 It currently does not support Boot Flash Addressing Mode Detection or
102 Second Boot.
103
Chia-Wei, Wang337d95c2020-12-14 13:54:25 +0800104config WDT_AST2600
105 bool "Aspeed AST2600 watchdog timer support"
106 depends on WDT
107 default y if ASPEED_AST2600
108 help
109 Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices.
110 The watchdog timer is stopped when initialized. It performs reset, either
111 full SoC reset or CPU or just some peripherals, based on the flags.
112
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200113config WDT_AT91
114 bool "AT91 watchdog timer support"
115 depends on WDT
116 help
Michal Simek92a19be2020-03-11 12:26:53 +0100117 Select this to enable Microchip watchdog timer, which can be found on
118 some AT91 devices.
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200119
Álvaro Fernández Rojas77331932017-05-16 18:29:09 +0200120config WDT_BCM6345
121 bool "BCM6345 watchdog timer support"
Philippe Reynesd0edec62020-01-07 20:14:11 +0100122 depends on WDT && (ARCH_BMIPS || ARCH_BCM68360 || \
123 ARCH_BCM6858 || ARCH_BCM63158)
Álvaro Fernández Rojas77331932017-05-16 18:29:09 +0200124 help
125 Select this to enable watchdog timer for BCM6345 SoCs.
126 The watchdog timer is stopped when initialized.
127 It performs full SoC reset.
128
Chris Packham017af7f2021-03-05 16:32:58 +1300129config WDT_BOOKE
130 bool "PowerPC Book-E watchdog driver"
131 depends on WDT && MPC85xx
132 help
133 Watchdog driver for PowerPC Book-E chips, such as the Freescale
134 MPC85xx SOCs and the IBM PowerPC 440.
135
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200136config WDT_CDNS
137 bool "Cadence watchdog timer support"
138 depends on WDT
139 imply WATCHDOG
140 help
Michal Simek92a19be2020-03-11 12:26:53 +0100141 Select this to enable Cadence watchdog timer, which can be found on some
142 Xilinx Microzed Platform.
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200143
Jason Li7f54b832020-01-30 12:34:57 -0800144config WDT_CORTINA
145 bool "Cortina Access CAxxxx watchdog timer support"
146 depends on WDT
147 help
148 Cortina Access CAxxxx watchdog timer support.
149 This driver support all CPU ISAs supported by Cortina
Michal Simek92a19be2020-03-11 12:26:53 +0100150 Access CAxxxx SoCs.
Jason Li7f54b832020-01-30 12:34:57 -0800151
Rasmus Villemoes2ac84902021-08-19 11:57:04 +0200152config WDT_GPIO
153 bool "External gpio watchdog support"
154 depends on WDT
155 depends on DM_GPIO
156 help
157 Support for external watchdog fed by toggling a gpio. See
158 doc/device-tree-bindings/watchdog/gpio-wdt.txt for
159 information on how to describe the watchdog in device tree.
160
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200161config WDT_MPC8xx
162 bool "MPC8xx watchdog timer support"
163 depends on WDT && MPC8xx
Christophe Leroya6825602020-02-20 07:39:51 +0000164 select HW_WATCHDOG
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200165 help
Michal Simek92a19be2020-03-11 12:26:53 +0100166 Select this to enable mpc8xx watchdog timer
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200167
Weijie Gaobba4ec82020-11-12 16:36:28 +0800168config WDT_MT7620
169 bool "MediaTek MT7620 watchdog timer support"
170 depends on WDT && SOC_MT7620
171 help
172 Select this to enable watchdog timer on MediaTek MT7620 and earlier
173 SoC chips.
174
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200175config WDT_MT7621
176 bool "MediaTek MT7621 watchdog timer support"
177 depends on WDT && SOC_MT7628
178 help
Michal Simek92a19be2020-03-11 12:26:53 +0100179 Select this to enable Ralink / Mediatek watchdog timer,
180 which can be found on some MediaTek chips.
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200181
182config WDT_MTK
183 bool "MediaTek watchdog timer support"
184 depends on WDT && ARCH_MEDIATEK
185 help
186 Select this to enable watchdog timer for MediaTek SoCs.
187 The watchdog timer is stopped when initialized.
188 It performs full SoC reset.
189
Suneel Garapatiaf6ba902019-10-21 16:09:36 -0700190config WDT_OCTEONTX
191 bool "OcteonTX core watchdog support"
192 depends on WDT && (ARCH_OCTEONTX || ARCH_OCTEONTX2)
193 default y
194 imply WATCHDOG
195 help
196 This enables OcteonTX watchdog driver, which can be
197 found on OcteonTX/TX2 chipsets and inline with driver model.
198 Only supports watchdog reset.
199
Suniel Mahesh7659ea32019-07-31 21:54:06 +0530200config WDT_OMAP3
Michal Simek92a19be2020-03-11 12:26:53 +0100201 bool "TI OMAP watchdog timer support"
202 depends on WDT && ARCH_OMAP2PLUS
203 default y if AM33XX
204 help
Suniel Mahesh7659ea32019-07-31 21:54:06 +0530205 This enables OMAP3+ watchdog timer driver, which can be
206 found on some TI chipsets and inline with driver model.
207
Marek Behún2ab77042017-06-09 19:28:41 +0200208config WDT_ORION
209 bool "Orion watchdog timer support"
210 depends on WDT
Chris Packham8e427ba2019-02-18 10:30:53 +1300211 select CLK
Marek Behún2ab77042017-06-09 19:28:41 +0200212 help
Michal Simek92a19be2020-03-11 12:26:53 +0100213 Select this to enable Orion watchdog timer, which can be found on some
214 Marvell Armada chips.
Marek Behún2ab77042017-06-09 19:28:41 +0200215
Jan Kiszkad388f362020-06-23 13:15:08 +0200216config WDT_K3_RTI
217 bool "Texas Instruments K3 RTI watchdog"
218 depends on WDT && ARCH_K3
219 help
220 Say Y here if you want to include support for the K3 watchdog
221 timer (RTI module) available in the K3 generation of processors.
222
Jan Kiszkaf3efb1d2021-09-18 08:17:55 +0200223if WDT_K3_RTI
224
225config WDT_K3_RTI_LOAD_FW
226 bool "Load watchdog firmware"
227 depends on REMOTEPROC
228 help
229 Automatically load the specified firmware image into the MCU R5F
230 core 0. On the AM65x, this firmware is supposed to handle the expiry
231 of the watchdog timer, typically by resetting the system.
232
233config WDT_K3_RTI_FW_FILE
234 string "Watchdog firmware image file"
235 default "k3-rti-wdt.fw"
236 depends on WDT_K3_RTI_LOAD_FW
237 help
238 Firmware image to be embedded into U-Boot and loaded on watchdog
239 start.
240
241endif
242
Patrice Chotardb3134ff2019-04-30 17:26:20 +0200243config WDT_SANDBOX
244 bool "Enable Watchdog Timer support for Sandbox"
245 depends on SANDBOX && WDT
246 help
247 Enable Watchdog Timer support in Sandbox. This is a dummy device that
248 can be probed and supports all of the methods of WDT, but does not
249 really do anything.
250
Zhao Qiangf27d73e2020-07-10 16:55:18 +0800251config WDT_SBSA
252 bool "SBSA watchdog timer support"
253 depends on WDT
254 help
255 Select this to enable SBSA watchdog timer.
256 This driver can operate ARM SBSA Generic Watchdog as a single stage.
257 In the single stage mode, when the timeout is reached, your system
258 will be reset by WS1. The first signal (WS0) is ignored.
259
Qiang Zhao0652d9f2019-05-07 03:16:09 +0000260config WDT_SP805
261 bool "SP805 watchdog timer support"
262 depends on WDT
263 help
Michal Simek92a19be2020-03-11 12:26:53 +0100264 Select this to enable SP805 watchdog timer, which can be found on some
265 nxp layerscape chips.
Qiang Zhao0652d9f2019-05-07 03:16:09 +0000266
Patrice Chotard8c1007a2019-04-30 17:26:22 +0200267config WDT_STM32MP
268 bool "IWDG watchdog driver for STM32 MP's family"
269 depends on WDT
270 imply WATCHDOG
271 help
272 Enable the STM32 watchdog (IWDG) driver. Enable support to
273 configure STM32's on-SoC watchdog.
274
Samuel Holland93d34fa2021-08-22 13:53:27 -0500275config WDT_SUNXI
276 bool "Allwinner sunxi watchdog timer support"
277 depends on WDT && ARCH_SUNXI
278 default y
279 help
280 Enable support for the watchdog timer in Allwinner sunxi SoCs.
281
Shreenidhi Shedie0e9caa2018-07-15 02:05:41 +0530282config XILINX_TB_WATCHDOG
283 bool "Xilinx Axi watchdog timer support"
284 depends on WDT
285 imply WATCHDOG
286 help
Michal Simek92a19be2020-03-11 12:26:53 +0100287 Select this to enable Xilinx Axi watchdog timer, which can be found on some
288 Xilinx Microblaze Platforms.
Shreenidhi Shedie0e9caa2018-07-15 02:05:41 +0530289
Ashok Reddy Soma50283582020-03-11 03:06:04 -0600290config WDT_XILINX
291 bool "Xilinx window watchdog timer support"
292 depends on WDT && ARCH_VERSAL
293 select REGMAP
294 imply WATCHDOG
295 help
296 Select this to enable Xilinx window watchdog timer, which can be found on
297 Xilinx Versal Platforms.
298
Andy Shevchenkoc974a3d2019-06-21 13:28:08 +0300299config WDT_TANGIER
300 bool "Intel Tangier watchdog timer support"
301 depends on WDT && INTEL_MID
302 help
303 This enables support for watchdog controller available on
304 Intel Tangier SoC. If you're using a board with Intel Tangier
305 SoC, say Y here.
306
Marek Vasut6874cb72019-06-09 03:46:21 +0200307config SPL_WDT
308 bool "Enable driver model for watchdog timer drivers in SPL"
309 depends on SPL_DM
310 help
311 Enable driver model for watchdog timer in SPL.
312 This is similar to CONFIG_WDT in U-Boot.
313
Ye Li253531b2017-02-22 16:21:48 +0800314endmenu