Skip to contentSkip to conversation

Add rpi3 b+ support

PATCH New Martin Bark 2 participants 9 messages Mar 24, 2018 – Apr 6, 2018 Broadcom BCM2711/BCM2835 Arm architecture

lore
Share & tools
lore
#0 lore raw

v4 cover Add rpi3 b+ support

All,

This is a patch set to add rpi3 b+ support. It includes:

- bump all the rpi configs to the latest 4.14.29 kernel
- update the rpi-firmware to latest version
- add the rpi3 b+ dtb files.
- add the new wifi and bt firmware for the rpi3 b+

I can confirm the basics of wired & wireless networks and serial all work on the rpi3 and rpi3 b+. The bluetooth device comes up on the rpi3 b+ but i have not tried anything more that scanning.

There is no definitive place to download the all the necessary wifi and bt firmware files. The closest reliable source i have found is the LibreELEC github repo where they have copied the wifi and bt firmware from raspbian into one place. I have updated to using this repo.

I have made the rpi-wifi-firmware use brcmfmac43430-sdio.bin and brcmfmac43455-sdio.bin from the LibreELEC github repo because linux-firmware has outdated firmware. As a result the rpi-wifi-firmware package now conflicts with BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX.

Changes v3 -> v4:
- add license files to rpi-bt-firmware and rpi-wifi-firmware
- dont use linux-firmware bcm43XXX because is old
- Updated to use 4.14.29 kernel
- bump rpi-firmware version

Changes v2 -> v3:
- update rpi-bt-firmware and rpi-wifi-firmware packages

Changes v1 -> v2:
- Updated to use 4.14.26 kernel

Thanks

Martin

Martin Bark (7):
package/rpi-firmware: bump version configs/raspberrypi*: bump kernel version board/raspberrypi: add support for rpi3 b+ package/rpi-firmware: improve installation of dtb files package/rpi-bt-firmware: change to LibreELEC github repo package/rpi-wifi-firmware: change to LibreELEC github repo
DEVELOPERS: add myself for rpi packages

 DEVELOPERS                                       |  5 +++++
 board/raspberrypi/genimage-raspberrypi3.cfg      |  1 +
 board/raspberrypi/readme.txt                     |  3 ++-
 configs/raspberrypi0_defconfig                   |  6 +++---
 configs/raspberrypi2_defconfig                   |  6 +++---
 configs/raspberrypi3_64_defconfig                |  6 +++---
 configs/raspberrypi3_defconfig                   |  8 ++++----
 configs/raspberrypi3_qt5we_defconfig             |  8 ++++----
 configs/raspberrypi_defconfig                    |  6 +++---
 package/rpi-bt-firmware/Config.in                |  5 +++--
 package/rpi-bt-firmware/rpi-bt-firmware.hash     |  3 ++-
 package/rpi-bt-firmware/rpi-bt-firmware.mk       | 12 +++++++-----
 package/rpi-firmware/rpi-firmware.hash           |  2 +-
 package/rpi-firmware/rpi-firmware.mk             |  9 ++++-----
 package/rpi-wifi-firmware/Config.in              | 11 +++++++----
 package/rpi-wifi-firmware/rpi-wifi-firmware.hash |  3 ++-
 package/rpi-wifi-firmware/rpi-wifi-firmware.mk   | 16 +++++-----------
 17 files changed, 59 insertions(+), 51 deletions(-)

--
2.7.4

#1 lore raw

PATCH v4 1/7 package/rpi-firmware: bump version

----
Changes v3 -> v4:
- update to latest

Changes v2 -> v3:
- none

Changes v1 -> v2:
- none

---
 package/rpi-firmware/rpi-firmware.hash | 2 +-
 package/rpi-firmware/rpi-firmware.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/rpi-firmware/rpi-firmware.hash +1 -1
index 833a7fb..4854dea 100644
@@ -1,2 +1,2 @@
 # Locally computed
