Skip to content

Commit 45cf917

Browse files
Bump RPi Bluetooth and Wifi firmwares (#69)
Fixes issues with Bluetooth and Wifi on some devices
1 parent 383642f commit 45cf917

File tree

8 files changed

+79
-12
lines changed

8 files changed

+79
-12
lines changed

aa_wireless_dongle/configs/raspberrypi0w_defconfig

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="$(BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH)/bo
3939
BR2_PACKAGE_RPI_FIRMWARE_CMDLINE_FILE="$(BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH)/board/raspberrypi/cmdline.txt"
4040

4141
# Wifi and Bluetooth firmware
42-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI=y
43-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_BT=y
44-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_WIFI=y
42+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM=y
43+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_BT=y
44+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_WIFI=y
4545

4646
# Required tools to create the SD image
4747
BR2_PACKAGE_HOST_DOSFSTOOLS=y

aa_wireless_dongle/configs/raspberrypi3a_defconfig

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="$(BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH)/bo
3939
BR2_PACKAGE_RPI_FIRMWARE_CMDLINE_FILE="$(BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH)/board/raspberrypi/cmdline.txt"
4040

4141
# Wifi and Bluetooth firmware
42-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI=y
43-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_BT=y
44-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_WIFI=y
42+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM=y
43+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_BT=y
44+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_WIFI=y
4545

4646
# Required tools to create the SD image
4747
BR2_PACKAGE_HOST_DOSFSTOOLS=y

aa_wireless_dongle/configs/raspberrypi4_defconfig

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,9 @@ BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="$(BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH)/bo
4040
BR2_PACKAGE_RPI_FIRMWARE_CMDLINE_FILE="$(BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH)/board/raspberrypi/cmdline.txt"
4141

4242
# Wifi and Bluetooth firmware
43-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI=y
44-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_BT=y
45-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_WIFI=y
43+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM=y
44+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_BT=y
45+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_WIFI=y
4646

4747
# Required tools to create the SD image
4848
BR2_PACKAGE_HOST_DOSFSTOOLS=y

aa_wireless_dongle/configs/raspberrypizero2w_defconfig

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="$(BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH)/bo
3939
BR2_PACKAGE_RPI_FIRMWARE_CMDLINE_FILE="$(BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH)/board/raspberrypi/cmdline.txt"
4040

4141
# Wifi and Bluetooth firmware
42-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI=y
43-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_BT=y
44-
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_WIFI=y
42+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM=y
43+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_BT=y
44+
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_WIFI=y
4545

4646
# Required tools to create the SD image
4747
BR2_PACKAGE_HOST_DOSFSTOOLS=y
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
menu "Packages"
22
source "$BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH/package/aawg/Config.in"
3+
source "$BR2_EXTERNAL_AA_WIRELESS_DONGLE_PATH/package/brcmfmac_sdio-firmware-rpi-custom/Config.in"
34
endmenu
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
config BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM
2+
bool "brcmfmac-sdio-firmware-rpi-custom"
3+
help
4+
Raspberry Broadcom Bluetooth and Wifi firmware.
5+
6+
https://github.com/LibreELEC/brcmfmac_sdio-firmware-rpi
7+
8+
if BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM
9+
10+
config BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_BT
11+
bool "brcmfmac-sdio-firmware-rpi-bt"
12+
help
13+
Raspberry Pi 3 and Zero W Broadcom BCM43438 Bluetooth module
14+
firmware. Raspberry Pi 3 Model B+ Broadcom BCM4345C0
15+
Bluetooth module firmware.
16+
17+
config BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_WIFI
18+
bool "brcmfmac-sdio-firmware-rpi-wifi"
19+
depends on !BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX
20+
help
21+
Raspberry Pi 3 and Zero W Broadcom BCM43430 wifi module
22+
NVRAM data. Raspberry Pi 3 Model B+ Broadcom BCM43455
23+
wifi module NVRAM data.
24+
25+
comment "brcmfmac-sdio-firmware-rpi-wifi conflicts with linux-firmware Broadcom BRCM bcm43xx"
26+
depends on BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX
27+
28+
endif
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Locally calculated
2+
sha256 2f0917b104739455dd488dd8f5af2ee4430801a7ac8fe8d9866e74bfbb185356 brcmfmac_sdio-firmware-rpi-custom-26ff205b45dc109b498a70aaf182804ad9dbfea5.tar.gz
3+
sha256 ea8b7b7b6cfc6fd30587ed977100f6a542734ce53218b5b63de16180acddd599 LICENCE
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
################################################################################
2+
#
3+
# brcmfmac_sdio-firmware-rpi
4+
#
5+
################################################################################
6+
7+
BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_VERSION = 26ff205b45dc109b498a70aaf182804ad9dbfea5
8+
BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_SITE = $(call github,LibreELEC,brcmfmac_sdio-firmware-rpi,$(BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_VERSION))
9+
BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_LICENSE = PROPRIETARY
10+
BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_LICENSE_FILES = LICENCE
11+
12+
ifeq ($(BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_BT),y)
13+
define BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_INSTALL_TARGET_BT
14+
$(INSTALL) -d $(TARGET_DIR)/lib/firmware/brcm $(TARGET_DIR)/lib/firmware/synaptics
15+
cp --remove-destination --no-dereference $(@D)/firmware/brcm/*.hcd $(TARGET_DIR)/lib/firmware/brcm
16+
cp --remove-destination --no-dereference $(@D)/firmware/synaptics/*.hcd $(TARGET_DIR)/lib/firmware/synaptics
17+
chmod 644 $(TARGET_DIR)/lib/firmware/brcm/*.hcd $(TARGET_DIR)/lib/firmware/synaptics/*.hcd
18+
endef
19+
endif
20+
21+
ifeq ($(BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_WIFI),y)
22+
define BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_INSTALL_TARGET_WIFI
23+
$(INSTALL) -d $(TARGET_DIR)/lib/firmware/brcm $(TARGET_DIR)/lib/firmware/cypress
24+
cp --remove-destination --no-dereference $(@D)/firmware/brcm/brcmfmac* $(TARGET_DIR)/lib/firmware/brcm
25+
cp --remove-destination --no-dereference $(@D)/firmware/cypress/cyfmac* $(TARGET_DIR)/lib/firmware/cypress
26+
chmod 644 $(TARGET_DIR)/lib/firmware/brcm/brcmfmac* $(TARGET_DIR)/lib/firmware/cypress/cyfmac*
27+
endef
28+
endif
29+
30+
define BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_INSTALL_TARGET_CMDS
31+
$(BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_INSTALL_TARGET_BT)
32+
$(BRCMFMAC_SDIO_FIRMWARE_RPI_CUSTOM_INSTALL_TARGET_WIFI)
33+
endef
34+
35+
$(eval $(generic-package))

0 commit comments

Comments
 (0)