blob: e738b2bb9a8c1f3e8e460dd491a68e08e4397ded [file] [log] [blame]
developer94cddfe2024-06-25 17:37:19 +08001From: Weijie Gao <weijie.gao@mediatek.com>
2Subject: [PATCH 4/8] mediatek: filogic: add support for MediaTek RBFs upgrade
3
4Add support for MediaTek RBFs upgrade (both normal and dual-image)
5
6Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
7
8--- a/target/linux/mediatek/filogic/base-files/lib/upgrade/platform.sh
9+++ b/target/linux/mediatek/filogic/base-files/lib/upgrade/platform.sh
10@@ -1,5 +1,5 @@
11 REQUIRE_IMAGE_METADATA=1
12-RAMFS_COPY_BIN='fitblk'
13+RAMFS_COPY_BIN='fitblk blkid'
14
15 asus_initial_setup()
16 {
17@@ -64,6 +64,31 @@ platform_do_upgrade() {
18 local board=$(board_name)
19
20 case "$board" in
21+ mediatek,mt7981-rfb|\
22+ mediatek,mt7988a-rfb)
23+ [ -e /dev/fit0 ] && fitblk /dev/fit0
24+ [ -e /dev/fitrw ] && fitblk /dev/fitrw
25+ bootdev="$(fitblk_get_bootdev)"
26+ case "$bootdev" in
27+ mmcblk*)
28+ EMMC_KERN_DEV="/dev/$bootdev"
29+ mmc_do_upgrade "$1"
30+ ;;
31+ mtdblock*)
32+ PART_NAME="/dev/mtd${bootdev:8}"
33+ default_do_upgrade "$1"
34+ ;;
35+ ubiblock*)
36+ CI_KERNPART="firmware"
37+ ubi_do_upgrade "$1"
38+ ;;
39+ *)
40+ if grep \"rootfs_data\" /proc/mtd; then
41+ default_do_upgrade "$1"
42+ fi
43+ ;;
44+ esac
45+ ;;
46 acer,predator-w6|\
47 smartrg,sdg-8612|\
48 smartrg,sdg-8614|\
49@@ -134,7 +159,6 @@ platform_do_upgrade() {
50 ;;
51 h3c,magic-nx30-pro|\
52 jcg,q30-pro|\
53- mediatek,mt7981-rfb|\
54 netcore,n60|\
55 qihoo,360t7|\
56 xiaomi,mi-router-ax3000t-ubootmod|\
57@@ -205,6 +229,8 @@ platform_check_image() {
58 [ "$#" -gt 1 ] && return 1
59
60 case "$board" in
61+ mediatek,mt7981-rfb|\
62+ mediatek,mt7988a-rfb|\
63 bananapi,bpi-r3|\
64 bananapi,bpi-r4|\
65 bananapi,bpi-r4-poe|\
66@@ -226,6 +252,14 @@ platform_check_image() {
67
68 platform_copy_config() {
69 case "$(board_name)" in
70+ mediatek,mt7981-rfb|\
71+ mediatek,mt7988a-rfb)
72+ case "$(fitblk_get_bootdev)" in
73+ mmcblk*)
74+ mmc_copy_config
75+ ;;
76+ esac
77+ ;;
78 cmcc,rax3000m)
79 case "$(cmdline_get_var root)" in
80 /dev/mmc*)