-sha256 0451e1a843bf02df81126a1625d9a15dfdf19dcb2f9e95b0613a63e59fd31ca8 rpi-firmware-2067241bc7cdf238fdeab7f5a3c22faa57dd5617.tar.gz
+sha256 ea451834e20136d249661e0ed7d1fdfa309249d233a387f44dd6c3b746a454c6 rpi-firmware-36f991382326907419f64917624427e59fd8e4a0.tar.gz
package/rpi-firmware/rpi-firmware.mk +1 -1
index 22eaaa2..1f4a168 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-RPI_FIRMWARE_VERSION = 2067241bc7cdf238fdeab7f5a3c22faa57dd5617
+RPI_FIRMWARE_VERSION = 36f991382326907419f64917624427e59fd8e4a0
 RPI_FIRMWARE_SITE = $(call github,raspberrypi,firmware,$(RPI_FIRMWARE_VERSION))
 RPI_FIRMWARE_LICENSE = BSD-3-Clause
 RPI_FIRMWARE_LICENSE_FILES = boot/LICENCE.broadcom
Signature · 1 line
2.7.4
#2 lore raw

PATCH v4 2/7 configs/raspberrypi*: bump kernel version

In reply to Martin Bark

Now based on 4.14.29 (from 4.9.79)

----
Changes v3 -> v4:
- Updated to use 4.14.29 kernel

Changes v2 -> v3:
- none

Changes v1 -> v2:
- Updated to use 4.14.26 kernel

---
 configs/raspberrypi0_defconfig       | 6 +++---
 configs/raspberrypi2_defconfig       | 6 +++---
 configs/raspberrypi3_64_defconfig    | 6 +++---
 configs/raspberrypi3_defconfig       | 6 +++---
 configs/raspberrypi3_qt5we_defconfig | 6 +++---
 configs/raspberrypi_defconfig        | 6 +++---
 6 files changed, 18 insertions(+), 18 deletions(-)
configs/raspberrypi0_defconfig +3 -3
index 0fb8a99..edf9e86 100644
@@ -2,15 +2,15 @@ BR2_arm=y
 BR2_arm1176jzf_s=y
 BR2_ARM_EABIHF=y
 
-# Linux headers same as kernel, a 4.9 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y
+# Linux headers same as kernel, a 4.14 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
 
 BR2_TOOLCHAIN_BUILDROOT_CXX=y
 
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="33ee56d5927ceff630fbc87e3f5caa409b6ae114"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="c117a8bccf37bfba323065b566cf999ed4629a4a"
 BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi"
 
 # Build the DTBs for A/B from the kernel sources: the zero is the same
configs/raspberrypi2_defconfig +3 -3
index 962a58c..6bda059 100644
@@ -7,13 +7,13 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y
 
 BR2_SYSTEM_DHCP="eth0"
 
-# Linux headers same as kernel, a 4.9 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y
+# Linux headers same as kernel, a 4.14 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
 
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="33ee56d5927ceff630fbc87e3f5caa409b6ae114"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="c117a8bccf37bfba323065b566cf999ed4629a4a"
 BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
 
 # Build the DTB from the kernel sources
configs/raspberrypi3_64_defconfig +3 -3
index 6a35ac3..30c6be8 100644
@@ -6,13 +6,13 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y
 
 BR2_SYSTEM_DHCP="eth0"
 
-# Linux headers same as kernel, a 4.9 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y
+# Linux headers same as kernel, a 4.14 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
 
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="33ee56d5927ceff630fbc87e3f5caa409b6ae114"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="c117a8bccf37bfba323065b566cf999ed4629a4a"
 BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi3"
 
 # Build the DTB from the kernel sources
configs/raspberrypi3_defconfig +3 -3
index 9304f0c..896fe59 100644
@@ -6,13 +6,13 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y
 
 BR2_SYSTEM_DHCP="eth0"
 
