mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-15 09:27:35 +00:00
d388f360ed
This is based on the Linux kernel driver for the RTI watchdog. To actually reset the system on an AM65x, it requires firmware running on the R5 that accepts the NMI and issues the actual system reset via TISCI. Kind of an iTCO, except that this watchdog hardware has support for no-way-out, and only for that. On the J721E, reset works without extra firmware help when routing the RTI interrupt via the ESM. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
229 lines
6.6 KiB
Text
229 lines
6.6 KiB
Text
menu "Watchdog Timer Support"
|
|
|
|
config WATCHDOG
|
|
bool "Enable U-Boot watchdog reset"
|
|
depends on !HW_WATCHDOG
|
|
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_TIMEOUT_MSECS
|
|
int "Watchdog timeout in msec"
|
|
default 128000 if ARCH_MX25 || ARCH_MX31 || ARCH_MX5 || ARCH_MX6
|
|
default 128000 if ARCH_MX7 || ARCH_VF610
|
|
default 30000 if ARCH_SOCFPGA
|
|
default 60000
|
|
help
|
|
Watchdog timeout in msec
|
|
|
|
config HW_WATCHDOG
|
|
bool
|
|
|
|
config WATCHDOG_RESET_DISABLE
|
|
bool "Disable reset watchdog"
|
|
help
|
|
Disable reset watchdog, which can let WATCHDOG_RESET invalid, so
|
|
that the watchdog will not be fed in u-boot.
|
|
|
|
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 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"
|
|
select HW_WATCHDOG if !WDT
|
|
default y if WDT && 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
|
|
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_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_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 || ARCH_BCM68360 || \
|
|
ARCH_BCM6858 || ARCH_BCM63158)
|
|
help
|
|
Select this to enable watchdog timer for BCM6345 SoCs.
|
|
The watchdog timer is stopped when initialized.
|
|
It performs full SoC reset.
|
|
|
|
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_MPC8xx
|
|
bool "MPC8xx watchdog timer support"
|
|
depends on WDT && MPC8xx
|
|
select HW_WATCHDOG
|
|
help
|
|
Select this to enable mpc8xx watchdog timer
|
|
|
|
config WDT_MT7621
|
|
bool "MediaTek MT7621 watchdog timer support"
|
|
depends on WDT && 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_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.
|
|
|
|
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_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_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 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 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.
|
|
|
|
endmenu
|