ar71xx: add GL-AR300 support V3
[openwrt/openwrt.git] / target / linux / ar71xx / base-files / lib / upgrade / platform.sh
index b3c61ef539c085d9e85289b4e78d524b70453b91..e68a05bfc02dd60beaa9acae67a09d5e14fa5f67 100755 (executable)
@@ -173,17 +173,21 @@ platform_check_image() {
                ;;
        alfa-ap96 | \
        alfa-nx | \
+       arduino-yun | \
        ap113 | \
        ap121 | \
        ap121-mini | \
        ap136-010 | \
        ap136-020 | \
        ap135-020 | \
+       ap147-010 | \
        ap96 | \
        bxu2000n-2-a1 | \
        db120 | \
        f9k1115v2 |\
        hornet-ub | \
+       mr12 | \
+       mr16 | \
        wpj558 | \
        zcn-1523h-2 | \
        zcn-1523h-5)
@@ -196,6 +200,7 @@ platform_check_image() {
        ap81 | \
        ap83 | \
        ap132 | \
+       cf-e316n-v2 | \
        dgl-5500-a1 |\
        dhp-1565-a1 |\
        dir-505-a1 | \
@@ -203,13 +208,20 @@ platform_check_image() {
        dir-615-c1 | \
        dir-615-e1 | \
        dir-615-e4 | \
+       dir-615-i1 | \
        dir-825-c1 | \
        dir-835-a1 | \
+       dlan-hotspot | \
+       dlan-pro-500-wp | \
+       dlan-pro-1200-ac | \
        dragino2 | \
+       epg5000 | \
        esr1750 | \
        esr900 | \
        ew-dorin | \
        ew-dorin-router | \
+       gl-ar150 | \
+       gl-ar300 | \
        hiwifi-hc6361 | \
        hornet-ub-x2 | \
        mzk-w04nu | \
@@ -219,14 +231,17 @@ platform_check_image() {
        tew-732br | \
        wrt400n | \
        airgateway | \
+       airgatewaypro | \
        airrouter | \
        bullet-m | \
        loco-m-xw | \
        nanostation-m | \
        rocket-m | \
        rocket-m-xw | \
+       rocket-m-ti | \
        nanostation-m-xw | \
        rw2458n | \
+       wpj531 | \
        wndap360 | \
        wpj344 | \
        wzr-hp-g300nh2 | \
@@ -241,7 +256,8 @@ platform_check_image() {
        nbg460n_550n_550nh | \
        unifi | \
        unifi-outdoor | \
-       carambola2 )
+       carambola2 | \
+       weio )
                [ "$magic" != "2705" ] && {
                        echo "Invalid image type."
                        return 1
@@ -254,6 +270,7 @@ platform_check_image() {
                return 1
                ;;
 
+       bsb | \
        dir-825-b1 | \
        tew-673gru)
                dir825b_check_image "$1" && return 0
@@ -281,6 +298,7 @@ platform_check_image() {
 
                return 0;
                ;;
+       mr1750 | \
        mr600 | \
        mr600v2 | \
        mr900 | \
@@ -296,12 +314,16 @@ platform_check_image() {
                return 1
                ;;
 
+       antminer-s1 | \
+       antminer-s3 | \
        archer-c5 | \
        archer-c7 | \
        el-m150 | \
        el-mini | \
        gl-inet | \
        mc-mac1200r | \
+       minibox-v1 |\
+       onion-omega | \
        oolite | \
        smart-300 | \
        tl-mr10u | \
@@ -325,9 +347,11 @@ platform_check_image() {
        tl-wa901nd | \
        tl-wa901nd-v2 | \
        tl-wa901nd-v3 | \
+       tl-wdr3320-v2 | \
        tl-wdr3500 | \
        tl-wdr4300 | \
        tl-wdr4900-v2 | \
+       tl-wdr6500-v2 | \
        tl-wr703n | \
        tl-wr710n | \
        tl-wr720n-v3 | \
@@ -341,11 +365,20 @@ platform_check_image() {
        tl-wr842n-v2 | \
        tl-wr941nd | \
        tl-wr941nd-v5 | \
+       tl-wr941nd-v6 | \
        tl-wr1041n-v2 | \
        tl-wr1043nd | \
        tl-wr1043nd-v2 | \
        tl-wr2543n)
-               [ "$magic" != "0100" ] && {
+               local magic_ver="0100"
+
+               case "$board" in
+               tl-wdr6500-v2)
+                       magic_ver="0200"
+                       ;;
+               esac
+
+               [ "$magic" != "$magic_ver" ] && {
                        echo "Invalid image type."
                        return 1
                }
@@ -377,6 +410,7 @@ platform_check_image() {
                return 1
                ;;
 
+       nbg6616 | \
        unifi-outdoor-plus | \
        uap-pro)
                [ "$magic_long" != "19852003" ] && {
@@ -448,6 +482,19 @@ platform_check_image() {
        return 1
 }
 
+platform_pre_upgrade() {
+       local board=$(ar71xx_board_name)
+
+       case "$board" in
+       nbg6716 | \
+       r6100 | \
+       wndr3700v4 | \
+       wndr4300 )
+               nand_do_upgrade "$1"
+               ;;
+       esac
+}
+
 platform_do_upgrade() {
        local board=$(ar71xx_board_name)
 
@@ -482,6 +529,7 @@ platform_do_upgrade() {
        tew-673gru)
                platform_do_upgrade_dir825b "$ARGV"
                ;;
+       mr1750 | \
        mr600 | \
        mr600v2 | \
        mr900 | \