-# Linux headers same as kernel, a 4.9 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y
+# Linux headers same as kernel, a 4.14 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
 
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="33ee56d5927ceff630fbc87e3f5caa409b6ae114"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="c117a8bccf37bfba323065b566cf999ed4629a4a"
 BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
 
 # Build the DTB from the kernel sources
configs/raspberrypi3_qt5we_defconfig +3 -3
index d4ada47..26acff6 100644
@@ -7,13 +7,13 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y
 
 BR2_SYSTEM_DHCP="eth0"
 
-# Linux headers same as kernel, a 4.9 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y
+# Linux headers same as kernel, a 4.14 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
 
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="33ee56d5927ceff630fbc87e3f5caa409b6ae114"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="c117a8bccf37bfba323065b566cf999ed4629a4a"
 BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
 
 # Build the DTB from the kernel sources
configs/raspberrypi_defconfig +3 -3
index daca836..13f12ff 100644
@@ -4,15 +4,15 @@ BR2_ARM_EABIHF=y
 
 BR2_SYSTEM_DHCP="eth0"
 
-# Linux headers same as kernel, a 4.9 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y
+# Linux headers same as kernel, a 4.14 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
 
 BR2_TOOLCHAIN_BUILDROOT_CXX=y
 
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="33ee56d5927ceff630fbc87e3f5caa409b6ae114"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="c117a8bccf37bfba323065b566cf999ed4629a4a"
 BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi"
 
 # Build the DTBs for A/B, A+/B+ and compute module from the kernel sources
Signature · 1 line
2.7.4
#3 lore raw

PATCH v4 3/7 board/raspberrypi: add support for rpi3 b+

In reply to Martin Bark

----
Changes v3 -> v4:
- none

Changes v2 -> v3:
- none

Changes v1 -> v2:
- none

---
 board/raspberrypi/genimage-raspberrypi3.cfg | 1 +
 board/raspberrypi/readme.txt                | 3 ++-
 configs/raspberrypi3_defconfig              | 2 +-
 configs/raspberrypi3_qt5we_defconfig        | 2 +-
 4 files changed, 5 insertions(+), 3 deletions(-)
board/raspberrypi/genimage-raspberrypi3.cfg +1 -0
index 98ff709..0a54724 100644
@@ -2,6 +2,7 @@ image boot.vfat {
   vfat {
     files = {
       "bcm2710-rpi-3-b.dtb",
+      "bcm2710-rpi-3-b-plus.dtb",
       "bcm2710-rpi-cm3.dtb",
       "rpi-firmware/bootcode.bin",
       "rpi-firmware/cmdline.txt",
board/raspberrypi/readme.txt +2 -1
index 9482693..9f91581 100644
@@ -30,7 +30,7 @@ For model 2 B:
 
   $ make raspberrypi2_defconfig
 
-For model 3 B:
+For model 3 B and B+:
 
   $ make raspberrypi3_defconfig
 
@@ -56,6 +56,7 @@ After building, you should obtain this tree:
     +-- bcm2708-rpi-b-plus.dtb      [1]
     +-- bcm2709-rpi-2-b.dtb         [1]
     +-- bcm2710-rpi-3-b.dtb         [1]
+    +-- bcm2710-rpi-3-b-plus.dtb    [1]
     +-- boot.vfat
     +-- rootfs.ext4
     +-- rpi-firmware/
configs/raspberrypi3_defconfig +1 -1
index 896fe59..ee8f1eb 100644
@@ -17,7 +17,7 @@ BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
 
 # Build the DTB from the kernel sources
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2710-rpi-3-b bcm2710-rpi-cm3"
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2710-rpi-3-b bcm2710-rpi-3-b-plus bcm2710-rpi-cm3"
 
 BR2_PACKAGE_RPI_FIRMWARE=y
 
configs/raspberrypi3_qt5we_defconfig +1 -1
index 26acff6..6a851b5 100644
@@ -18,7 +18,7 @@ BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
 
 # Build the DTB from the kernel sources
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2710-rpi-3-b bcm2710-rpi-cm3"
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2710-rpi-3-b bcm2710-rpi-3-b-plus bcm2710-rpi-cm3"
 
 # Build Qt5 WebEngine
 BR2_PACKAGE_LIBERATION=y
Signature · 1 line
2.7.4
#4 lore raw

PATCH v4 4/7 package/rpi-firmware: improve installation of dtb files

In reply to Martin Bark

Don't list specific dtb files, instead install all dtb files in the same way as dtbo files are currently done.

----
Changes v3 -> v4:
- none

Changes v2 -> v3:
- none

Changes v1 -> v2:
- none

---
 package/rpi-firmware/rpi-firmware.mk | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)
package/rpi-firmware/rpi-firmware.mk +3 -4
index 1f4a168..2de4b14 100644
@@ -12,10 +12,9 @@ RPI_FIRMWARE_INSTALL_IMAGES = YES
 
 ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS),y)
 define RPI_FIRMWARE_INSTALL_DTB
