lede/package/boot/arm-trusted-firmware-mediatek/patches/0002-mediatek-mt7622-initialize-watchdog-after-DDR-init.patch
Daniel Golle 2ab51c530a arm-trusted-firmware-mediatek: update to v2.7+ from MediaTek
The updated sources bring support for the MT798x Filogic SoC family.

Add builds for MT7986 with most supported storage types, each for DDR3
and DDR4 configurations.

A better solution for skipping bad blocks on SPI-NAND connected via the
SNFI interface has been implemented upstream, so drop local patch.
Add pending patches [1] and [2] to fix boot on existing MT7622 boards.

Tested on BananaPi BPi-R64 (SDMMC, eMMC, SPI-NAND), Linksys E8450 and
Ubiquiti UniFi 6 LR as well as upcoming Bananapi BPi-R3 board for which
support will be added in future patches.

[1]: https://github.com/mtk-openwrt/arm-trusted-firmware/pulls/#3
[2]: https://github.com/mtk-openwrt/arm-trusted-firmware/pulls/#4

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-08-29 11:24:17 +08:00

41 lines
1.3 KiB
Diff

From 2a012775b3ab6e72091c8be1c2d4bf5972407eb5 Mon Sep 17 00:00:00 2001
From: Daniel Golle <daniel@makrotopia.org>
Date: Sat, 27 Aug 2022 21:38:33 +0100
Subject: [PATCH] mediatek: mt7622: initialize watchdog after DDR init
Initializing the WDT before memory calibration breaks reboot at least
on some MT7622 boards like the Bananapi BPi-R64:
NOTICE: BL2: v2.7(release):OpenWrt v2022-08-18-9c9c4994-2 (mt7622-emmc-2ddr)
NOTICE: BL2: Built : 04:00:25, Aug 27 2022
ERROR: Cannot find any pass-window
ERROR: no DATLAT taps pass, DATLAT calibration fail!
ERROR: DATLAT calibration fail, write back to 20!
ERROR: EMI: complex R/W mem test failed: -2
Move watchdog initialization to happen only after memory initialization
has completed to avoid the problem.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
---
plat/mediatek/mt7622/bl2_plat_setup.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/plat/mediatek/mt7622/bl2_plat_setup.c
+++ b/plat/mediatek/mt7622/bl2_plat_setup.c
@@ -277,7 +277,6 @@ void bl2_platform_setup(void)
plat_mt_cpuxgpt_init();
generic_delay_timer_init();
- mtk_wdt_init();
mtk_pin_init();
#ifndef USING_BL2PL
mtk_pll_init();
@@ -285,6 +284,7 @@ void bl2_platform_setup(void)
mtk_pwrap_init();
mtk_pmic_init();
mtk_mem_init();
+ mtk_wdt_init();
mtk_io_setup();
}