u-boot/board
Pali Rohár 10c3befc68 arm: mvebu: turris_omnia: enable A385 watchdog before disabling MCU watchdog
Commit aeb0ca64db ("arm: mvebu: turris_omnia: disable MCU watchdog in
SPL when booting over UART") disabled MCU watchdog when booting over
UART to ensure that watchdog does not reboot the board before UART
transfer finishes.

But if UART transfer fails for some reason, or if U-Boot binary crashes,
then board hangs forever as there is no watchdog running which could
reset it.

To fix this issue, enable A385 watchdog with very high timeout before
disabling MCU watchdog to ensure that even slow transfer can finish
successfully before watchdog timer expires and also to ensure that if
board hangs for some reason, watchdog will reset it.

Omnia's MCU watchdog has fixed 120 seconds timer and it cannot be
changed (without updating MCU firmware). A385 watchdog by default uses
25 MHz input clock and so the largest timeout value (2^32-1) can be
just 171 seconds. But A385 watchdog can be switched to use NBCLK (L2) as
input clock (on Turris Omnia it is 800 MHz clock) and in this case final
watchdog clock frequency is calculated as:

  freq = NBCLK / 2 / (2 ^ R)

So A385 watchdog on Turris Omnia can be configured to at most 1374
seconds (about 22 minutes). We set it to 10 minutes, which should be
enough even for bigger U-Boot binaries or slower UART transfers.

Both U-Boot and Linux kernel, when initializing A385 watchdog, switch
watchdog timer to 25 MHz input clock, so usage of NBCLK input clock in
U-Boot SPL does not cause any issues.

Fixes: aeb0ca64db ("arm: mvebu: turris_omnia: disable MCU watchdog in SPL when booting over UART")
Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Marek Behún <marek.behun@nic.cz>
2021-11-30 08:31:04 +01:00
..
abilis/tb100 reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
advantech spi: Rename SPI_SUPPORT to SPI 2021-09-04 12:26:02 -04:00
alliedtelesis ARM: mvebu: x530: Remove custom kwbimage.cfg 2021-10-08 08:37:55 +02:00
altera Merge branch '2021.04-rc' of https://github.com/lftan/u-boot 2021-01-15 07:55:11 -05:00
amarula/vyasa-rk3288 common: Move serial functions out of common.h 2019-12-02 18:23:11 -05:00
amlogic ARM: amlogic: add JetHub D1 eth mac generation with manufacturer OUI 2021-10-29 19:16:07 +02:00
AndesTech riscv: ae350: Use #if defined instead of CONFIG_IS_ENABLED 2021-11-08 15:35:55 +08:00
aries/mcvevk arm: socfpga: Re-add support for Aries MCV SoM and MCVEV[KP] board 2019-05-14 19:52:39 +02:00
aristainetos imx: Finish migration of IMX_CONFIG to Kconfig 2021-08-31 17:46:37 -04:00
armadeus/opos6uldev imx: Finish migration of IMX_CONFIG to Kconfig 2021-08-31 17:46:37 -04:00
armltd sandbox: Remove OF_HOSTFILE 2021-10-27 16:38:26 -04:00
aspeed configs: aspeed: Add defconfig for AST2600 EVB 2021-01-18 15:23:06 -05:00
astro/mcf5373l common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
atmark-techno/armadillo-800eva WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
atmel WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
avionic-design common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
beacon ARM: rmobile: Rename r8a774a1_beacon_defconfig to rzg2_beacon_defconfig 2021-10-30 22:54:07 +02:00
beckhoff/mx53cx9020 arm: Disable ATAGs support 2021-09-07 16:22:30 -04:00
birdland/bav335x arm: Remove bav335x board 2020-07-09 20:58:05 +05:30
bitmain/antminer_s9 xilinx: Introduce board_late_init_xilinx() 2020-04-27 13:57:17 +02:00
bluewater global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
bosch Convert CONFIG_SKIP_LOWLEVEL_INIT et al to Kconfig 2021-08-31 17:47:49 -04:00
boundary/nitrogen6x WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
broadcom Revert "arch: arm: use dt and UCLASS_SYSCON to get gic lpi details" 2021-10-31 08:46:29 -04:00
bticino/mamoj common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
buffalo/lsxl bootstage: Eliminate when not enabled 2021-07-07 10:17:54 -04:00
BuR brxre1: disable video after DM_VIDEO conversion deadline 2021-06-05 10:40:47 +02:00
BuS/eb_cpu5282 global: Convert simple_strtoul() with decimal to dectoul() 2021-08-02 13:32:14 -04:00
cadence/xtfpga WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
calao/usb_a9263 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
cavium/thunderx pci: Drop pci_init_board() 2021-08-06 08:26:48 -04:00
cei/cei-tk1-som SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
chipspark/popmetal_rk3288 common: Move some board functions out of common.h 2019-12-02 18:25:21 -05:00
cloudengines/pogo_e02 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
cobra5272 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
compal/paz00 common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
compulab arm: imx8m: imx8mm-cl-iot-gate: Add support for detect memory size 2021-10-07 16:53:50 +02:00
comtrend SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
congatec - Disable ATAGS for STM32 MCU and MPU boards 2021-10-12 12:01:00 -04:00
coreboot x86: coreboot: Use vendor in the Kconfig 2021-07-15 19:50:21 +08:00
cortina reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
cssi nand.h: Cleanup linux/mtd/rawnand.h usage 2021-10-06 09:16:23 -04:00
CZ.NIC arm: mvebu: turris_omnia: enable A385 watchdog before disabling MCU watchdog 2021-11-30 08:31:04 +01:00
d-link/dns325 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
davinci/da8xxevm omapl138_lcdk: Stop using CONFIG_MACH_OMAPL138_LCDK 2021-09-27 21:38:34 -04:00
devboards/dbm-soc1 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dfi x86: dfi: dfi-bt700: Remove dead code 2020-09-01 13:38:39 +08:00
dhelectronics ARM: stm32: Align mtdparts with SPI NOR layout on DHSOM 2021-11-10 17:03:59 +01:00
ea board: ea: mx7ulp_com: allocate specific region of memory to OP-TEE 2021-10-21 13:59:26 +02:00
ebv/socrates arm: socfpga: socrates: make rtc work 2019-04-25 00:00:49 +02:00
eets/pdu001 Convert CONFIG_SKIP_LOWLEVEL_INIT et al to Kconfig 2021-08-31 17:47:49 -04:00
efi efi: Add video support to the app 2021-11-07 18:36:55 +01:00
egnite/ethernut5 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
elgin/elgin_rv1108 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
embest/mx6boards serial: Rename SERIAL_SUPPORT to SERIAL 2021-09-04 12:26:01 -04:00
emulation qemu: common: Fix build with update capsule 2021-11-29 11:15:37 -05:00
engicam board: stmp32mp1: split board and SOC STM32MP15 configuration 2021-11-10 17:03:36 +01:00
esd/meesc global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
firefly treewide: fdt: Move fdt_get_config_... to ofnode_conf_read... 2021-09-25 09:46:15 -06:00
freescale board: freescale: lx216x : increase fdt blob size 2021-11-09 14:43:24 +05:30
friendlyarm arm: Disable ATAGs support 2021-09-07 16:22:30 -04:00
gardena common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
gateworks imx: ventana: fix USB hub reset 2021-10-07 16:53:50 +02:00
gdsys WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
ge WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
geekbuying/geekbox rockchip: rk3368: Migrate to use common board file 2019-07-29 10:27:48 +08:00
google treewide: Use OF_REAL instead of !OF_PLATDATA 2021-09-25 09:46:15 -06:00
grinn Convert CONFIG_SKIP_LOWLEVEL_INIT et al to Kconfig 2021-08-31 17:47:49 -04:00
hardkernel/odroid_go2 rockchip: board: add Hardkernel Odroid Go2 board 2020-07-22 20:21:23 +08:00
highbank sandbox: Remove OF_HOSTFILE 2021-10-27 16:38:26 -04:00
hisilicon WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
hoperun/hihope-rzg2 arm: use the correct prototype for reset_cpu function 2021-07-28 19:30:22 -04:00
huawei/hg556a SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ids/ids8313 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
imgtec mmc: Rename MMC_SUPPORT to MMC 2021-09-04 11:42:41 -04:00
intel Merge branch 'next-socfpga' of https://github.com/tienfong/uboot_mainline 2021-08-25 08:23:42 -04:00
inversepath/usbarmory arm: Disable ATAGs support 2021-09-07 16:22:30 -04:00
iomega/iconnect common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
is1 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
isee common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
k+p imx: Finish migration of IMX_CONFIG to Kconfig 2021-08-31 17:46:37 -04:00
keymile board/km: update MAINTAINERS files 2021-10-14 19:45:07 -04:00
kmc/kzm9g reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
kobol/helios4 arm: mvebu: Load U-Boot proper binary in SPL code based on kwbimage header 2021-07-31 09:59:58 +02:00
kontron board: kontron: sl28: add myself to ls1028a.dtsi maintainers 2021-11-09 17:18:23 +05:30
kosagi/novena common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
l+g/vinco Remove #include <version.h> from files which do not need it 2021-09-17 12:10:44 -04:00
LaCie arm: orion5x: edminiv2: change maintainer 2021-09-28 18:50:55 +03:00
lego/ev3 Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
lg/sniper arm: Disable ATAGs support 2021-09-07 16:22:30 -04:00
liebherr spi: Rename SPI_SUPPORT to SPI 2021-09-04 12:26:02 -04:00
logicpd ARM: omap3_logic: Cleanup usage of MUX_VAL 2021-10-11 15:02:50 -04:00
Marvell env: Always use char for default_environment 2021-10-31 12:26:44 -06:00
maxbcm common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mediatek WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
menlo/m53menlo ARM: imx: mx5: Enable BMODE command on MX53 Menlo board 2021-10-19 12:36:50 +02:00
microchip common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mikrotik/crs3xx-98dx3236 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mqmaker/miqi_rk3288 WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
mscc WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
myir/mys_6ulx common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
netgear common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
nokia/rx51 arm: Disable ATAGs support 2021-09-07 16:22:30 -04:00
novtech/meerkat96 imx: Finish migration of IMX_CONFIG to Kconfig 2021-08-31 17:46:37 -04:00
nvidia ARM: tegra: Refactor DT update helpers 2021-10-13 14:18:30 -07:00
olimex/mx23_olinuxino mx23_olinuxino: convert MMC to driver model 2021-04-08 23:59:50 +02:00
opalkelly/zynq WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
openpiton/riscv64 riscv: dts: add OpenPiton RISC-V board dts support 2021-07-07 20:34:02 +08:00
out4/o4-imx6ull-nano Add EV-iMX280-NANO-X-MB board 2021-06-09 13:32:49 +02:00
phytec board: phytec: imx8mm-phycore: Switch to binman 2021-10-20 15:10:13 +02:00
phytium/durian WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
pine64 rockchip: Add initial support for the Pinebook Pro laptop from Pine64. 2020-05-31 22:22:07 +08:00
qca Convert CONFIG_SKIP_LOWLEVEL_INIT et al to Kconfig 2021-08-31 17:47:49 -04:00
qualcomm WS cleanup: remove trailing white space 2021-09-30 08:08:56 -04:00
radxa SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
raidsonic/ib62x0 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
raspberrypi/rpi sandbox: Remove OF_HOSTFILE 2021-10-27 16:38:26 -04:00
renesas Remove #include <version.h> from files which do not need it 2021-09-17 12:10:44 -04:00
rockchip WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
ronetix imx: Finish migration of IMX_CONFIG to Kconfig 2021-08-31 17:46:37 -04:00
sagem/f@st1704 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
samsung Merge https://source.denx.de/u-boot/custodians/u-boot-samsung 2021-11-09 15:05:33 -05:00
sandbox treewide: Use OF_REAL instead of !OF_PLATDATA 2021-09-25 09:46:15 -06:00
Seagate arm: kirkwood: Goflex Home: Update board maintainer 2021-08-11 08:42:26 +02:00
seeed imx: Add SeeedStudio NPI-IMX6ULL Support 2021-06-09 13:34:18 +02:00
sfr/nb4_ser SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
siemens boards: siemens: iot2050: Ignore network errors during bootstage tracking 2021-11-11 19:02:44 -05:00
sifive sandbox: Remove OF_HOSTFILE 2021-10-27 16:38:26 -04:00
silinux/ek874 arm: use the correct prototype for reset_cpu function 2021-07-28 19:30:22 -04:00
sipeed/maix k210: Don't imply CCF 2021-06-17 09:40:58 +08:00
socionext/developerbox Revert "board: synquacer: developerbox: Don't set gd->env_addr to default_environment" 2021-11-18 14:22:11 -05:00
socrates sandbox: Remove OF_HOSTFILE 2021-10-27 16:38:26 -04:00
softing arm: socfpga: vining: Let DWMAC configure PHY reset GPIO 2021-09-28 18:50:55 +03:00
solidrun arm: mvebu: Load U-Boot proper binary in SPL code based on kwbimage header 2021-07-31 09:59:58 +02:00
somlabs/visionsom-6ull imx: Finish migration of IMX_CONFIG to Kconfig 2021-08-31 17:46:37 -04:00
sr1500 common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
st stm32mp15: replace CONFIG_TFABOOT when it is possible 2021-11-10 17:07:31 +01:00
ste/stemmy board: stemmy: Update documentation 2021-09-01 19:25:37 -04:00
storopack/smegw01 imx: Finish migration of IMX_CONFIG to Kconfig 2021-08-31 17:46:37 -04:00
sunxi sunxi: video: Convert panel I2C to use DM_I2C 2021-10-12 11:01:17 +01:00
Synology arm: Finish migration of CONFIG_MACH_TYPE 2021-09-07 19:17:32 -04:00
synopsys image: Drop IMAGE_ENABLE_OF_LIBFDT 2021-10-08 15:53:26 -04:00
sysam WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
tbs/tbs2910 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
tcl/sl50 Convert CONFIG_SKIP_LOWLEVEL_INIT et al to Kconfig 2021-08-31 17:47:49 -04:00
technexion WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
terasic WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
theadorable Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
theobroma-systems rockchip: rk3399-puma: Increase environment size to 16 kiB. 2021-03-30 16:53:00 +08:00
ti WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
timll lpc32xx: Kconfig: switch to CONFIG_CONS_INDEX 2021-07-06 14:11:50 -04:00
topic/zynq board: topic-miami: Set FCLK1 to 150MHz 2020-06-24 13:11:08 +02:00
toradex colibri-imx6ull: add emmc variant 2021-10-20 17:54:31 +02:00
tplink/wdr4300 Convert CONFIG_SKIP_LOWLEVEL_INIT et al to Kconfig 2021-08-31 17:47:49 -04:00
tq/tqma6 board: tq: fix spelling of "TQ-Systems" 2021-11-15 14:33:32 -05:00
udoo i2c: Convert CONFIG_POWER_I2C et al to Kconfig 2021-09-04 12:26:02 -04:00
vamrs/rock960_rk3399 rockchip: Remove ARCH= references from documentation 2020-06-02 17:27:04 -04:00
variscite/dart_6ul common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
vocore/vocore2 mips: Add support for SoM "VoCore2". 2020-04-27 20:30:14 +02:00
vscom/baltos Convert CONFIG_SKIP_LOWLEVEL_INIT et al to Kconfig 2021-08-31 17:47:49 -04:00
wandboard MAINTAINERS: Use my personal e-mail address 2021-04-08 20:29:53 +02:00
warp imx: Finish migration of IMX_CONFIG to Kconfig 2021-08-31 17:46:37 -04:00
warp7 WS cleanup: remove trailing white space 2021-09-30 08:08:56 -04:00
work-microwave/work_92105 Remove including timestamp.h in version.h 2021-09-17 12:10:44 -04:00
xen/xenguest_arm64 sandbox: Remove OF_HOSTFILE 2021-10-27 16:38:26 -04:00
xes/common nand.h: Cleanup linux/mtd/rawnand.h usage 2021-10-06 09:16:23 -04:00
xilinx Xilinx changes for v2022.01-rc3 2021-11-16 09:51:04 -05:00
zyxel/nsa310s arm: kirkwood: NSA310S: Use Ethernet PHY name from device tree 2021-07-19 08:44:15 +02:00