From faf327efea38b9dd8887a867306c13da8b274b47 Mon Sep 17 00:00:00 2001 From: Sukru Senli Date: Tue, 26 Dec 2017 13:19:30 +0100 Subject: [PATCH] layer2interface: dsl hotplug scripts --- .../broadcom/etc/hotplug.d/dsl/10-dsl | 22 ++++++++++++++ .../broadcom/etc/hotplug.d/dsl/20-dsl-leds | 29 +++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 layer2interface/broadcom/etc/hotplug.d/dsl/10-dsl create mode 100644 layer2interface/broadcom/etc/hotplug.d/dsl/20-dsl-leds diff --git a/layer2interface/broadcom/etc/hotplug.d/dsl/10-dsl b/layer2interface/broadcom/etc/hotplug.d/dsl/10-dsl new file mode 100644 index 000000000..275e4364c --- /dev/null +++ b/layer2interface/broadcom/etc/hotplug.d/dsl/10-dsl @@ -0,0 +1,22 @@ +include /lib/network + + +if [ "ADSL" == "$INTERFACE" -o "VDSL2" == "$INTERFACE" ]; then + if [ "ADSL" == "$INTERFACE" ]; then + if [ "$ACTION" == "remove" ]; then + uci_toggle_state layer2_interface adsl device down + else + uci_toggle_state layer2_interface adsl device up + fi + fi + if [ "VDSL2" == "$INTERFACE" ]; then + if [ "$ACTION" == "remove" ]; then + uci_toggle_state layer2_interface vdsl device down + else + uci_toggle_state layer2_interface vdsl device up + fi + fi + + /etc/init.d/dsl reload +fi + diff --git a/layer2interface/broadcom/etc/hotplug.d/dsl/20-dsl-leds b/layer2interface/broadcom/etc/hotplug.d/dsl/20-dsl-leds new file mode 100644 index 000000000..0b734de02 --- /dev/null +++ b/layer2interface/broadcom/etc/hotplug.d/dsl/20-dsl-leds @@ -0,0 +1,29 @@ +wantest() { + local wandev=$(db get hw.board.ethernetWanPort) + local ledontest + ledontest=$(cat /sys/class/net/$wandev/operstate) + if [ "$ledontest" == "up" ]; then + return 0 + fi + return 1 +} + +if [ "$INTERFACE" == "led" ]; then + if [ "$ACTION" == "link_up" ]; then + ubus call led.dsl set '{"state":"ok"}' + fi + + if [ "$ACTION" == "link_down" ]; then + ubus call led.dsl set '{"state":"off"}' +# $(wantest) && ubus call led.wan set '{"state":"ok"}' + fi + + if [ "$ACTION" == "started_training" ]; then + ubus call led.dsl set '{"state":"alert"}' + fi + + if [ "$ACTION" == "looking_for_carrier" ]; then + ubus call led.dsl set '{"state":"notice"}' + fi +fi +