55f8ffa75d390185c3fec44ca11ce492acb87dda
[openwrt/openwrt.git] / target / linux / apm821xx / base-files / lib / upgrade / platform.sh
1 #!/bin/sh
2
3 PART_NAME=firmware
4
5 platform_check_image() {
6 local board=$(board_name)
7
8 [ "$#" -gt 1 ] && return 1
9
10 case "$board" in
11 mbl)
12 mbl_do_platform_check $board "$1"
13 return $?;
14 ;;
15
16 mr24|\
17 mx60)
18 merakinand_do_platform_check $board "$1"
19 return $?;
20 ;;
21
22 wndr4700)
23 nand_do_platform_check $board "$1"
24 return $?;
25 ;;
26
27 *)
28 ;;
29 esac
30
31 echo "Sysupgrade is not yet supported on $board."
32 return 1
33 }
34
35 platform_pre_upgrade() {
36 local board=$(board_name)
37
38 case "$board" in
39 mr24|\
40 mx60)
41 merakinand_do_upgrade "$1"
42 ;;
43
44 wndr4700)
45 nand_do_upgrade "$1"
46 ;;
47
48 *)
49 ;;
50 esac
51 }
52
53 platform_do_upgrade() {
54 local board=$(board_name)
55
56 case "$board" in
57 mbl)
58 mbl_do_upgrade "$ARGV"
59 ;;
60
61 *)
62 default_do_upgrade "$ARGV"
63 ;;
64 esac
65 }
66
67 platform_copy_config() {
68 local board=$(board_name)
69
70 case "$board" in
71 mbl)
72 mbl_copy_config
73 ;;
74
75 *)
76 ;;
77 esac
78 }
79
80 disable_watchdog() {
81 killall watchdog
82 ( ps | grep -v 'grep' | grep '/dev/watchdog' ) && {
83 echo 'Could not disable watchdog'
84 return 1
85 }
86 }
87
88 append sysupgrade_pre_upgrade disable_watchdog