-	$(INSTALL) -D -m 0644 $(@D)/boot/bcm2708-rpi-b.dtb $(BINARIES_DIR)/rpi-firmware/bcm2708-rpi-b.dtb
-	$(INSTALL) -D -m 0644 $(@D)/boot/bcm2708-rpi-b-plus.dtb $(BINARIES_DIR)/rpi-firmware/bcm2708-rpi-b-plus.dtb
-	$(INSTALL) -D -m 0644 $(@D)/boot/bcm2709-rpi-2-b.dtb $(BINARIES_DIR)/rpi-firmware/bcm2709-rpi-2-b.dtb
-	$(INSTALL) -D -m 0644 $(@D)/boot/bcm2710-rpi-3-b.dtb $(BINARIES_DIR)/rpi-firmware/bcm2710-rpi-3-b.dtb
+	for dtb in  $(@D)/boot/*.dtb; do \
+		$(INSTALL) -D -m 0644 $${dtb} $(BINARIES_DIR)/rpi-firmware/$${dtb##*/} || exit 1; \
+	done
 endef
 endif
 
Signature · 1 line
2.7.4
#5 lore raw

PATCH v4 5/7 package/rpi-bt-firmware: change to LibreELEC github repo

In reply to Martin Bark

Include BCM4345C0.hcd for the rpi3 b+

---
Changed v3 -> v4
- add license file

Changed v2 -> v3
- new in v3

---
 package/rpi-bt-firmware/Config.in            |  5 +++--
 package/rpi-bt-firmware/rpi-bt-firmware.hash |  3 ++-
 package/rpi-bt-firmware/rpi-bt-firmware.mk   | 12 +++++++-----
 3 files changed, 12 insertions(+), 8 deletions(-)
package/rpi-bt-firmware/Config.in +3 -2
index dfc1cee..45643d6 100644
@@ -3,6 +3,7 @@ config BR2_PACKAGE_RPI_BT_FIRMWARE
 	depends on BR2_arm || BR2_aarch64
 	help
 	  Raspberry Pi 3 and Zero W Broadcom BCM43438 Bluetooth module
-	  firmware.
+	  firmware. Raspberry Pi 3 Model B+ Broadcom BCM4345C0
+	  Bluetooth module firmware.
 
-	  https://aur.archlinux.org/packages/pi-bluetooth
+	  https://github.com/LibreELEC/brcmfmac_sdio-firmware-rpi
package/rpi-bt-firmware/rpi-bt-firmware.hash +2 -1
index f1d06e8..553a7e4 100644
@@ -1,2 +1,3 @@
 # Locally computed
-sha256 5d9c9364277414ffd67b4a266cdf88e92f28eb937e5a413750e87b7a94161bef  rpi-bt-firmware-a439f892bf549ddfefa9ba7ad1999cc515f233bf.tar.gz
+sha256 beade89c5c072158b6cf18cf741d2695980fd6a4533dab3897bebf90c0631a30  rpi-bt-firmware-18d7c931aff0a8a78360b9b9eaeb15d1224fb907.tar.gz
+sha256 b16056fc91b82a0e3e8de8f86c2dac98201aa9dc3cbd33e8d38f1b087fcec30d  LICENCE.broadcom_bcm43xx
package/rpi-bt-firmware/rpi-bt-firmware.mk +7 -5
index 255da19..689b80e 100644
@@ -4,18 +4,20 @@
 #
 ################################################################################
 
