u-boot/arch/arm/mach-imx
Ye Li 64fe0ffca0 mx7ulp: Update wdog disable sequence
Update the mx7ulp wdog disable sequence to avoid potential reset
issue in unlock or refresh sequence. Both sequence need two words
write to wdog CNT register in 16 bus clocks window, if miss the
window, the write will cause violation in wdog and reset the chip.

Current u-boot code is using writel() function which has a DMB
barrier to order the memory access. The DMB between two words write
may introduce some delay in certain circumstance, causing the wdog
reset due to 16 bus clock window requirement.

Also, WDOG1 might have been enabled already depending on FUSE hence
we need to be as close as possible to its reconfiguration timing
requirement of 128 bus clock limit.

This patch replaces writel() function by __raw_writel() to avoid such
issue, and improve to check if watchdog is already disabled or
unlocked.

Signed-off-by: Ye Li <ye.li@nxp.com>
Co-developed-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Signed-off-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Co-developed-by: Ricardo Salveti <ricardo@foundries.io>
Signed-off-by: Ricardo Salveti <ricardo@foundries.io>
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
2021-10-07 16:53:50 +02:00
..
imx8 imx: Convert SERIAL_TAG support to ENV_VARS_UBOOT_RUNTIME_CONFIG 2021-09-07 13:04:52 -04:00
imx8m imx8mm-cl-iot-gate: Split the defconfigs 2021-10-07 16:53:50 +02:00
imx8ulp imx: Convert SERIAL_TAG support to ENV_VARS_UBOOT_RUNTIME_CONFIG 2021-09-07 13:04:52 -04:00
imxrt ARM: IMXRT: introduce is_imxrt*() macros and get_cpu_rev() 2021-06-09 13:03:33 +02:00
mx3 arm: Remove mx31pdk board 2020-07-09 20:58:06 +05:30
mx5 usb: Enforce DM_USB migration for USB_HOST devices. 2021-07-18 21:05:31 -04:00
mx6 Prepare v2021.10-rc4 2021-09-16 10:29:40 -04:00
mx7 arm: imx: mx7: Move CONFIG_OPTEE_TZDRAM_SIZE from lib/optee 2021-10-05 08:50:14 -04:00
mx7ulp mx7ulp: Update wdog disable sequence 2021-10-07 16:53:50 +02:00
mxs arm: Remove bg0900 board 2021-10-01 21:08:19 -04:00
cache.c common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
cmd_bmode.c ARM: imx: Add support for reading out the primary/secondary bmode 2020-08-17 17:55:17 +02:00
cmd_dek.c arm: imx8: Move container image header file to mach-imx 2021-08-09 14:46:50 +02:00
cmd_hdmidet.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
cmd_mfgprot.c imx: cmd: use struct cmd_tbl 2021-08-09 14:46:51 +02:00
cmd_nandbcb.c nand.h: Cleanup linux/mtd/rawnand.h usage 2021-10-06 09:16:23 -04:00
cpu.c pci: imx: Drop DM_PCI check from cpu driver 2021-08-05 19:46:35 -04:00
ddrmc-vf610-calibration.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
ddrmc-vf610-calibration.h ddr: vybrid: Provide code to perform on-boot calibration 2019-02-15 12:16:50 +01:00
ddrmc-vf610.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
hab.c global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
i2c-mxv7.c dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01:00
image-container.c mmc: Rename MMC_SUPPORT to MMC 2021-09-04 11:42:41 -04:00
imx_bootaux.c global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
init.c ARM: imx: Add support for switching primary/secondary boot mode to bmode 2020-08-17 17:54:01 +02:00
iomux-v3.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Kconfig mx7ulp: Allow to enable CONFIG_IMX_HAB 2021-10-07 16:53:50 +02:00
lowlevel.S imx: add lowlevel init for ARM64 2019-04-25 19:16:24 +02:00
mac.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Makefile WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
misc.c lmb: Remove imx board_lmb_reserve() 2021-09-23 14:15:32 -04:00
mmc_env.c Revert "imx: mmc_env: update runtime SD/MMC boot env device" 2019-10-08 16:36:37 +02:00
mmdc_size.c arm/mach-imx: Fix macros in mmdc_size.c 2021-07-10 16:53:34 +02:00
parse-container.c arm: imx: parse-container: guard included header files 2021-08-09 14:46:50 +02:00
priblob.c imx: cmd: use struct cmd_tbl 2021-08-09 14:46:51 +02:00
rdc-sema.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sata.c arm: Don't include common.h in header files 2020-05-18 14:54:24 -04:00
speed.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
spl.c imx: spl: fix imx8m secure boot 2021-10-07 16:53:50 +02:00
spl_imx_romapi.c arm: imx8ulp: add container support 2021-08-09 14:46:50 +02:00
spl_qspi.cfg arm: imx: Finish migration from CONFIG_SECURE_BOOT to CONFIG_IMX_HAB 2020-06-26 10:29:06 -04:00
spl_sd.cfg imx: replace CONFIG_SECURE_BOOT with CONFIG_IMX_HAB 2019-10-08 16:36:37 +02:00
syscounter.c Convert CONFIG_SKIP_LOWLEVEL_INIT et al to Kconfig 2021-08-31 17:47:49 -04:00
timer.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
video.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00