mediatek: Add support for D-Link EAGLE PRO AI M32
[openwrt/staging/hauke.git] / target / linux / mediatek / mt7622 / base-files / lib / upgrade / platform.sh
1 REQUIRE_IMAGE_METADATA=1
2
3 platform_do_upgrade() {
4 local board=$(board_name)
5 local file_type=$(identify $1)
6
7 case "$board" in
8 bananapi,bpi-r64)
9 local rootdev="$(cmdline_get_var root)"
10 rootdev="${rootdev##*/}"
11 rootdev="${rootdev%p[0-9]*}"
12 case "$rootdev" in
13 mmc*)
14 CI_ROOTDEV="$rootdev"
15 CI_KERNPART="production"
16 emmc_do_upgrade "$1"
17 ;;
18 *)
19 CI_KERNPART="fit"
20 nand_do_upgrade "$1"
21 ;;
22 esac
23 ;;
24 buffalo,wsr-2533dhp2|\
25 buffalo,wsr-3200ax4s)
26 local magic="$(get_magic_long "$1")"
27
28 # use "mtd write" if the magic is "DHP2 (0x44485032)"
29 # or "DHP3 (0x44485033)"
30 if [ "$magic" = "44485032" -o "$magic" = "44485033" ]; then
31 buffalo_upgrade_ubinized "$1"
32 else
33 CI_KERNPART="firmware"
34 nand_do_upgrade "$1"
35 fi
36 ;;
37 dlink,eagle-pro-ai-m32-a1|\
38 elecom,wrc-x3200gst3|\
39 mediatek,mt7622-rfb1-ubi|\
40 netgear,wax206|\
41 totolink,a8000ru|\
42 xiaomi,redmi-router-ax6s)
43 nand_do_upgrade "$1"
44 ;;
45 linksys,e8450-ubi)
46 CI_KERNPART="fit"
47 nand_do_upgrade "$1"
48 ;;
49 linksys,e8450)
50 if grep -q mtdparts=slave /proc/cmdline; then
51 PART_NAME=firmware2
52 else
53 PART_NAME=firmware1
54 fi
55 default_do_upgrade "$1"
56 ;;
57 *)
58 default_do_upgrade "$1"
59 ;;
60 esac
61 }
62
63 PART_NAME=firmware
64
65 platform_check_image() {
66 local board=$(board_name)
67 local magic="$(get_magic_long "$1")"
68
69 [ "$#" -gt 1 ] && return 1
70
71 case "$board" in
72 buffalo,wsr-2533dhp2|\
73 buffalo,wsr-3200ax4s)
74 buffalo_check_image "$board" "$magic" "$1" || return 1
75 ;;
76 dlink,eagle-pro-ai-m32-a1|\
77 elecom,wrc-x3200gst3|\
78 mediatek,mt7622-rfb1-ubi|\
79 netgear,wax206|\
80 totolink,a8000ru|\
81 xiaomi,redmi-router-ax6s)
82 nand_do_platform_check "$board" "$1"
83 return $?
84 ;;
85 *)
86 [ "$magic" != "d00dfeed" ] && {
87 echo "Invalid image type."
88 return 1
89 }
90 return 0
91 ;;
92 esac
93
94 return 0
95 }
96
97 platform_copy_config() {
98 case "$(board_name)" in
99 bananapi,bpi-r64)
100 export_bootdevice
101 export_partdevice rootdev 0
102 if echo $rootdev | grep -q mmc; then
103 emmc_copy_config
104 fi
105 ;;
106 esac
107 }