[adm5120] add initial diagnostic support

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9048 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Gabor Juhos 2007-09-27 15:02:19 +00:00
parent 58e10b5af4
commit 66cf26e641
2 changed files with 98 additions and 0 deletions

View File

@ -0,0 +1,48 @@
#!/bin/sh
#
# Copyright (C) 2007 OpenWrt.org
#
# $Id$
#
. /lib/adm5120.sh
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_set_morse() {
led_set_attr $status_led "trigger" "morse"
led_set_attr $status_led "delay" "$1"
led_set_attr $status_led "message" "$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
}
set_state() {
case "$1" in
preinit)
status_led_set_timer 200 200
;;
failsafe)
status_led_set_timer 50 50
;;
done)
status_led_on
;;
esac
}

View File

@ -0,0 +1,50 @@
#!/bin/sh
#
# Copyright (C) 2007 OpenWrt.org
#
# $Id$
#
board_name=""
status_led=""
sys_mtd_part=""
adm5120_detect() {
board_name=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /system type/ {print $2}' /proc/cpuinfo)
case "$board_name" in
"Cellvision"*)
status_led="status"
sys_mtd_part="firmware"
;;
"Compex"*)
status_led="diag"
case "$board_name" in
*-WRT)
sys_mtd_part="trx"
;;
*)
sys_mtd_part="partition1"
;;
esac
;;
"Edimax"*)
status_led="power"
sys_mtd_part="firmware"
;;
"Infineon"*)
sys_mtd_part="firmware"
;;
"Mikrotik"*)
status_led="power"
;;
"ZyXEL"*)
status_led="power"
sys_mtd_part="trx"
;;
*)
;;
esac
}
adm5120_detect