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