-RPI_BT_FIRMWARE_VERSION = a439f892bf549ddfefa9ba7ad1999cc515f233bf
-RPI_BT_FIRMWARE_SITE = https://aur.archlinux.org/pi-bluetooth.git
-RPI_BT_FIRMWARE_SITE_METHOD = git
+RPI_BT_FIRMWARE_VERSION = 18d7c931aff0a8a78360b9b9eaeb15d1224fb907
+RPI_BT_FIRMWARE_SITE = $(call github,LibreELEC,brcmfmac_sdio-firmware-rpi,$(RPI_BT_FIRMWARE_VERSION))
 RPI_BT_FIRMWARE_LICENSE = PROPRIETARY
 RPI_BT_FIRMWARE_LICENSE_FILES = LICENCE.broadcom_bcm43xx
 
+RPI_BT_FIRMWARE_FILES = brcm/BCM43430A1.hcd BCM4345C0.hcd
+
 # The BlueZ hciattach utility looks for firmware in /etc/firmware. Add a
 # compatibility symlink.
 define RPI_BT_FIRMWARE_INSTALL_TARGET_CMDS
 	ln -sf ../lib/firmware $(TARGET_DIR)/etc/firmware
-	$(INSTALL) -D -m 0644 $(@D)/BCM43430A1.hcd \
-		$(TARGET_DIR)/lib/firmware/BCM43430A1.hcd
+	for file in $(RPI_BT_FIRMWARE_FILES); do \
+		$(INSTALL) -D -m 0644 $(@D)/firmware/$${file} $(TARGET_DIR)/lib/firmware/$${file##*/}; \
+	done
 endef
 
 $(eval $(generic-package))
Signature · 1 line
2.7.4
#6 lore raw

PATCH v4 6/7 package/rpi-wifi-firmware: change to LibreELEC github repo

In reply to Martin Bark

Include brcmfmac43455 firmware for the rpi3 b+

---
Changes v3 -> v4
- add license file
- dont use linux-firmware bcm43XXX because it's out of date

Changes v2 -> v3
- New in v3 (suggested by Jens Maus)

---
 package/rpi-wifi-firmware/Config.in              | 11 +++++++----
 package/rpi-wifi-firmware/rpi-wifi-firmware.hash |  3 ++-
 package/rpi-wifi-firmware/rpi-wifi-firmware.mk   | 16 +++++-----------
 3 files changed, 14 insertions(+), 16 deletions(-)
package/rpi-wifi-firmware/Config.in +7 -4
index 2c87c75..7e81b28 100644
@@ -1,10 +1,13 @@
 config BR2_PACKAGE_RPI_WIFI_FIRMWARE
 	bool "rpi-wifi-firmware"
 	depends on BR2_arm || BR2_aarch64
-	select BR2_PACKAGE_LINUX_FIRMWARE
-	select BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX # runtime
+	depends on !BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX
 	help
 	  Raspberry Pi 3 and Zero W Broadcom BCM43430 wifi module
-	  NVRAM data.
+	  NVRAM data. Raspberry Pi 3 Model B+ Broadcom BCM43455
+	  wifi module NVRAM data.
 
-	  https://github.com/RPi-Distro/firmware-nonfree/
+	  https://github.com/LibreELEC/brcmfmac_sdio-firmware-rpi
+
+comment "rpi-wifi-firmware conflicts with linux-firmware Broadcom BRCM bcm43xx"
+	depends on BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX
package/rpi-wifi-firmware/rpi-wifi-firmware.hash +2 -1
index c205065..bc0d7c8 100644
@@ -1,2 +1,3 @@
 # Locally calculated
-sha256  872fde4f9942d9aba805880d6eaddfe050305626fd58ad955bfe77c04f6b75a5  brcmfmac43430-sdio.txt
+sha256 beade89c5c072158b6cf18cf741d2695980fd6a4533dab3897bebf90c0631a30  rpi-wifi-firmware-18d7c931aff0a8a78360b9b9eaeb15d1224fb907.tar.gz
+sha256 b16056fc91b82a0e3e8de8f86c2dac98201aa9dc3cbd33e8d38f1b087fcec30d  LICENCE.broadcom_bcm43xx
package/rpi-wifi-firmware/rpi-wifi-firmware.mk +5 -11
index 6c855a8..32dd3e5 100644
@@ -4,20 +4,14 @@
 #
 ################################################################################
 
-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
+RPI_WIFI_FIRMWARE_VERSION = 18d7c931aff0a8a78360b9b9eaeb15d1224fb907
+RPI_WIFI_FIRMWARE_SITE = $(call github,LibreELEC,brcmfmac_sdio-firmware-rpi,$(RPI_WIFI_FIRMWARE_VERSION))
 RPI_WIFI_FIRMWARE_LICENSE = PROPRIETARY
-
-define RPI_WIFI_FIRMWARE_EXTRACT_CMDS
-	cp $(DL_DIR)/$($(PKG)_SOURCE) $(@D)/
-endef
+RPI_WIFI_FIRMWARE_LICENSE_FILES = LICENCE.broadcom_bcm43xx
 
 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)
