watchdog: Add booke watchdog driver
[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_MPC8xx
151         bool "MPC8xx watchdog timer support"
152         depends on WDT && MPC8xx
153         select HW_WATCHDOG
154         help
155           Select this to enable mpc8xx watchdog timer
156
157 config WDT_MT7620
158         bool "MediaTek MT7620 watchdog timer support"
159         depends on WDT && SOC_MT7620
160         help
161           Select this to enable watchdog timer on MediaTek MT7620 and earlier
162           SoC chips.
163
164 config WDT_MT7621
165         bool "MediaTek MT7621 watchdog timer support"
166         depends on WDT && SOC_MT7628
167         help
168           Select this to enable Ralink / Mediatek watchdog timer,
169           which can be found on some MediaTek chips.
170
171 config WDT_MTK
172         bool "MediaTek watchdog timer support"
173         depends on WDT && ARCH_MEDIATEK
174         help
175           Select this to enable watchdog timer for MediaTek SoCs.
176           The watchdog timer is stopped when initialized.
177           It performs full SoC reset.
178
179 config WDT_OCTEONTX
180         bool "OcteonTX core watchdog support"
181         depends on WDT && (ARCH_OCTEONTX || ARCH_OCTEONTX2)
182         default y
183         imply WATCHDOG
184         help
185           This enables OcteonTX watchdog driver, which can be
186           found on OcteonTX/TX2 chipsets and inline with driver model.
187           Only supports watchdog reset.
188
189 config WDT_OMAP3
190         bool "TI OMAP watchdog timer support"
191         depends on WDT && ARCH_OMAP2PLUS
192         default y if AM33XX
193         help
194           This enables OMAP3+ watchdog timer driver, which can be
195           found on some TI chipsets and inline with driver model.
196
197 config WDT_ORION
198         bool "Orion watchdog timer support"
199         depends on WDT
200         select CLK
201         help
202           Select this to enable Orion watchdog timer, which can be found on some
203           Marvell Armada chips.
204
205 config WDT_K3_RTI
206         bool "Texas Instruments K3 RTI watchdog"
207         depends on WDT && ARCH_K3
208         help
209           Say Y here if you want to include support for the K3 watchdog
210           timer (RTI module) available in the K3 generation of processors.
211
212 config WDT_SANDBOX
213         bool "Enable Watchdog Timer support for Sandbox"
214         depends on SANDBOX && WDT
215         help
216           Enable Watchdog Timer support in Sandbox. This is a dummy device that
217           can be probed and supports all of the methods of WDT, but does not
218           really do anything.
219
220 config WDT_SBSA
221         bool "SBSA watchdog timer support"
222         depends on WDT
223         help
224            Select this to enable SBSA watchdog timer.
225            This driver can operate ARM SBSA Generic Watchdog as a single stage.
226            In the single stage mode, when the timeout is reached, your system
227            will be reset by WS1. The first signal (WS0) is ignored.
228
229 config WDT_SP805
230         bool "SP805 watchdog timer support"
231         depends on WDT
232         help
233           Select this to enable SP805 watchdog timer, which can be found on some
234           nxp layerscape chips.
235
236 config WDT_STM32MP
237         bool "IWDG watchdog driver for STM32 MP's family"
238         depends on WDT
239         imply WATCHDOG
240         help
241           Enable the STM32 watchdog (IWDG) driver. Enable support to
242           configure STM32's on-SoC watchdog.
243
244 config XILINX_TB_WATCHDOG
245         bool "Xilinx Axi watchdog timer support"
246         depends on WDT
247         imply WATCHDOG
248         help
249           Select this to enable Xilinx Axi watchdog timer, which can be found on some
250           Xilinx Microblaze Platforms.
251
252 config WDT_XILINX
253         bool "Xilinx window watchdog timer support"
254         depends on WDT && ARCH_VERSAL
255         select REGMAP
256         imply WATCHDOG
257         help
258           Select this to enable Xilinx window watchdog timer, which can be found on
259           Xilinx Versal Platforms.
260
261 config WDT_TANGIER
262         bool "Intel Tangier watchdog timer support"
263         depends on WDT && INTEL_MID
264         help
265           This enables support for watchdog controller available on
266           Intel Tangier SoC. If you're using a board with Intel Tangier
267           SoC, say Y here.
268
269 config SPL_WDT
270         bool "Enable driver model for watchdog timer drivers in SPL"
271         depends on SPL_DM
272         help
273           Enable driver model for watchdog timer in SPL.
274           This is similar to CONFIG_WDT in U-Boot.
275
276 endmenu