mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-12 06:12:58 +00:00
fe3a77cb15
This pull request adds support for the last CPU board from CS GROUP France (previously CSSI). That CPU board called CMPCPRO has a mpc8321E CPU (Family PQII PRO hence its name) and can be plugged in place of the CMPC885 board. In order to support that new board, the following changes are included in this series: - Make the mpc8xx watchdog driver more generic for reusing it with mpc83xx - Fix various small problems on mpc83xx platform - Add a GPIO Driver for QE GPIOs - Add support for mpc832x into mpc83xx SPI driver - Refactor existing board code that will be shared with new board - Add the new board
402 lines
12 KiB
Text
402 lines
12 KiB
Text
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
|