aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Lamparter <chunkeey@gmail.com>2017-11-28 22:51:06 +0100
committerJohn Crispin <john@phrozen.org>2017-12-14 09:29:30 +0100
commitda6fdce3652529ca255f66293645aeb28ad81eb3 (patch)
tree2d0aaa2a325f474aac009773b97f8490317442bb
parenta8d3d517d0cf9f3d5a651091cfd193f3e7a454ce (diff)
downloadupstream-da6fdce3652529ca255f66293645aeb28ad81eb3.tar.gz
upstream-da6fdce3652529ca255f66293645aeb28ad81eb3.tar.bz2
upstream-da6fdce3652529ca255f66293645aeb28ad81eb3.zip
base-files: unify get_dt_led helper function
Lantiq and IPQ806X (which includes IPQ40XX) both define the same custom function {ipq806x|lantiq}_get_dt_led. This patch moves the function into the base-file package at lib/functions/leds.sh to make it more accessible for other targets as well. Cc: Mathias Kresin <dev@kresin.me> Cc: John Crispin <john@phrozen.org> Cc: Hannu Nyman <hannu.nyman@iki.fi> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
-rw-r--r--package/base-files/files/lib/functions/leds.sh12
-rwxr-xr-xtarget/linux/ipq806x/base-files/etc/diag.sh9
-rw-r--r--target/linux/ipq806x/base-files/lib/ipq806x.sh12
-rwxr-xr-xtarget/linux/lantiq/base-files/etc/board.d/01_leds12
-rw-r--r--target/linux/lantiq/base-files/etc/diag.sh9
-rw-r--r--target/linux/lantiq/base-files/lib/functions/lantiq.sh12
6 files changed, 26 insertions, 40 deletions
diff --git a/package/base-files/files/lib/functions/leds.sh b/package/base-files/files/lib/functions/leds.sh
index 857e7e5392..83e775fada 100644
--- a/package/base-files/files/lib/functions/leds.sh
+++ b/package/base-files/files/lib/functions/leds.sh
@@ -1,6 +1,18 @@
#!/bin/sh
# Copyright (C) 2013 OpenWrt.org
+get_dt_led() {
+ local label
+ local ledpath
+ local basepath="/proc/device-tree"
+ local nodepath="$basepath/aliases/led-$1"
+
+ [ -f "$nodepath" ] && ledpath=$(cat "$nodepath")
+ [ -n "$ledpath" ] && label=$(cat "$basepath$ledpath/label")
+
+ echo "$label"
+}
+
led_set_attr() {
[ -f "/sys/class/leds/$1/$2" ] && echo "$3" > "/sys/class/leds/$1/$2"
}
diff --git a/target/linux/ipq806x/base-files/etc/diag.sh b/target/linux/ipq806x/base-files/etc/diag.sh
index 7c9a9d082c..df4afd936c 100755
--- a/target/linux/ipq806x/base-files/etc/diag.sh
+++ b/target/linux/ipq806x/base-files/etc/diag.sh
@@ -2,12 +2,11 @@
# Copyright (C) 2016 Henryk Heisig hyniu@o2.pl
. /lib/functions/leds.sh
-. /lib/ipq806x.sh
-boot="$(ipq806x_get_dt_led boot)"
-failsafe="$(ipq806x_get_dt_led failsafe)"
-running="$(ipq806x_get_dt_led running)"
-upgrade="$(ipq806x_get_dt_led upgrade)"
+boot="$(get_dt_led boot)"
+failsafe="$(get_dt_led failsafe)"
+running="$(get_dt_led running)"
+upgrade="$(get_dt_led upgrade)"
set_state() {
status_led="$boot"
diff --git a/target/linux/ipq806x/base-files/lib/ipq806x.sh b/target/linux/ipq806x/base-files/lib/ipq806x.sh
index 940c7ef204..c4d2c8f258 100644
--- a/target/linux/ipq806x/base-files/lib/ipq806x.sh
+++ b/target/linux/ipq806x/base-files/lib/ipq806x.sh
@@ -62,15 +62,3 @@ ipq806x_board_detect() {
echo "$IPQ806X_BOARD_NAME" > /tmp/sysinfo/board_name
echo "$IPQ806X_MODEL" > /tmp/sysinfo/model
}
-
-ipq806x_get_dt_led() {
- local label
- local ledpath
- local basepath="/proc/device-tree"
- local nodepath="$basepath/aliases/led-$1"
-
- [ -f "$nodepath" ] && ledpath=$(cat "$nodepath")
- [ -n "$ledpath" ] && label=$(cat "$basepath$ledpath/label")
-
- echo "$label"
-}
diff --git a/target/linux/lantiq/base-files/etc/board.d/01_leds b/target/linux/lantiq/base-files/etc/board.d/01_leds
index 2c7a402dfb..187ae68a13 100755
--- a/target/linux/lantiq/base-files/etc/board.d/01_leds
+++ b/target/linux/lantiq/base-files/etc/board.d/01_leds
@@ -4,23 +4,23 @@
# based on ar71xx
#
+. /lib/functions/leds.sh
. /lib/functions/uci-defaults.sh
-. /lib/functions/lantiq.sh
board_config_update
-led_wifi="$(lantiq_get_dt_led wifi)"
+led_wifi="$(get_dt_led wifi)"
[ -n "$led_wifi" ] && ucidef_set_led_wlan "wifi" "wifi" "$led_wifi" "phy0tpt"
-led_usb="$(lantiq_get_dt_led usb)"
+led_usb="$(get_dt_led usb)"
[ -n "$led_usb" ] && ucidef_set_led_usbdev "usb" "usb" "$led_usb" "1-1"
-led_usb2="$(lantiq_get_dt_led usb2)"
+led_usb2="$(get_dt_led usb2)"
[ -n "$led_usb2" ] && ucidef_set_led_usbdev "usb2" "usb2" "$led_usb2" "2-1"
-led_dsl="$(lantiq_get_dt_led dsl)"
+led_dsl="$(get_dt_led dsl)"
[ -n "$led_dsl" ] && {
- led_internet="$(lantiq_get_dt_led internet)"
+ led_internet="$(get_dt_led internet)"
if [ -n "$led_internet" ]; then
ucidef_set_led_default "dsl" "dsl" "$led_dsl" "0"
ucidef_set_led_netdev "internet" "internet" "$led_internet" "pppoe-wan"
diff --git a/target/linux/lantiq/base-files/etc/diag.sh b/target/linux/lantiq/base-files/etc/diag.sh
index 70ed25cb80..4fb47bd273 100644
--- a/target/linux/lantiq/base-files/etc/diag.sh
+++ b/target/linux/lantiq/base-files/etc/diag.sh
@@ -2,14 +2,13 @@
# Copyright (C) 2010-2015 OpenWrt.org
. /lib/functions/leds.sh
-. /lib/functions/lantiq.sh
-boot="$(lantiq_get_dt_led boot)"
-failsafe="$(lantiq_get_dt_led failsafe)"
-running="$(lantiq_get_dt_led running)"
+boot="$(get_dt_led boot)"
+failsafe="$(get_dt_led failsafe)"
+running="$(get_dt_led running)"
set_state() {
- status_led="$boot"
+ status_led="$boot"
case "$1" in
preinit)
diff --git a/target/linux/lantiq/base-files/lib/functions/lantiq.sh b/target/linux/lantiq/base-files/lib/functions/lantiq.sh
index 8c2e0ce5c1..62c7a6b662 100644
--- a/target/linux/lantiq/base-files/lib/functions/lantiq.sh
+++ b/target/linux/lantiq/base-files/lib/functions/lantiq.sh
@@ -1,17 +1,5 @@
#!/bin/sh
-lantiq_get_dt_led() {
- local label
- local ledpath
- local basepath="/proc/device-tree"
- local nodepath="$basepath/aliases/led-$1"
-
- [ -f "$nodepath" ] && ledpath=$(cat "$nodepath")
- [ -n "$ledpath" ] && label=$(cat "$basepath$ledpath/label")
-
- echo "$label"
-}
-
lantiq_is_vdsl_system() {
grep -qE "system type.*: (VR9|xRX200)" /proc/cpuinfo
}