ramips: add support for GL-inet GL-MT300N-V2
[openwrt/openwrt.git] / target / linux / ramips / base-files / lib / upgrade / platform.sh
index 2f6c6246ab5a7e2b7e57861edc83665b9cd679db..6aad4c96019b9b8eceea5364890ca23dcaa13bb7 100755 (executable)
@@ -16,25 +16,28 @@ platform_check_image() {
        case "$board" in
        3g150b|\
        3g300m|\
-       3g-6200n|\
-       3g-6200nl|\
        a5-v11|\
        ai-br100|\
        air3gii|\
        all0239-3g|\
-       all0256n|\
+       all0256n-4M|\
+       all0256n-8M|\
        all5002|\
        all5003|\
        ar725w|\
-       asl26555|\
+       asl26555-8M|\
+       asl26555-16M|\
        awapn2403|\
-       awm002-evb|\
+       awm002-evb-4M|\
+       awm002-evb-8M|\
        awm003-evb|\
        bc2|\
        broadway|\
        carambola|\
        cf-wr800n|\
+       cs-qr10|\
        d105|\
+       d240|\
        dap-1350|\
        db-wrt01|\
        dcs-930|\
@@ -43,49 +46,89 @@ platform_check_image() {
        dir-300-b7|\
        dir-320-b1|\
        dir-600-b1|\
-       dir-600-b2|\
        dir-615-d|\
        dir-615-h1|\
        dir-620-a1|\
        dir-620-d1|\
        dir-810l|\
+       duzun-dm06|\
+       dwr-512-b|\
        e1700|\
        esr-9753|\
+       ew1200|\
+       ex2700|\
+       ex3700|\
        f7c027|\
        firewrt|\
        fonera20n|\
        freestation5|\
+       gl-mt300a|\
+       gl-mt300n|\
+       gl-mt750|\
+       gl-mt300n-v2|\
+       hc5*61|\
+       hc5661a|\
        hg255d|\
        hlk-rm04|\
        hpm|\
        ht-tm02|\
        hw550-3g|\
        ip2202|\
+       jhr-n805r|\
+       jhr-n825r|\
+       jhr-n926r|\
+       kn|\
+       kn_rc|\
+       kn_rf|\
+       kng_rc|\
+       linkits7688|\
+       linkits7688d|\
        m2m|\
        m3|\
-       m4|\
+       m4-4M|\
+       m4-8M|\
+       mac1200rv2|\
        microwrt|\
        miniembplug|\
        miniembwifi|\
        miwifi-mini|\
+       miwifi-nano|\
        mlw221|\
        mlwg2|\
        mofi3500-3gn|\
        mpr-a1|\
        mpr-a2|\
        mr-102n|\
+       mt7628|\
+       mzk-750dhp|\
        mzk-dp150n|\
+       mzk-ex300np|\
+       mzk-ex750np|\
        mzk-w300nh2|\
+       mzk-wdpr|\
        nbg-419n|\
+       nbg-419n2|\
+       newifi-d1|\
+       nixcore-x1-8M|\
+       nixcore-x1-16M|\
        nw718|\
+       omega2|\
+       omega2p|\
        oy-0001|\
+       pbr-d1|\
        pbr-m1|\
+       psg1208|\
+       psg1218a|\
+       psg1218b|\
        psr-680w|\
-       px-4885|\
+       px-4885-4M|\
+       px-4885-8M|\
+       rb750gr3|\
        re6500|\
        rp-n53|\
        rt5350f-olinuxino|\
        rt5350f-olinuxino-evb|\
+       rt-ac51u|\
        rt-g32-b1|\
        rt-n10-plus|\
        rt-n13u|\
@@ -94,63 +137,99 @@ platform_check_image() {
        rt-n56u|\
        rut5xx|\
        sap-g3200u3|\
+       sk-wb8|\
        sl-r7205|\
        tew-691gr|\
        tew-692gr|\
+       tew-714tru|\
+       timecloud|\
+       tiny-ac|\
        ur-326n4g|\
        ur-336un|\
        v22rw-2x2|\
-       vocore|\
+       vocore-8M|\
+       vocore-16M|\
+       vocore2|\
+       vr500|\
        w150m|\
+       w2914nsv2|\
        w306r-v20|\
        w502u|\
+       wf-2881|\
        whr-1166d|\
        whr-300hp2|\
        whr-600d|\
        whr-g300n|\
+       widora-neo|\
+       witi|\
        wizfi630a|\
        wl-330n|\
        wl-330n3g|\
        wl-341v3|\
        wl-351|\
+       wl-wn575a3|\
        wli-tx4-ag300n|\
+       wlr-6000|\
        wmr-300|\
+       wn3000rpv3|\
        wnce2001|\
-       wr512-3gn|\
+       wndr3700v5|\
+       wr512-3gn-4M|\
+       wr512-3gn-8M|\
        wr6202|\
+       wrh-300cr|\
        wrtnode|\
+       wrtnode2r |\
+       wrtnode2p |\
        wsr-600|\
-       wt1520|\
-       wt3020|\
+       wt1520-4M|\
+       wt1520-8M|\
+       wt3020-4M|\
+       wt3020-8M|\
        wzr-agl300nh|\
        x5|\
        x8|\
        y1|\
        y1s|\
+       zbt-ape522ii|\
+       zbt-cpe102|\
        zbt-wa05|\
+       zbt-we1326|\
+       zbt-we2026|\
+       zbt-we826-16M|\
+       zbt-we826-32M|\
+       zbt-wg2626|\
+       zbt-wg3526-16M|\
+       zbt-wg3526-32M|\
        zbt-wr8305rt|\
-       zte-q7)
+       zte-q7|\
+       youku-yk1)
                [ "$magic" != "27051956" ] && {
                        echo "Invalid image type."
                        return 1
                }
                return 0
                ;;
-       ar670w)
-               [ "$magic" != "6d000080" ] && {
+       3g-6200n|\
+       3g-6200nl|\
+       br-6475nd)
+               [ "$magic" != "43535953" ] && {
                        echo "Invalid image type."
                        return 1
                }
                return 0
                ;;
