summaryrefslogtreecommitdiff
path: root/drivers/watchdog/Kconfig
blob: 646663528a66ace0460698fc9c8f840cac423968 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
menu "Watchdog Timer Support"

config WATCHDOG
	bool "Enable U-Boot watchdog reset"
	depends on !HW_WATCHDOG
	select CYCLIC
	help
	  This option enables U-Boot watchdog support where U-Boot is using
	  watchdog_reset function to service watchdog device in U-Boot. Enable
	  this option if you want to service enabled watchdog by U-Boot. Disable
	  this option if you want U-Boot to start watchdog but never service it.

config WATCHDOG_AUTOSTART
	bool "Automatically start watchdog timer"
	depends on WDT
	default n if ARCH_SUNXI
	default y
	help
	  Automatically start watchdog timer and start servicing it during
	  init phase. Enabled by default. Disable this option if you want
	  to compile U-Boot with CONFIG_WDT support but do not want to
	  activate watchdog, like when CONFIG_WDT option is disabled. You
	  would be able to start watchdog manually by 'wdt' command. Useful
	  when you want to have support for 'wdt' command but do not want
	  to have watchdog enabled by default.

config WATCHDOG_TIMEOUT_MSECS
	int "Watchdog timeout in msec"
	default 128000 if ARCH_MX31 || ARCH_MX5 || ARCH_MX6
	default 128000 if ARCH_MX7 || ARCH_VF610
	default 30000 if ARCH_SOCFPGA
	default 16000 if ARCH_SUNXI
	default 5376 if ULP_WATCHDOG
	default 15000 if ARCH_BCM283X
	default 60000
	help
	  Watchdog timeout in msec

config HW_WATCHDOG
	bool

config IMX_WATCHDOG
	bool "Enable Watchdog Timer support for IMX and LSCH2 of NXP"
	select HW_WATCHDOG if !WDT
	help
	  Select this to enable the IMX and LSCH2 of Layerscape watchdog
	  driver.

config WATCHDOG_RESET_DISABLE
	bool "Disable reset watchdog"
	depends on IMX_WATCHDOG
	help
	  Disable reset watchdog, which can let WATCHDOG_RESET invalid, so
	  that the watchdog will not be fed in u-boot.

config OMAP_WATCHDOG
	bool "TI OMAP watchdog driver"
	depends on ARCH_OMAP2PLUS
	select HW_WATCHDOG
	help
	  Say Y here to enable the OMAP3+ watchdog driver.

config ULP_WATCHDOG
	bool "i.MX7ULP watchdog"
	help
	  Say Y here to enable i.MX7ULP watchdog driver.

config DESIGNWARE_WATCHDOG
	bool "Designware watchdog timer support"
	depends on WDT
	default y if ROCKCHIP_RK3399
	help
	  Enable this to support Designware Watchdog Timer IP, present e.g.
	  on Altera SoCFPGA SoCs.

config WDT
	bool "Enable driver model for watchdog timer drivers"
	depends on DM
	imply WATCHDOG
	select CYCLIC
	help
	  Enable driver model for watchdog timer. At the moment the API
	  is very simple and only supports four operations:
	  start, stop, reset and expire_now (expire immediately).
	  What exactly happens when the timer expires is up to a particular
	  device/driver.

config WDT_APPLE
	bool "Apple watchdog timer support"
	depends on WDT
	default y if ARCH_APPLE
	help
	  Enable support for the watchdog timer on Apple SoCs.
	  The watchdog will perform a full SoC reset resulting in a
	  reboot of the entire system.

config WDT_ARMADA_37XX
	bool "Marvell Armada 37xx watchdog timer support"
	depends on WDT && ARMADA_3700
	help
	  Enable this to support Watchdog Timer on Marvell Armada 37xx SoC.
	  There are 4 possible clocks which can be used on these SoCs. This
	  driver uses the second clock (ID 1), assuming that so will also
	  Linux's driver.

config WDT_ASPEED
	bool "Aspeed ast2400/ast2500 watchdog timer support"
	depends on WDT
	default y if ARCH_ASPEED
	help
	  Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices.
	  The watchdog timer is stopped when initialized. It performs reset, either
	  full SoC reset or CPU or just some peripherals, based on the flags.
	  It currently does not support Boot Flash Addressing Mode Detection or
	  Second Boot.

config WDT_AST2600
	bool "Aspeed AST2600 watchdog timer support"
	depends on WDT
	default y if ASPEED_AST2600
	help
	  Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices.
	  The watchdog timer is stopped when initialized. It performs reset, either
	  full SoC reset or CPU or just some peripherals, based on the flags.

