aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArınç ÜNAL <arinc.unal@arinc9.com>2022-05-04 11:34:29 +0300
committerRafał Miłecki <rafal@milecki.pl>2022-06-07 16:18:20 +0200
commit638220bfee001cda74225befb587a558cf7d9b9c (patch)
tree3fb6400d6c94bc42635766c0ca8a46c5b1e0dec9
parentbee8612d4f3ef4323bc15a4fe8ddfddadf5ab367 (diff)
downloadupstream-638220bfee001cda74225befb587a558cf7d9b9c.tar.gz
upstream-638220bfee001cda74225befb587a558cf7d9b9c.tar.bz2
upstream-638220bfee001cda74225befb587a558cf7d9b9c.zip
packages: nvram: add NVRAM quirks for bcm53xx target
Add NVRAM quirks script for the bcm53xx target. Split NVRAM quirks for the bcm47xx and bcm53xx targets. Move clear partialboot NVRAM quirk for Linksys EA9500 here. Add set wireless LED behaviour quirk for Asus RT-AC88U. Use boot() instead of start() as nvram commands are meant to be executed only once, at boot. Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> (cherry picked from commit f4e219fd5e6cfa33d234dad134fb105cc1620f54)
-rw-r--r--package/utils/nvram/Makefile8
-rwxr-xr-xpackage/utils/nvram/files/nvram-bcm47xx.init (renamed from package/utils/nvram/files/nvram.init)4
-rwxr-xr-xpackage/utils/nvram/files/nvram-bcm53xx.init40
-rwxr-xr-xtarget/linux/bcm53xx/base-files/etc/init.d/clear_partialboot13
4 files changed, 48 insertions, 17 deletions
diff --git a/package/utils/nvram/Makefile b/package/utils/nvram/Makefile
index 863b304d0d..b957211283 100644
--- a/package/utils/nvram/Makefile
+++ b/package/utils/nvram/Makefile
@@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=nvram
-PKG_RELEASE:=10
+PKG_RELEASE:=11
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
@@ -44,7 +44,11 @@ define Package/nvram/install
$(INSTALL_BIN) $(PKG_BUILD_DIR)/nvram $(1)/usr/sbin/
ifneq ($(CONFIG_TARGET_bcm47xx),)
$(INSTALL_DIR) $(1)/etc/init.d
- $(INSTALL_BIN) ./files/nvram.init $(1)/etc/init.d/nvram
+ $(INSTALL_BIN) ./files/nvram-bcm47xx.init $(1)/etc/init.d/nvram
+endif
+ifneq ($(CONFIG_TARGET_bcm53xx),)
+ $(INSTALL_DIR) $(1)/etc/init.d
+ $(INSTALL_BIN) ./files/nvram-bcm53xx.init $(1)/etc/init.d/nvram
endif
endef
diff --git a/package/utils/nvram/files/nvram.init b/package/utils/nvram/files/nvram-bcm47xx.init
index 467ab28195..4a2bcd16fe 100755
--- a/package/utils/nvram/files/nvram.init
+++ b/package/utils/nvram/files/nvram-bcm47xx.init
@@ -1,7 +1,7 @@
#!/bin/sh /etc/rc.common
# NVRAM setup
#
-# This file handles the NVRAM quirks of various hardware.
+# This file handles the NVRAM quirks of various hardware of the bcm47xx target.
START=02
alias debug=${DEBUG:-:}
@@ -71,7 +71,7 @@ fixup_linksys() {
esac
}
-start() {
+boot() {
# Don't do any fixups on the WGT634U
[ "$(cat /proc/diag/model)" = "Netgear WGT634U" ] && return
diff --git a/package/utils/nvram/files/nvram-bcm53xx.init b/package/utils/nvram/files/nvram-bcm53xx.init
new file mode 100755
index 0000000000..0502cd28b6
--- /dev/null
+++ b/package/utils/nvram/files/nvram-bcm53xx.init
@@ -0,0 +1,40 @@
+#!/bin/sh /etc/rc.common
+# NVRAM setup
+#
+# This file handles the NVRAM quirks of various hardware of the bcm53xx target.
+
+START=02
+
+clear_partialboots() {
+ # clear partialboots
+
+ case $(board_name) in
+ linksys,panamera)
+ COMMIT=1
+ nvram set partialboots=0
+ ;;
+ esac
+}
+
+set_wireless_led_behaviour() {
+ # set Broadcom wireless LED behaviour for both radios
+ # 0:ledbh9 -> Behaviour of 2.4GHz LED
+ # 1:ledbh9 -> Behaviour of 5GHz LED
+ # 0x7 makes the wireless LEDs on, when radios are enabled, and blink when there's activity
+
+ case $(board_name) in
+ asus,rt-ac88u)
+ COMMIT=1
+ nvram set 0:ledbh9=0x7 set 1:ledbh9=0x7
+ ;;
+ esac
+}
+
+boot() {
+ . /lib/functions.sh
+
+ clear_partialboots
+ set_wireless_led_behaviour
+
+ [ "$COMMIT" = "1" ] && nvram commit
+}
diff --git a/target/linux/bcm53xx/base-files/etc/init.d/clear_partialboot b/target/linux/bcm53xx/base-files/etc/init.d/clear_partialboot
deleted file mode 100755
index b3eddf4af0..0000000000
--- a/target/linux/bcm53xx/base-files/etc/init.d/clear_partialboot
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/sh /etc/rc.common
-
-START=97
-boot() {
- . /lib/functions.sh
-
- case $(board_name) in
- linksys,panamera)
- # clear partialboots
- nvram set partialboots=0 && nvram commit
- ;;
- esac
-}