Message ID | 20220331191956.5267-1-arinc.unal@arinc9.com |
---|---|
State | Changes Requested |
Headers | show |
Series | packages: nvram: add NVRAM quirks for bcm53xx target | expand |
On 31.03.2022 21:19, Arınç ÜNAL wrote: > 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. > > Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> > --- > package/utils/nvram/Makefile | 8 +++- > .../files/{nvram.init => nvram-bcm47xx.init} | 2 +- > package/utils/nvram/files/nvram-bcm53xx.init | 40 +++++++++++++++++++ > .../base-files/etc/init.d/clear_partialboot | 13 ------ > 4 files changed, 47 insertions(+), 16 deletions(-) > rename package/utils/nvram/files/{nvram.init => nvram-bcm47xx.init} (97%) > create mode 100755 package/utils/nvram/files/nvram-bcm53xx.init > delete mode 100755 target/linux/bcm53xx/base-files/etc/init.d/clear_partialboot > > 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 > similarity index 97% > rename from package/utils/nvram/files/nvram.init > rename to package/utils/nvram/files/nvram-bcm47xx.init > index 467ab28195..c95933246c 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:-:} > diff --git a/package/utils/nvram/files/nvram-bcm53xx.init b/package/utils/nvram/files/nvram-bcm53xx.init > new file mode 100755 > index 0000000000..d50917c776 > --- /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 > +} > + > +start() { > + . /lib/functions.sh > + > + clear_partialboots > + set_wireless_led_behaviour > + > + [ "$COMMIT" = "1" ] && nvram commit > +} Do we want / need to switch from boot() to start()? I don't have opinion, just making sure it's intentional. > 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 > -}
On 03/05/2022 10:20, Rafał Miłecki wrote: > On 31.03.2022 21:19, Arınç ÜNAL wrote: >> 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. >> >> Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> >> --- >> package/utils/nvram/Makefile | 8 +++- >> .../files/{nvram.init => nvram-bcm47xx.init} | 2 +- >> package/utils/nvram/files/nvram-bcm53xx.init | 40 +++++++++++++++++++ >> .../base-files/etc/init.d/clear_partialboot | 13 ------ >> 4 files changed, 47 insertions(+), 16 deletions(-) >> rename package/utils/nvram/files/{nvram.init => nvram-bcm47xx.init} >> (97%) >> create mode 100755 package/utils/nvram/files/nvram-bcm53xx.init >> delete mode 100755 >> target/linux/bcm53xx/base-files/etc/init.d/clear_partialboot >> >> 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 >> similarity index 97% >> rename from package/utils/nvram/files/nvram.init >> rename to package/utils/nvram/files/nvram-bcm47xx.init >> index 467ab28195..c95933246c 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:-:} >> diff --git a/package/utils/nvram/files/nvram-bcm53xx.init >> b/package/utils/nvram/files/nvram-bcm53xx.init >> new file mode 100755 >> index 0000000000..d50917c776 >> --- /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 >> +} >> + >> +start() { >> + . /lib/functions.sh >> + >> + clear_partialboots >> + set_wireless_led_behaviour >> + >> + [ "$COMMIT" = "1" ] && nvram commit >> +} > > Do we want / need to switch from boot() to start()? > > I don't have opinion, just making sure it's intentional. Wiki says boot() is executed before start() which is usually used to turn on hardware. bcm47xx nvram initscript uses start() so it doesn't seem to matter. I tested the patch on my Asus RT-AC88U to make sure the initscript works fine. https://openwrt.org/docs/techref/initscripts#other_functions Arınç
On 5/3/22 09:44, Arınç ÜNAL wrote: > On 03/05/2022 10:20, Rafał Miłecki wrote: >> On 31.03.2022 21:19, Arınç ÜNAL wrote: >>> 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. >>> >>> Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> >>> --- >>> package/utils/nvram/Makefile | 8 +++- >>> .../files/{nvram.init => nvram-bcm47xx.init} | 2 +- >>> package/utils/nvram/files/nvram-bcm53xx.init | 40 +++++++++++++++++++ >>> .../base-files/etc/init.d/clear_partialboot | 13 ------ >>> 4 files changed, 47 insertions(+), 16 deletions(-) >>> rename package/utils/nvram/files/{nvram.init => nvram-bcm47xx.init} >>> (97%) >>> create mode 100755 package/utils/nvram/files/nvram-bcm53xx.init >>> delete mode 100755 >>> target/linux/bcm53xx/base-files/etc/init.d/clear_partialboot >>> >>> 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 >>> similarity index 97% >>> rename from package/utils/nvram/files/nvram.init >>> rename to package/utils/nvram/files/nvram-bcm47xx.init >>> index 467ab28195..c95933246c 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:-:} >>> diff --git a/package/utils/nvram/files/nvram-bcm53xx.init >>> b/package/utils/nvram/files/nvram-bcm53xx.init >>> new file mode 100755 >>> index 0000000000..d50917c776 >>> --- /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 >>> +} >>> + >>> +start() { >>> + . /lib/functions.sh >>> + >>> + clear_partialboots >>> + set_wireless_led_behaviour >>> + >>> + [ "$COMMIT" = "1" ] && nvram commit >>> +} >> >> Do we want / need to switch from boot() to start()? >> >> I don't have opinion, just making sure it's intentional. > > Wiki says boot() is executed before start() which is usually used to > turn on hardware. bcm47xx nvram initscript uses start() so it doesn't > seem to matter. I tested the patch on my Asus RT-AC88U to make sure the > initscript works fine. > > https://openwrt.org/docs/techref/initscripts#other_functions > > Arınç I think boot() would look better, but it would be good to keep this consistent with the bcm47xx code. Using boot() or start() does not make a big difference, boot() calls start() anyway. What about to also change the bcm47xx code to boot()? The rest looks ok to me. Hauke
> On 3 May 2022, at 23:12, Hauke Mehrtens <hauke@hauke-m.de> wrote: > > On 5/3/22 09:44, Arınç ÜNAL wrote: >>> On 03/05/2022 10:20, Rafał Miłecki wrote: >>> On 31.03.2022 21:19, Arınç ÜNAL wrote: >>>> 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. >>>> >>>> Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> >>>> --- >>>> package/utils/nvram/Makefile | 8 +++- >>>> .../files/{nvram.init => nvram-bcm47xx.init} | 2 +- >>>> package/utils/nvram/files/nvram-bcm53xx.init | 40 +++++++++++++++++++ >>>> .../base-files/etc/init.d/clear_partialboot | 13 ------ >>>> 4 files changed, 47 insertions(+), 16 deletions(-) >>>> rename package/utils/nvram/files/{nvram.init => nvram-bcm47xx.init} (97%) >>>> create mode 100755 package/utils/nvram/files/nvram-bcm53xx.init >>>> delete mode 100755 target/linux/bcm53xx/base-files/etc/init.d/clear_partialboot >>>> >>>> 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 >>>> similarity index 97% >>>> rename from package/utils/nvram/files/nvram.init >>>> rename to package/utils/nvram/files/nvram-bcm47xx.init >>>> index 467ab28195..c95933246c 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:-:} >>>> diff --git a/package/utils/nvram/files/nvram-bcm53xx.init b/package/utils/nvram/files/nvram-bcm53xx.init >>>> new file mode 100755 >>>> index 0000000000..d50917c776 >>>> --- /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 >>>> +} >>>> + >>>> +start() { >>>> + . /lib/functions.sh >>>> + >>>> + clear_partialboots >>>> + set_wireless_led_behaviour >>>> + >>>> + [ "$COMMIT" = "1" ] && nvram commit >>>> +} >>> >>> Do we want / need to switch from boot() to start()? >>> >>> I don't have opinion, just making sure it's intentional. >> Wiki says boot() is executed before start() which is usually used to turn on hardware. bcm47xx nvram initscript uses start() so it doesn't seem to matter. I tested the patch on my Asus RT-AC88U to make sure the initscript works fine. >> https://openwrt.org/docs/techref/initscripts#other_functions >> Arınç > > I think boot() would look better, but it would be good to keep this consistent with the bcm47xx code. Using boot() or start() does not make a big difference, boot() calls start() anyway. > > What about to also change the bcm47xx code to boot()? Sure, why not. I’ll send v2. Arınç
Hi, > I think boot() would look better, but it would be good to keep this consistent > with the bcm47xx code. Using boot() or start() does not make a big difference, > boot() calls start() anyway. an "/etc/init.d/whatever restart" will not execute boot(), which would be a reason to prefer it over start() for code that is not meant to be (re)executed by the user. ~ Jo
On 04/05/2022 00:55, Jo-Philipp Wich wrote: > Hi, > >> I think boot() would look better, but it would be good to keep this consistent >> with the bcm47xx code. Using boot() or start() does not make a big difference, >> boot() calls start() anyway. > > an "/etc/init.d/whatever restart" will not execute boot(), which would be a > reason to prefer it over start() for code that is not meant to be (re)executed > by the user. Makes sense. Will send v2, thank you! Arınç
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 similarity index 97% rename from package/utils/nvram/files/nvram.init rename to package/utils/nvram/files/nvram-bcm47xx.init index 467ab28195..c95933246c 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:-:} diff --git a/package/utils/nvram/files/nvram-bcm53xx.init b/package/utils/nvram/files/nvram-bcm53xx.init new file mode 100755 index 0000000000..d50917c776 --- /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 +} + +start() { + . /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 -}
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. Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> --- package/utils/nvram/Makefile | 8 +++- .../files/{nvram.init => nvram-bcm47xx.init} | 2 +- package/utils/nvram/files/nvram-bcm53xx.init | 40 +++++++++++++++++++ .../base-files/etc/init.d/clear_partialboot | 13 ------ 4 files changed, 47 insertions(+), 16 deletions(-) rename package/utils/nvram/files/{nvram.init => nvram-bcm47xx.init} (97%) create mode 100755 package/utils/nvram/files/nvram-bcm53xx.init delete mode 100755 target/linux/bcm53xx/base-files/etc/init.d/clear_partialboot