config WDT_AT91
	bool "AT91 watchdog timer support"
	depends on WDT
	help
	  Select this to enable Microchip watchdog timer, which can be found on
	  some AT91 devices.

config WDT_BCM6345
	bool "BCM6345 watchdog timer support"
	depends on WDT && (ARCH_BMIPS || BCM6856 || \
			   BCM6858 || BCM63158 || BCM6855)
	help
	  Select this to enable watchdog timer for BCM6345 SoCs.
	  The watchdog timer is stopped when initialized.
	  It performs full SoC reset.

config WDT_BOOKE
	bool "PowerPC Book-E watchdog driver"
	depends on WDT && MPC85xx
	help
	  Watchdog driver for PowerPC Book-E chips, such as the Freescale
	  MPC85xx SOCs and the IBM PowerPC 440.

config WDT_CDNS
	bool "Cadence watchdog timer support"
	depends on WDT
	imply WATCHDOG
	help
	  Select this to enable Cadence watchdog timer, which can be found on some
	  Xilinx Microzed Platform.

config WDT_CORTINA
	bool "Cortina Access CAxxxx watchdog timer support"
	depends on WDT
	help
	  Cortina Access CAxxxx watchdog timer support.
	  This driver support all CPU ISAs supported by Cortina
	  Access CAxxxx SoCs.

config WDT_GPIO
	bool "External gpio watchdog support"
	depends on WDT
	depends on DM_GPIO
	help
	  Support for external watchdog fed by toggling a gpio. See
	  doc/device-tree-bindings/watchdog/gpio-wdt.txt for
	  information on how to describe the watchdog in device tree.

config WDT_MAX6370
	bool "MAX6370 watchdog timer support"
	depends on WDT
	select DM_GPIO
	help
	  Select this to enable max6370 watchdog timer.

config WDT_MESON_GXBB
	bool "Amlogic watchdog timer support"
	depends on WDT
	help
	  Select this to enable Meson watchdog timer,
	  which can be found on some Amlogic platforms.

config WDT_MPC8xxx
	bool "MPC8xxx watchdog timer support"
	depends on WDT && (MPC8xx || MPC83xx)
	help
	  Select this to enable mpc8xxx watchdog timer

config WDT_MPC8xxx_BME
	bool "Enable MPC8xx Bus Monitoring"
	depends on WDT_MPC8xxx && MPC8xx
	help
	  Select this to enable mpc8xx Bus Monitor.

config WDT_MPC8xxx_BMT
	int "MPC8xx Bus Monitor Timing" if WDT_MPC8xxx_BME
	range 0 255
	default 255
	depends on WDT_MPC8xxx
	help
	  Bus monitor timing. Defines the timeout period, in 8 system clock
	  resolution, for the bus monitor.

	  Maximum timeout is 2,040 clocks (255 x 8).

config WDT_MT7620
	bool "MediaTek MT7620 watchdog timer support"
	depends on WDT && SOC_MT7620
	help
	  Select this to enable watchdog timer on MediaTek MT7620 and earlier
	  SoC chips.

config WDT_MT7621
	bool "MediaTek MT7621 watchdog timer support"
	depends on WDT && (SOC_MT7621 || SOC_MT7628)
	help
	  Select this to enable Ralink / Mediatek watchdog timer,
	  which can be found on some MediaTek chips.

config WDT_MTK
	bool "MediaTek watchdog timer support"
	depends on WDT && ARCH_MEDIATEK
	help
	  Select this to enable watchdog timer for MediaTek SoCs.
	  The watchdog timer is stopped when initialized.
	  It performs full SoC reset.

config WDT_NPCM
	bool "Nuvoton watchdog timer support"
	depends on WDT && ARCH_NPCM
	help
	  This enables Nuvoton npcm7xx/npcm8xx watchdog timer driver,
	  The watchdog timer is stopped when initialized.
	  It performs full SoC reset.

config WDT_OCTEONTX
	bool "Octeon core watchdog support"
	depends on WDT && (ARCH_OCTEON || ARCH_OCTEONTX || ARCH_OCTEONTX2)
	default y
	imply WATCHDOG
	help
	  This enables the Octeon watchdog driver, which can be found on
	  various Octeon parts such as Octeon II/III and OcteonTX/TX2.

config WDT_OMAP3
	bool "TI OMAP watchdog timer support"
	depends on WDT && ARCH_OMAP2PLUS
	default y if AM33XX
	help
	  This enables OMAP3+ watchdog timer driver, which can be
	  found on some TI chipsets and inline with driver model.

config WDT_ORION
	bool "Orion watchdog timer support"
	depends on WDT
	select CLK
	help
	  Select this to enable Orion watchdog timer, which can be found on some
	  Marvell Armada chips.

