mediatek: mt7622: switch to generic eMMC sysupgrade
[openwrt/staging/hauke.git] / target / linux / mediatek / mt7622 / base-files / lib / upgrade / platform.sh
1 REQUIRE_IMAGE_METADATA=1
2 RAMFS_COPY_BIN='fw_printenv fw_setenv fwtool'
3 RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
4
5 platform_do_upgrade() {
6 local board=$(board_name)
7 local file_type=$(identify $1)
8
9 case "$board" in
10 bananapi,bpi-r64)
11 export_bootdevice
12 export_partdevice rootdev 0
13 case "$rootdev" in
14 mmc*)
15 CI_ROOTDEV="$rootdev"
16 CI_KERNPART="production"
17 emmc_do_upgrade "$1"
18 ;;
19 *)
20 CI_KERNPART="fit"
21 nand_do_upgrade "$1"
22 ;;
23 esac
24 ;;
25 buffalo,wsr-2533dhp2)
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 linksys,e8450-ubi|\
38 mediatek,mt7622,ubi)
39 CI_KERNPART="fit"
40 nand_do_upgrade "$1"
41 ;;
42 linksys,e8450)
43 if grep -q mtdparts=slave /proc/cmdline; then
44 PART_NAME=firmware2
45 else
46 PART_NAME=firmware1
47 fi
48 default_do_upgrade "$1"
49 ;;
50 totolink,a8000ru)
51 nand_do_upgrade "$1"
52 ;;
53 *)
54 default_do_upgrade "$1"
55 ;;
56 esac
57 }
58
59 PART_NAME=firmware
60
61 platform_check_image() {
62 local board=$(board_name)
63 local magic="$(get_magic_long "$1")"
64
65 [ "$#" -gt 1 ] && return 1
66
67 case "$board" in
68 buffalo,wsr-2533dhp2)
69 buffalo_check_image "$board" "$magic" "$1" || return 1
70 ;;
71 totolink,a8000ru)
72 nand_do_platform_check "$board" "$1"
73 ;;
74 *)
75 [ "$magic" != "d00dfeed" ] && {
76 echo "Invalid image type."
77 return 1
78 }
79 return 0
80 ;;
81 esac
82
83 return 0
84 }
85
86 platform_copy_config() {
87 case "$(board_name)" in
88 bananapi,bpi-r64)
89 export_bootdevice
90 export_partdevice rootdev 0
91 if echo $rootdev | grep -q mmc; then
92 emmc_copy_config
93 fi
94 ;;
95 esac
96 }