Changeset 47914


Ignore:
Timestamp:
2015-12-17T10:27:52+01:00 (2 years ago)
Author:
blogic
Message:

lantiq: Fix LED handling.

  • Use common OpenWrt blink patterns instead of custom ones
  • Add preinit_regular hook
  • Handle the TDW89X0 that does not have a configurable power LED

Signed-off-by: Vittorio Gambaletta <openwrt@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/lantiq/base-files/etc/diag.sh

    r38342 r47914  
    44. /lib/functions/leds.sh 
    55 
    6 status_led="power" 
     6status_led=power 
     7[ ! -d /sys/class/leds/power/ ] && [ ! -d /sys/class/leds/power1/ ] && [ ! -d /sys/class/leds/power2/ ] && [ -d /sys/class/leds/wps/ ] && status_led=wps 
    78 
    89set_state() { 
    9         [ -d /sys/class/leds/power2/ ] && { 
    10  
    11                 case "$1" in 
    12                 preinit) 
    13                         led_set_attr "power2" "trigger" "heartbeat" 
    14                         status_led_on 
    15                         ;; 
    16                 failsafe) 
    17                         led_off "power2" 
    18                         status_led_set_timer 100 100 
    19                         ;; 
    20                 done) 
    21                         led_off "power2" 
    22                         ;; 
    23                 esac 
    24                 return 
    25         } 
    26  
    2710        case "$1" in 
    2811        preinit) 
    29                 status_led_set_heartbeat 
     12                if [ -d /sys/class/leds/power2/ ]; then 
     13                        status_led_on 
     14                        status_led=power2 
     15                        status_led_blink_preinit 
     16                        status_led=power 
     17                else 
     18                        status_led_blink_preinit 
     19                fi 
    3020                ;; 
    3121        failsafe) 
    32                 [ -d /sys/class/leds/power1 ] && { 
     22                if [ -d /sys/class/leds/power2/ ]; then 
     23                        led_off power2 
     24                        status_led_blink_failsafe 
     25                elif [ -d /sys/class/leds/power1/ ]; then 
    3326                        status_led_off 
    34                         led_timer "power1" 100 100 
    35                 } || status_led_set_timer 100 100 
     27                        status_led=power1 
     28                        status_led_blink_failsafe 
     29                        status_led=power 
     30                else 
     31                        status_led_blink_failsafe 
     32                fi 
     33                ;; 
     34        preinit_regular) 
     35                if [ -d /sys/class/leds/power2/ ]; then 
     36                        status_led_on 
     37                        status_led=power2 
     38                        status_led_blink_preinit_regular 
     39                        status_led=power 
     40                else 
     41                        status_led_blink_preinit_regular 
     42                fi 
    3643                ;; 
    3744        done) 
    3845                status_led_on 
    39                 led_off "power1" 
     46                led_off power1 
     47                led_off power2 
    4048                ;; 
    4149        esac 
Note: See TracChangeset for help on using the changeset viewer.