ipq806x: upgrade: fix RAMFS_COPY_*
[openwrt/openwrt.git] / target / linux / ipq806x / base-files / lib / upgrade / platform.sh
index c0e19a128739378473848a72ab4f7642dcecc946..141058f7bae2775397c9fdf8224f8f9d035795fb 100644 (file)
@@ -1,30 +1,59 @@
 . /lib/ipq806x.sh
 
 PART_NAME=firmware
+REQUIRE_IMAGE_METADATA=1
+
+RAMFS_COPY_BIN='/usr/sbin/fw_printenv /usr/sbin/fw_setenv'
+RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
 
 platform_check_image() {
+       return 0;
+}
+
+platform_do_upgrade() {
        local board=$(ipq806x_board_name)
 
        case "$board" in
-       AP148 |\
-       r7500)
-               nand_do_platform_check $board $1
-               return $?;
+       ap148 |\
+       ap-dk04.1-c1 |\
+       d7800 |\
+       nbg6817 |\
+       r7500 |\
+       r7500v2 |\
+       r7800)
+               nand_do_upgrade "$ARGV"
+               ;;
+       c2600)
+               PART_NAME="os-image:rootfs"
+               MTD_CONFIG_ARGS="-s 0x200000"
+               default_do_upgrade "$ARGV"
+               ;;
+       ea8500)
+               platform_do_upgrade_linksys "$ARGV"
+               ;;
+       vr2600v)
+               PART_NAME="kernel:rootfs"
+               MTD_CONFIG_ARGS="-s 0x200000"
+               default_do_upgrade "$ARGV"
                ;;
        *)
-               return 1;
+               default_do_upgrade "$ARGV"
+               ;;
        esac
 }
 
-platform_pre_upgrade() {
+platform_nand_pre_upgrade() {
        local board=$(ipq806x_board_name)
 
        case "$board" in
-       AP148 |\
-       r7500)
-               nand_do_upgrade "$1"
+       nbg6817)
+               zyxel_do_upgrade "$1"
                ;;
        esac
 }
 
-# use default for platform_do_upgrade()
+blink_led() {
+       . /etc/diag.sh; set_state upgrade
+}
+
+append sysupgrade_pre_upgrade blink_led