base-files: diag does not need to insmod any drivers, procd already did it for us
[openwrt.git] / target / linux / ar71xx / base-files / etc / diag.sh
index bfe1416..72390c0 100755 (executable)
@@ -1,33 +1,9 @@
 #!/bin/sh
-#
-# Copyright (C) 2009 OpenWrt.org
-#
-#
+# Copyright (C) 2009-2013 OpenWrt.org
 
+. /lib/functions/leds.sh
 . /lib/ar71xx.sh
 
-status_led=""
-
-led_set_attr() {
-       [ -f "/sys/class/leds/$1/$2" ] && echo "$3" > "/sys/class/leds/$1/$2"
-}
-
-status_led_set_timer() {
-       led_set_attr $status_led "trigger" "timer"
-       led_set_attr $status_led "delay_on" "$1"
-       led_set_attr $status_led "delay_off" "$2"
-}
-
-status_led_on() {
-       led_set_attr $status_led "trigger" "none"
-       led_set_attr $status_led "brightness" 255
-}
-
-status_led_off() {
-       led_set_attr $status_led "trigger" "none"
-       led_set_attr $status_led "brightness" 0
-}
-
 get_status_led() {
        case $(ar71xx_board_name) in
        alfa-nx)
@@ -36,9 +12,16 @@ get_status_led() {
        all0305)
                status_led="eap7660d:green:ds4"
                ;;
-       ap136-010)
+       ap132)
+               status_led="ap132:green:status"
+               ;;
+       ap136-010|\
+       ap136-020)
                status_led="ap136:green:status"
                ;;
+       ap135-020)
+               status_led="ap135:green:status"
+               ;;
        ap81)
                status_led="ap81:green:status"
                ;;
@@ -67,7 +50,11 @@ get_status_led() {
        dir-615-c1)
                status_led="d-link:green:status"
                ;;
-       dir-825-b1)
+       dir-825-b1 |\
+       dir-835-a1)
+               status_led="d-link:orange:power"
+               ;;
+       dir-825-c1)
                status_led="d-link:orange:power"
                ;;
        eap7660d)
@@ -86,6 +73,9 @@ get_status_led() {
        mr600)
                status_led="mr600:orange:power"
                ;;
+       mr600v2)
+               status_led="mr600:blue:power"
+               ;;
        mzk-w04nu | \
        mzk-w300nh)
                status_led="planex:green:status"
@@ -128,8 +118,10 @@ get_status_led() {
        tl-mr3220 | \
        tl-mr3220-v2 | \
        tl-mr3420 | \
+       tl-mr3420-v2 | \
        tl-wa901nd | \
        tl-wa901nd-v2 | \
+       tl-wdr3500 | \
        tl-wr1041n-v2 | \
        tl-wr1043nd | \
        tl-wr741nd | \
@@ -140,8 +132,10 @@ get_status_led() {
        tl-wr941nd)
                status_led="tp-link:green:system"
                ;;
+       archer-c7 | \
        tl-wdr4300 | \
-       tl-wr703n)
+       tl-wr703n | \
+       tl-wr720n-v3)
                status_led="tp-link:blue:system"
                ;;
        tl-wr2543n)
@@ -166,6 +160,9 @@ get_status_led() {
        wzr-hp-g300nh2)
                status_led="buffalo:red:diag"
                ;;
+       wndap360)
+               status_led="wndap360:green:power"
+               ;;
        wndr3700)
                status_led="wndr3700:green:power"
                ;;
@@ -187,7 +184,7 @@ get_status_led() {
        zcn-1523h-2 | zcn-1523h-5)
                status_led="zcn-1523h:amber:init"
                ;;
-       esac;
+       esac
 }
 
 set_state() {
@@ -195,13 +192,10 @@ set_state() {
 
        case "$1" in
        preinit)
-               insmod leds-gpio
-               insmod ledtrig-default-on
-               insmod ledtrig-timer
-               status_led_set_timer 200 200
+               status_led_blink_preinit
                ;;
        failsafe)
-               status_led_set_timer 50 50
+               status_led_blink_failsafe
                ;;
        done)
                status_led_on