Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] rpi-wifi-firmware: new package
Date: Sat, 6 May 2017 10:27:58 +0200	[thread overview]
Message-ID: <20170506082758.GD2934@scaer> (raw)
In-Reply-To: <20170505183741.30214-1-peter@korsgaard.com>

Peter, All,

On 2017-05-05 20:37 +0200, Peter Korsgaard spake thusly:
> Add firmware (NVRAM data) for the Raspberry Pi 3 and Zero W wifi module.
> 
> Notice that linux-firmware provides the main firmware
> (brcmfmac43430-sdio.bin), but the module also needs board specific
> configuration (NVRAM) data.
> 
> For the rpi, this data is available in the RPI firmware-nonfree git repo.
> As this repo contains a lot of unrelated data (~70MB), simply download the
> single NVRAM file instead of cloning the entire repo.
> 
> A similar approach is used by openwrt and opensuse:
> 
> https://dev.openwrt.org/browser/trunk/package/firmware/brcmfmac43430-firmware/Makefile?rev=49139
> https://build.opensuse.org/package/view_file/hardware/bcm43xx-firmware/bcm43xx-firmware.spec?rev=b1628448b36c85abc9215eab4785ef29
> 
> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
[--SNIP--]
> diff --git a/package/rpi-wifi-firmware/Config.in b/package/rpi-wifi-firmware/Config.in
> new file mode 100644
> index 000000000..2c87c7584
> --- /dev/null
> +++ b/package/rpi-wifi-firmware/Config.in
> @@ -0,0 +1,10 @@
> +config BR2_PACKAGE_RPI_WIFI_FIRMWARE
> +	bool "rpi-wifi-firmware"
> +	depends on BR2_arm || BR2_aarch64

I know it read "rpi-wifi-firmware" and thus it is arm or aarch64. But
can we expect the same chip to be used on a non-arm board?

I would just drop the architecture dependency here, because there is
nothing specific to the SoC here; the WiFi chip is a secondary chip, so
could well be present on other boards that are non-arm.

> +	select BR2_PACKAGE_LINUX_FIRMWARE
> +	select BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX # runtime
> +	help
> +	  Raspberry Pi 3 and Zero W Broadcom BCM43430 wifi module
> +	  NVRAM data.
> +
> +	  https://github.com/RPi-Distro/firmware-nonfree/
> diff --git a/package/rpi-wifi-firmware/rpi-wifi-firmware.hash b/package/rpi-wifi-firmware/rpi-wifi-firmware.hash
> new file mode 100644
> index 000000000..c20506536
> --- /dev/null
> +++ b/package/rpi-wifi-firmware/rpi-wifi-firmware.hash
> @@ -0,0 +1,2 @@
> +# Locally calculated
> +sha256  872fde4f9942d9aba805880d6eaddfe050305626fd58ad955bfe77c04f6b75a5  brcmfmac43430-sdio.txt
> diff --git a/package/rpi-wifi-firmware/rpi-wifi-firmware.mk b/package/rpi-wifi-firmware/rpi-wifi-firmware.mk
> new file mode 100644
> index 000000000..e90864fae
> --- /dev/null
> +++ b/package/rpi-wifi-firmware/rpi-wifi-firmware.mk
> @@ -0,0 +1,22 @@
> +################################################################################
> +#
> +# rpi-wifi-firmware
> +#
> +################################################################################
> +
> +RPI_WIFI_FIRMWARE_VERSION = 54bab3d6a6d43239c71d26464e6e10e5067ffea7
> +# brcmfmac43430-sdio.bin comes from linux-firmware
> +RPI_WIFI_FIRMWARE_SOURCE = brcmfmac43430-sdio.txt
> +# git repo contains a lot of unrelated files
> +RPI_WIFI_FIRMWARE_SITE = https://raw.githubusercontent.com/RPi-Distro/firmware-nonfree/$(RPI_WIFI_FIRMWARE_VERSION)/brcm80211/brcm

License?

Regards,
Yann E. MORIN.

> +define RPI_WIFI_FIRMWARE_EXTRACT_CMDS
> +	cp $(DL_DIR)/$($(PKG)_SOURCE) $(@D)/
> +endef
> +
> +define RPI_WIFI_FIRMWARE_INSTALL_TARGET_CMDS
> +	$(INSTALL) -D -m 0644 $(@D)/$(RPI_WIFI_FIRMWARE_SOURCE) \
> +		$(TARGET_DIR)/lib/firmware/brcm/$(RPI_WIFI_FIRMWARE_SOURCE)
> +endef
> +
> +$(eval $(generic-package))
> -- 
> 2.11.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

  reply	other threads:[~2017-05-06  8:27 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-05 18:37 [Buildroot] [PATCH] rpi-wifi-firmware: new package Peter Korsgaard
2017-05-06  8:27 ` Yann E. MORIN [this message]
2017-05-06  8:50   ` Peter Korsgaard
2017-05-06  9:10     ` Yann E. MORIN
2017-05-06  9:28       ` Peter Korsgaard
2017-05-06  9:34         ` Yann E. MORIN
2017-05-06  9:35 ` Peter Korsgaard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170506082758.GD2934@scaer \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox