cfd7cd7ed611cd25f4c2de83b140824c3d07895e
[openwrt/openwrt.git] / target / linux / ipq806x / base-files / lib / upgrade / platform.sh
1 . /lib/ipq806x.sh
2
3 PART_NAME=firmware
4
5 platform_check_image() {
6 local board=$(ipq806x_board_name)
7
8 case "$board" in
9 ap148 |\
10 d7800 |\
11 ea8500 |\
12 r7500 |\
13 r7800)
14 nand_do_platform_check $board $1
15 return $?;
16 ;;
17 c2600)
18 local magic_long="$(get_magic_long "$1")"
19 [ "$magic_long" != "27051956" ] && {
20 echo "Invalid image, bad magic: $magic_long"
21 return 1
22 }
23 return 0;
24 ;;
25 *)
26 return 1;
27 esac
28 }
29
30 platform_pre_upgrade() {
31 local board=$(ipq806x_board_name)
32
33 case "$board" in
34 ap148 |\
35 d7800 |\
36 r7500 |\
37 r7800)
38 nand_do_upgrade "$1"
39 ;;
40 ea8500)
41 linksys_preupgrade "$1"
42 ;;
43 esac
44 }
45
46 platform_do_upgrade() {
47 local board=$(ipq806x_board_name)
48
49 case "$board" in
50 c2600)
51 PART_NAME="os-image:rootfs"
52 MTD_CONFIG_ARGS="-s 0x200000"
53 default_do_upgrade "$ARGV"
54 ;;
55 ea8500)
56 platform_do_upgrade_linksys "$ARGV"
57 ;;
58 esac
59 }