+	$(INSTALL) -d $(TARGET_DIR)/lib/firmware/brcm
+	$(INSTALL) -m 0644 $(@D)/firmware/brcm/brcmfmac* $(TARGET_DIR)/lib/firmware/brcm
 endef
 
 $(eval $(generic-package))
Signature · 1 line
2.7.4
#7 lore raw

PATCH v4 7/7 DEVELOPERS: add myself for rpi packages

In reply to Martin Bark

---
Changes v3 -> v4
- none

Changes v2 -> v3
- new in v3

---
 DEVELOPERS | 5 +++++
 1 file changed, 5 insertions(+)
DEVELOPERS +5 -0
index 031af3c..0c4cabe 100644
@@ -1136,9 +1136,14 @@ F:	package/harfbuzz/
 F:	package/libsecret/
 
 N:	Martin Bark <[email protected]>
+F:	board/raspberrypi/
+F:	configs/raspberrypi3_defconfig
 F:	package/ca-certificates/
 F:	package/connman/
 F:	package/nodejs/
+F:	package/rpi-bt-firmware/
+F:	package/rpi-firmware/
+F:	package/rpi-wifi-firmware/
 F:	package/tzdata/
 F:	package/zic/
 
Signature · 1 line
2.7.4
#8 lore raw

v4 cover Add rpi3 b+ support

In reply to Martin Bark

Hello Martin,

Quoted 8 lines · Martin Bark

Martin Bark (7):
package/rpi-firmware: bump version configs/raspberrypi*: bump kernel version board/raspberrypi: add support for rpi3 b+ package/rpi-firmware: improve installation of dtb files package/rpi-bt-firmware: change to LibreELEC github repo package/rpi-wifi-firmware: change to LibreELEC github repo
DEVELOPERS: add myself for rpi packages

I've applied the entire series. Two comments:

- Use exactly "---" below your SoB to add the changelog or additional comments. If you don't do this, it doesn't get recognized as a separator, and the changelog becomes part of the commit log.

- Use "foreach" make loops instead of "for" shell loops. It is more Buildroot-ish, and the "foreach" make loops do the error checking automatically at each iteration of the loop. Due to the usage of a "for" shell loop, error checking was missing in the rpi-bt-firmware change you made. There is a remaining "for" shell loop in the rpi-firmware package, it would be good to get rid of it as well.

Thanks a lot for this contribution!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com