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