1menu "Watchdog Timer Support"
2
3config WATCHDOG
4	bool "Enable U-Boot watchdog reset"
5	depends on !HW_WATCHDOG
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
12config WATCHDOG_TIMEOUT_MSECS
13	int "Watchdog timeout in msec"
14	default 128000 if ARCH_MX25 || ARCH_MX31 || ARCH_MX5 || ARCH_MX6
15	default 128000 if ARCH_MX7 || ARCH_VF610
16	default 30000 if ARCH_SOCFPGA
17	default 60000
18	help
19	  Watchdog timeout in msec
20
21config HW_WATCHDOG
22	bool
23
24config IMX_WATCHDOG
25	bool "Enable Watchdog Timer support for IMX and LSCH2 of NXP"
26	select HW_WATCHDOG if !WDT
27	help
28	  Select this to enable the IMX and LSCH2 of Layerscape watchdog
29	  driver.
30
31config WATCHDOG_RESET_DISABLE
32	bool "Disable reset watchdog"
33	depends on IMX_WATCHDOG
34	help
35	  Disable reset watchdog, which can let WATCHDOG_RESET invalid, so
36	  that the watchdog will not be fed in u-boot.
37
38config OMAP_WATCHDOG
39	bool "TI OMAP watchdog driver"
40	depends on ARCH_OMAP2PLUS
41	select HW_WATCHDOG
42	help
43	  Say Y here to enable the OMAP3+ watchdog driver.
44
45config ULP_WATCHDOG
46	bool "i.MX7ULP watchdog"
47	help
48	  Say Y here to enable i.MX7ULP watchdog driver.
49
50config DESIGNWARE_WATCHDOG
51	bool "Designware watchdog timer support"
52	select HW_WATCHDOG if !WDT
53	default y if WDT && ROCKCHIP_RK3399
54	help
55	  Enable this to support Designware Watchdog Timer IP, present e.g.
56	  on Altera SoCFPGA SoCs.
57
58config WDT
59	bool "Enable driver model for watchdog timer drivers"
60	depends on DM
61	imply WATCHDOG
62	help
63	  Enable driver model for watchdog timer. At the moment the API
64	  is very simple and only supports four operations:
65	  start, stop, reset and expire_now (expire immediately).
66	  What exactly happens when the timer expires is up to a particular
67	  device/driver.
68
69config WDT_ARMADA_37XX
70	bool "Marvell Armada 37xx watchdog timer support"
71	depends on WDT && ARMADA_3700
72	help
73	  Enable this to support Watchdog Timer on Marvell Armada 37xx SoC.
74	  There are 4 possible clocks which can be used on these SoCs. This
75	  driver uses the second clock (ID 1), assuming that so will also
76	  Linux's driver.
77
78config WDT_ASPEED
79	bool "Aspeed ast2400/ast2500 watchdog timer support"
80	depends on WDT
81	default y if ARCH_ASPEED
82	help
83	  Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices.
84	  The watchdog timer is stopped when initialized. It performs reset, either
85	  full SoC reset or CPU or just some peripherals, based on the flags.
86	  It currently does not support Boot Flash Addressing Mode Detection or
87	  Second Boot.
88
89config WDT_AST2600
90	bool "Aspeed AST2600 watchdog timer support"
91	depends on WDT
92	default y if ASPEED_AST2600
93	help
94	  Select this to enable watchdog timer for Aspeed ast2500/ast2400 devices.
95	  The watchdog timer is stopped when initialized. It performs reset, either
96	  full SoC reset or CPU or just some peripherals, based on the flags.
97
98config WDT_AT91
99	bool "AT91 watchdog timer support"
100	depends on WDT
101	help
102	  Select this to enable Microchip watchdog timer, which can be found on
103	  some AT91 devices.
104
105config WDT_BCM6345
106	bool "BCM6345 watchdog timer support"
107	depends on WDT && (ARCH_BMIPS || ARCH_BCM68360 || \
108			   ARCH_BCM6858 || ARCH_BCM63158)
109	help
110	  Select this to enable watchdog timer for BCM6345 SoCs.
111	  The watchdog timer is stopped when initialized.
112	  It performs full SoC reset.
113
114config WDT_CDNS
115	bool "Cadence watchdog timer support"
116	depends on WDT
117	imply WATCHDOG
118	help
119	  Select this to enable Cadence watchdog timer, which can be found on some
120	  Xilinx Microzed Platform.
121
122config WDT_CORTINA
123	bool "Cortina Access CAxxxx watchdog timer support"
124	depends on WDT
125	help
126	  Cortina Access CAxxxx watchdog timer support.
127	  This driver support all CPU ISAs supported by Cortina
128	  Access CAxxxx SoCs.
129
130config WDT_MPC8xx
131	bool "MPC8xx watchdog timer support"
132	depends on WDT && MPC8xx
133	select HW_WATCHDOG
134	help
135	  Select this to enable mpc8xx watchdog timer
136
137config WDT_MT7620
138	bool "MediaTek MT7620 watchdog timer support"
139	depends on WDT && SOC_MT7620
140	help
141	  Select this to enable watchdog timer on MediaTek MT7620 and earlier
142	  SoC chips.
143
144config WDT_MT7621
145	bool "MediaTek MT7621 watchdog timer support"
146	depends on WDT && SOC_MT7628
147	help
148	  Select this to enable Ralink / Mediatek watchdog timer,
149	  which can be found on some MediaTek chips.
150
151config WDT_MTK
152	bool "MediaTek watchdog timer support"
153	depends on WDT && ARCH_MEDIATEK
154	help
155	  Select this to enable watchdog timer for MediaTek SoCs.
156	  The watchdog timer is stopped when initialized.
157	  It performs full SoC reset.
158
159config WDT_OCTEONTX
160	bool "OcteonTX core watchdog support"
161	depends on WDT && (ARCH_OCTEONTX || ARCH_OCTEONTX2)
162	default y
163	imply WATCHDOG
164	help
165	  This enables OcteonTX watchdog driver, which can be
166	  found on OcteonTX/TX2 chipsets and inline with driver model.
167	  Only supports watchdog reset.
168
169config WDT_OMAP3
170	bool "TI OMAP watchdog timer support"
171	depends on WDT && ARCH_OMAP2PLUS
172	default y if AM33XX
173	help
174	  This enables OMAP3+ watchdog timer driver, which can be
175	  found on some TI chipsets and inline with driver model.
176
177config WDT_ORION
178	bool "Orion watchdog timer support"
179	depends on WDT
180	select CLK
181	help
182	  Select this to enable Orion watchdog timer, which can be found on some
183	  Marvell Armada chips.
184
185config WDT_K3_RTI
186	bool "Texas Instruments K3 RTI watchdog"
187	depends on WDT && ARCH_K3
188	help
189	  Say Y here if you want to include support for the K3 watchdog
190	  timer (RTI module) available in the K3 generation of processors.
191
192config WDT_SANDBOX
193	bool "Enable Watchdog Timer support for Sandbox"
194	depends on SANDBOX && WDT
195	help
196	  Enable Watchdog Timer support in Sandbox. This is a dummy device that
197	  can be probed and supports all of the methods of WDT, but does not
198	  really do anything.
199
200config WDT_SBSA
201	bool "SBSA watchdog timer support"
202	depends on WDT
203	help
204	   Select this to enable SBSA watchdog timer.
205	   This driver can operate ARM SBSA Generic Watchdog as a single stage.
206	   In the single stage mode, when the timeout is reached, your system
207	   will be reset by WS1. The first signal (WS0) is ignored.
208
209config WDT_SP805
210	bool "SP805 watchdog timer support"
211	depends on WDT
212	help
213	  Select this to enable SP805 watchdog timer, which can be found on some
214	  nxp layerscape chips.
215
216config WDT_STM32MP
217	bool "IWDG watchdog driver for STM32 MP's family"
218	depends on WDT
219	imply WATCHDOG
220	help
221	  Enable the STM32 watchdog (IWDG) driver. Enable support to
222	  configure STM32's on-SoC watchdog.
223
224config XILINX_TB_WATCHDOG
225	bool "Xilinx Axi watchdog timer support"
226	depends on WDT
227	imply WATCHDOG
228	help
229	  Select this to enable Xilinx Axi watchdog timer, which can be found on some
230	  Xilinx Microblaze Platforms.
231
232config WDT_XILINX
233	bool "Xilinx window watchdog timer support"
234	depends on WDT && ARCH_VERSAL
235	select REGMAP
236	imply WATCHDOG
237	help
238	  Select this to enable Xilinx window watchdog timer, which can be found on
239	  Xilinx Versal Platforms.
240
241config WDT_TANGIER
242	bool "Intel Tangier watchdog timer support"
243	depends on WDT && INTEL_MID
244	help
245	  This enables support for watchdog controller available on
246	  Intel Tangier SoC. If you're using a board with Intel Tangier
247	  SoC, say Y here.
248
249config SPL_WDT
250	bool "Enable driver model for watchdog timer drivers in SPL"
251	depends on SPL_DM
252	help
253	  Enable driver model for watchdog timer in SPL.
254	  This is similar to CONFIG_WDT in U-Boot.
255
256endmenu
257