[Buildroot] [PATCH v2 0/3] murata-wireless firmware packages
Yann E. MORIN
yann.morin.1998 at free.fr
Thu May 9 18:10:00 UTC 2019
Marcin, All,
On 2019-05-09 09:52 +0200, Marcin Niestrój spake thusly:
> Yann E. MORIN <yann.morin.1998 at free.fr> writes:
> > On 2019-05-07 10:32 +0200, Marcin Niestroj spake thusly:
> >> This set adds 3 firmware packages for muRata wireless modules (WiFi + BLE).
> >> I've put all three packages into single murata-wireless directory and Kconfig
> >> submenu, as they relate to the same hardware and there are plenty of options
> >> to choose from. Not sure whether this is the correct approach, so looking
> >> forward to get feedback on this.
> >
> > I wonder why we would actually need three packages.
> >
> > As far as I can see from a cursory look, they are all very tightly
> > coupled; they even have the same choice about the actual variant to use.
> >
> > So, I would like we look at making that a single package, which
> > downloads multiple tarballs, something like:
> >
> > MURATA_WIRELESS_CYW_FW_VERSION = 8d87950bfad28c65926695b7357bd8995b60016a
> > MURATA_WIRELESS_CYW_FW_VERSION_NVRAM = d27f1bf105fa1e5b828e355793b88d4b66188411
> > MURATA_WIRELESS_CYW_FW_VERSION_PATCH = 748462f0b02ec4aeb500bedd60780ac51c37be31
> >
> > MURATA_WIRELESS_CYW_FW_SITE = $(call github,murata-wireless,cyw-fmac-fw,$(MURATA_WIRELESS_CYW_FW_VERSION)
> > MURATA_WIRELESS_CYW_FW_EXTRA_DOWNLOADS = \
> > $(call github,murata-wireless,cyw-fmac-nvram,$(MURATA_WIRELESS_CYW_FW_VERSION_NVRAM)/cyw-bt-nvram-$(MURATA_WIRELESS_CYW_FW_VERSION_NVRAM).tar.gz \
> > $(call github,murata-wireless,cyw-fmac-patch,$(MURATA_WIRELESS_CYW_FW_VERSION_PATCH)/cyw-bt-patch-$(MURATA_WIRELESS_CYW_FW_VERSION_PATCH).tar.gz
> >
> > define MURATA_WIRELESS_CYW_FW_EXTRACT_NVRAM_PATCH
> > $(foreach tar, $(notdir $(MURATA_WIRELESS_CYW_FW_EXTRA_DOWNLOADS)), \
> > $(call suitable-extractor,$(tar)) $(MURATA_WIRELESS_CYW_FW_DL_DIR)/$(tar) | \
> > $(TAR) --strip-components=1 -C $(@D) $(TAR_OPTIONS) -$(sep) \
> > )
> > endef
> > MURATA_WIRELESS_CYW_FW_POST_EXTRACT_HOOKS += MURATA_WIRELESS_CYW_FW_EXTRACT_NVRAM_PATCH
> >
> > And a similar hook for the installation step (which I leave up to you as
> > an exercise ;-) ).
>
> Thanks for review and tips on how to use single package here. The only
> downside that I see is that all three packages will be downloaded, even
> if (in some cases) one or two are required only. However overall code
> will be much simpler, so it is a good idea anyway.
Well, you can always do the extra dowenload dance conditionally:
ifeq ($(BR2_PACKAGE_MURATA_WIRELESS_CYW_FW_NEEDS_NVRAM),y)
MURATA_WIRELESS_CYW_FW_EXTRA_DOWNLOADS += \
(call github,murata-wireless,cyw-fmac-nvram,$(MURATA_WIRELESS_CYW_FW_VERSION_NVRAM)/cyw-bt-nvram-$(MURATA_WIRELESS_CYW_FW_VERSION_NVRAM).tar.gz \
endif
ifeq ($(BR2_PACKAGE_MURATA_WIRELESS_CYW_FW_NEEDS_PATCH),y)
MURATA_WIRELESS_CYW_FW_EXTRA_DOWNLOADS += \
$(call github,murata-wireless,cyw-fmac-patch,$(MURATA_WIRELESS_CYW_FW_VERSION_PATCH)/cyw-bt-patch-$(MURATA_WIRELESS_CYW_FW_VERSION_PATCH).tar.gz
endif
And in Config.in:
config BR2_PACKAGE_MURATA_WIRELESS_CYW_FW_NEEDS_NVRAM
bool
config BR2_PACKAGE_MURATA_WIRELESS_CYW_FW_NEEDS_PATCH
bool
choice
bool "Variant to use"
config BR2_PACKAGE_MURATA_WIRELESS_CYW_FW_FOO
bool "foo"
select BR2_PACKAGE_MURATA_WIRELESS_CYW_FW_NEEDS_PATCH
config BR2_PACKAGE_MURATA_WIRELESS_CYW_FW_BAR
bool "bar"
select BR2_PACKAGE_MURATA_WIRELESS_CYW_FW_NEEDS_NVRAM
endchoice
You get the idea...
Regards,
Yann E. MORIN.
> > Regards,
> > Yann E. MORIN.
> >
> >> Marcin Niestroj (3):
> >> package/murata-wireless-cyw-fmac-fw: new package
> >> package/murata-wireless-cyw-fmac-nvram: new package
> >> package/murata-wireless-cyw-bt-patch: new package
> >>
> >> DEVELOPERS | 1 +
> >> package/Config.in | 1 +
> >> package/murata-wireless/Config.in | 7 ++
> >> .../murata-wireless-cyw-bt-patch/Config.in | 47 ++++++++++
> >> .../murata-wireless-cyw-bt-patch.hash | 3 +
> >> .../murata-wireless-cyw-bt-patch.mk | 50 ++++++++++
> >> .../murata-wireless-cyw-fmac-fw/Config.in | 91 +++++++++++++++++++
> >> .../murata-wireless-cyw-fmac-fw.hash | 3 +
> >> .../murata-wireless-cyw-fmac-fw.mk | 80 ++++++++++++++++
> >> .../murata-wireless-cyw-fmac-nvram/Config.in | 91 +++++++++++++++++++
> >> .../murata-wireless-cyw-fmac-nvram.hash | 3 +
> >> .../murata-wireless-cyw-fmac-nvram.mk | 75 +++++++++++++++
> >> package/murata-wireless/murata-wireless.mk | 9 ++
> >> 13 files changed, 461 insertions(+)
> >> create mode 100644 package/murata-wireless/Config.in
> >> create mode 100644 package/murata-wireless/murata-wireless-cyw-bt-patch/Config.in
> >> create mode 100644 package/murata-wireless/murata-wireless-cyw-bt-patch/murata-wireless-cyw-bt-patch.hash
> >> create mode 100644 package/murata-wireless/murata-wireless-cyw-bt-patch/murata-wireless-cyw-bt-patch.mk
> >> create mode 100644 package/murata-wireless/murata-wireless-cyw-fmac-fw/Config.in
> >> create mode 100644 package/murata-wireless/murata-wireless-cyw-fmac-fw/murata-wireless-cyw-fmac-fw.hash
> >> create mode 100644 package/murata-wireless/murata-wireless-cyw-fmac-fw/murata-wireless-cyw-fmac-fw.mk
> >> create mode 100644 package/murata-wireless/murata-wireless-cyw-fmac-nvram/Config.in
> >> create mode 100644 package/murata-wireless/murata-wireless-cyw-fmac-nvram/murata-wireless-cyw-fmac-nvram.hash
> >> create mode 100644 package/murata-wireless/murata-wireless-cyw-fmac-nvram/murata-wireless-cyw-fmac-nvram.mk
> >> create mode 100644 package/murata-wireless/murata-wireless.mk
> >>
> >> --
> >> 2.21.0
> >>
> >> _______________________________________________
> >> buildroot mailing list
> >> buildroot at busybox.net
> >> http://lists.busybox.net/mailman/listinfo/buildroot
>
>
> --
> Marcin Niestrój
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
More information about the buildroot
mailing list