config WDT_K3_RTI
	bool "Texas Instruments K3 RTI watchdog"
	depends on WDT && ARCH_K3
	help
	  Say Y here if you want to include support for the K3 watchdog
	  timer (RTI module) available in the K3 generation of processors.

if WDT_K3_RTI

config WDT_K3_RTI_LOAD_FW
	bool "Load watchdog firmware"
	depends on REMOTEPROC
	help
	  Automatically load the specified firmware image into the MCU R5F
	  core 0. On the AM65x, this firmware is supposed to handle the expiry
	  of the watchdog timer, typically by resetting the system.

config WDT_K3_RTI_FW_FILE
	string "Watchdog firmware image file"
	default "k3-rti-wdt.fw"
	depends on WDT_K3_RTI_LOAD_FW
	help
	  Firmware image to be embedded into U-Boot and loaded on watchdog
	  start.

endif

config WDT_SANDBOX
	bool "Enable Watchdog Timer support for Sandbox"
	depends on SANDBOX && WDT
	help
	  Enable Watchdog Timer support in Sandbox. This is a dummy device that
	  can be probed and supports all of the methods of WDT, but does not
	  really do anything.

config WDT_ALARM_SANDBOX
	bool "Enable SIGALRM-based Watchdog Timer support for Sandbox"
	depends on SANDBOX && WDT
	help
	  Enable support for a SIGALRM-based watchdog timer in Sandbox. This is
	  a watchdog device based on the host OS' alarm() function, which will
	  kill the sandbox with SIGALRM unless properly maintained.

config WDT_SBSA
	bool "SBSA watchdog timer support"
	depends on WDT
	help
	   Select this to enable SBSA watchdog timer.
	   This driver can operate ARM SBSA Generic Watchdog as a single stage.
	   In the single stage mode, when the timeout is reached, your system
	   will be reset by WS1. The first signal (WS0) is ignored.

config WDT_SL28CPLD
	bool "sl28cpld watchdog timer support"
	depends on WDT && SL28CPLD
	help
	  Enable support for the watchdog timer in the Kontron sl28cpld
	  management controller.

config WDT_SP805
	bool "SP805 watchdog timer support"
	depends on WDT
	help
	  Select this to enable SP805 watchdog timer, which can be found on some
	  nxp layerscape chips.

config WDT_STM32MP
	bool "IWDG watchdog driver for STM32 MP's family"
	depends on WDT
	imply WATCHDOG
	help
	  Enable the STM32 watchdog (IWDG) driver. Enable support to
	  configure STM32's on-SoC watchdog.

config WDT_SUNXI
	bool "Allwinner sunxi watchdog timer support"
	depends on WDT && ARCH_SUNXI
	default y
	help
	  Enable support for the watchdog timer in Allwinner sunxi SoCs.

config WDT_BCM2835
	bool "Broadcom 2835 watchdog timer support"
	depends on WDT && ARCH_BCM283X
	default y
	help
	  Enable support for the watchdog timer in Broadcom 283X SoCs such
	  as Raspberry Pi boards.

config XILINX_TB_WATCHDOG
	bool "Xilinx Axi watchdog timer support"
	depends on WDT
	imply WATCHDOG
	help
	  Select this to enable Xilinx Axi watchdog timer, which can be found on some
	  Xilinx Microblaze Platforms.

config WDT_XILINX
	bool "Xilinx window watchdog timer support"
	depends on WDT && ARCH_VERSAL
	select REGMAP
	imply WATCHDOG
	help
	  Select this to enable Xilinx window watchdog timer, which can be found on
	  Xilinx Versal Platforms.

config WDT_TANGIER
	bool "Intel Tangier watchdog timer support"
	depends on WDT && INTEL_MID
	help
	  This enables support for watchdog controller available on
	  Intel Tangier SoC. If you're using a board with Intel Tangier
	  SoC, say Y here.

config WDT_ARM_SMC
	bool "ARM SMC watchdog timer support"
	depends on WDT && ARM_SMCCC
	imply WATCHDOG
	help
	  Select this to enable Arm SMC watchdog timer. This watchdog will manage
	  a watchdog based on ARM SMCCC communication.

config SPL_WDT
	bool "Enable driver model for watchdog timer drivers in SPL"
	depends on SPL_DM
	help
	  Enable driver model for watchdog timer in SPL.
	  This is similar to CONFIG_WDT in U-Boot.

config WDT_FTWDT010
	bool "Faraday Technology ftwdt010 watchdog timer support"
	depends on WDT
	imply WATCHDOG
	help
	  Faraday Technology ftwdt010 watchdog is an architecture independent
	  watchdog. It is usually used in SoC chip design.
endmenu