-       br-6475nd)
-               [ "$magic" != "43535953" ] && {
+
+       ar670w)
+               [ "$magic" != "6d000080" ] && {
                        echo "Invalid image type."
                        return 1
                }
                return 0
                ;;
-       c20i)
+       c20i|\
+       c50|\
+       mr200)
                [ "$magic" != "03000000" ] && {
                        echo "Invalid image type."
                        return 1
@@ -158,6 +237,7 @@ platform_check_image() {
                return 0
                ;;
        cy-swr1100|\
+       dch-m225|\
        dir-610-a1|\
        dir-645|\
        dir-860l-b1)
@@ -167,6 +247,16 @@ platform_check_image() {
                }
                return 0
                ;;
+       hc5962|\
+       r6220)
+               # these boards use metadata images
+               return 0
+               ;;
+       ubnt-erx)
+               nand_do_platform_check "$board" "$1"
+               return $?;
+               ;;
+       wcr-1166ds|\
        wsr-1166)
                [ "$magic" != "48445230" ] && {
                        echo "Invalid image type."
@@ -180,6 +270,28 @@ platform_check_image() {
        return 1
 }
 
+platform_nand_pre_upgrade() {
+       local board=$(ramips_board_name)
+
+       case "$board" in
+       ubnt-erx)
+               platform_upgrade_ubnt_erx "$ARGV"
+               ;;
+       esac
+}
+
+platform_pre_upgrade() {
+       local board=$(ramips_board_name)
+
+       case "$board" in
+       hc5962|\
+       r6220|\
+       ubnt-erx)
+               nand_do_upgrade "$ARGV"
+               ;;
+       esac
+}
+
 platform_do_upgrade() {
        local board=$(ramips_board_name)
 
@@ -198,4 +310,9 @@ disable_watchdog() {
        }
 }
 
+blink_led() {
+       . /etc/diag.sh; set_state upgrade
+}
+
 append sysupgrade_pre_upgrade disable_watchdog
+append sysupgrade_pre_upgrade blink_led