openwrtv3/target/linux/ar71xx/base-files/etc/uci-defaults/04_led_migration
Piotr Dymacz 18d5cee2a8 ar71xx: fix Wallys DR344 GPIO-connected LEDs and button
This fixes wrong GPIO numbers for LEDs and button in Wallys DR344 board
and sets color of all LEDs to green as the mass production boards have
only green one.

Actually, DR344 has 6 GPIO-connected LEDs and one button:

- GPIO11: status
- GPIO12: sig1
- GPIO13: sig2
- GPIO14: sig3
- GPIO15: sig4
- GPIO16: reset button
- GPIO17: lan

WAN LED is connected directly with AR8035 PHY.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-30 14:34:04 +02:00

94 lines
1.3 KiB
Bash

#!/bin/sh
#
# Copyright (C) 2013 OpenWrt.org
#
LED_OPTIONS_CHANGED=0
. /lib/functions.sh
do_led_update_sysfs()
{
local cfg=$1; shift
local tuples="$@"
local sysfs
local name
config_get sysfs $cfg sysfs
config_get name $cfg name
[ -z "$sysfs" ] && return
for tuple in $tuples; do
local old=${tuple%=*}
local new=${tuple#*=}
local new_sysfs
new_sysfs=$(echo ${sysfs} | sed "s/${old}/${new}/")
[ "$new_sysfs" = "$sysfs" ] && continue
uci set system.${cfg}.sysfs="${new_sysfs}"
LED_OPTIONS_CHANGED=1
logger -t led-migration "sysfs option of LED \"${name}\" updated to ${new_sysfs}"
done;
}
migrate_leds()
{
config_load system
config_foreach do_led_update_sysfs led "$@"
}
. /lib/ar71xx.sh
board=$(ar71xx_board_name)
case "$board" in
dhp-1565-a1|\
dir-825-c1|\
dir-835-a1)
migrate_leds ":orange:=:amber:" ":wifi_bgn=:wlan2g"
;;
dr344)
migrate_leds ":red:=:green:" ":yellow:=:green:"
;;
wndap360)
migrate_leds "wndap360:=netgear:"
;;
wndr3700)
migrate_leds "wndr3700:=netgear:"
;;
wndr3700v4 | \
wndr4300)
migrate_leds ":orange:=:amber:"
;;
wnr2000)
migrate_leds "wnr2000:=netgear:"
;;
wnr2200)
migrate_leds "wnr2200:=netgear:"
;;
wnr612-v2)
migrate_leds "wnr612v2:=netgear:"
;;
wnr1000-v2)
migrate_leds "wnr1000v2:=netgear:"
;;
*)
;;
esac
[ "$LED_OPTIONS_CHANGED" = "1" ] && uci commit system
exit 0