> On 3 May 2022, at 23:12, Hauke Mehrtens <ha...@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.u...@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ç

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to