mediatek: add support for Netgear WAX206
[openwrt/openwrt.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 local magic="$(get_magic_long "$1")"
26
27 # use "mtd write" if the magic is "DHP2 (0x44485032)"
28 # or "DHP3 (0x44485033)"
29 if [ "$magic" = "44485032" -o "$magic" = "44485033" ]; then
30 buffalo_upgrade_ubinized "$1"
31 else
32 CI_KERNPART="firmware"
33 nand_do_upgrade "$1"
34 fi
35 ;;
36 elecom,wrc-x3200gst3|\
37 mediatek,mt7622-rfb1-ubi|\
38 netgear,wax206|\
39 totolink,a8000ru|\
40 xiaomi,redmi-router-ax6s)
41 nand_do_upgrade "$1"
42 ;;
43 linksys,e8450-ubi)
44 CI_KERNPART="fit"
45 nand_do_upgrade "$1"
46 ;;
47 linksys,e8450)
48 if grep -q mtdparts=slave /proc/cmdline; then
49 PART_NAME=firmware2
50 else
51 PART_NAME=firmware1
52 fi
53 default_do_upgrade "$1"
54 ;;
55 *)
56 default_do_upgrade "$1"
57 ;;
58 esac
59 }
60
61 PART_NAME=firmware
62
63 platform_check_image() {
64 local board=$(board_name)
65 local magic="$(get_magic_long "$1")"
66
67 [ "$#" -gt 1 ] && return 1
68
69 case "$board" in
70 buffalo,wsr-2533dhp2)
71 buffalo_check_image "$board" "$magic" "$1" || return 1
72 ;;
73 elecom,wrc-x3200gst3|\
74 mediatek,mt7622-rfb1-ubi|\
75 netgear,wax206|\
76 totolink,a8000ru|\
77 xiaomi,redmi-router-ax6s)
78 nand_do_platform_check "$board" "$1"
79 return $?
80 ;;
81 *)
82 [ "$magic" != "d00dfeed" ] && {
83 echo "Invalid image type."
84 return 1
85 }
86 return 0
87 ;;
88 esac
89
90 return 0
91 }
92
93 platform_copy_config() {
94 case "$(board_name)" in
95 bananapi,bpi-r64)
96 export_bootdevice
97 export_partdevice rootdev 0
98 if echo $rootdev | grep -q mmc; then
99 emmc_copy_config
100 fi
101 ;;
102 esac
103 }