From 288bbe374ad6273fe6bd57cd74ec49e08a13a6f9 Mon Sep 17 00:00:00 2001 From: Koichiro Iwao Date: Fri, 17 Nov 2023 16:33:50 +0900 Subject: [PATCH] Add firmware to support Bluetooth for RPi 3B+, Zero 2 W and 400 --- .linux-firmware-raspberrypi.metadata | 3 ++- SPECS/linux-firmware-raspberrypi.spec | 32 ++++++++++++++++++++++----- 2 files changed, 28 insertions(+), 7 deletions(-) diff --git a/.linux-firmware-raspberrypi.metadata b/.linux-firmware-raspberrypi.metadata index b301ecd..80cb46e 100644 --- a/.linux-firmware-raspberrypi.metadata +++ b/.linux-firmware-raspberrypi.metadata @@ -1 +1,2 @@ -8a860cdaddd54083fa3c59cdd2e9c485d7016656 SOURCES/firmware-nonfree-7f29411baead874b859eda53efdc2472345ea454.tar.gz +6bdeabc9c00f455499591d9d13dd9287b5087093 SOURCES/bluez-firmware-d9d4741caba7314d6500f588b1eaa5ab387a4ff5.tar.gz +e9a36b078988c69e10fc8e1fb65054be402386a9 SOURCES/firmware-nonfree-995129a86915fa3165a24d0a29419f6349f8f36b.tar.gz diff --git a/SPECS/linux-firmware-raspberrypi.spec b/SPECS/linux-firmware-raspberrypi.spec index 95cb7f5..01845fb 100644 --- a/SPECS/linux-firmware-raspberrypi.spec +++ b/SPECS/linux-firmware-raspberrypi.spec @@ -1,9 +1,13 @@ %global _firmwarepath /usr/lib/firmware -%global commit 7f29411baead874b859eda53efdc2472345ea454 -%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global fn_commit 995129a86915fa3165a24d0a29419f6349f8f36b +%global fn_shortcommit %(c=%{commit}; echo ${c:0:7}) +%global bz_commit d9d4741caba7314d6500f588b1eaa5ab387a4ff5 +%global bz_shortcommit %(c=%{bz_commit}; echo ${c:0:7}) +%global fn_srcdir firmware-nonfree-%{fn_commit} +%global bz_srcdir bluez-firmware-%{bz_commit} Name: linux-firmware-raspberrypi -Version: 20230420 +Version: 20231117 Release: 1%{?dist} Summary: Supplemental firmware used by Linux kernel for some Raspberry Pi models BuildArch: noarch @@ -13,16 +17,18 @@ BuildArch: noarch License: Redistributable, no modification permitted URL: https://github.com/RPi-Distro/firmware-nonfree -Source0: https://github.com/RPi-Distro/firmware-nonfree/archive/%{commit}/firmware-nonfree-%{commit}.tar.gz +Source0: https://github.com/RPi-Distro/firmware-nonfree/archive/%{fn_commit}/firmware-nonfree-%{fn_commit}.tar.gz +Source1: https://github.com/RPi-Distro/bluez-firmware/archive/%{bz_commit}/bluez-firmware-%{bz_commit}.tar.gz Requires: linux-firmware %description This package provides suppremental firmware files not included in linux-firmware -package to enable Wi-Fi on some Raspberry Pi models. +package to enable Bluetooth/Wi-Fi on some Raspberry Pi models. %prep -%autosetup -n firmware-nonfree-%{commit} +%setup -n %{fn_srcdir} +%setup -n %{fn_srcdir} -a 1 %build @@ -31,10 +37,21 @@ install -d %{buildroot}%{_firmwarepath}/brcm install -c -m 644 debian/config/brcm80211/brcm/brcmfmac43456-sdio.txt %{buildroot}%{_firmwarepath}/brcm/ install -c -m 644 debian/config/brcm80211/brcm/brcmfmac43456-sdio.bin %{buildroot}%{_firmwarepath}/brcm/ install -c -m 644 debian/config/brcm80211/brcm/brcmfmac43456-sdio.clm_blob %{buildroot}%{_firmwarepath}/brcm/ +# Bluetooth for RPi Zero 2W +install -c -m 644 %{bz_srcdir}/debian/firmware/broadcom/BCM43430B0.hcd %{buildroot}%{_firmwarepath}/brcm/ +# Bluetooth for RPi 3B+ +install -c -m 644 %{bz_srcdir}/debian/firmware/broadcom/BCM43430A1.hcd %{buildroot}%{_firmwarepath}/brcm/ +install -c -m 644 %{bz_srcdir}/debian/firmware/broadcom/BCM4345C0.hcd %{buildroot}%{_firmwarepath}/brcm/ +# Bluetooth for RPi 400 +install -c -m 644 %{bz_srcdir}/debian/firmware/broadcom/BCM4345C5.hcd %{buildroot}%{_firmwarepath}/brcm/ # Other firmware files installed by linux-firmware are compressed, so compress these as well xz -C crc32 %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdio.bin xz -C crc32 %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdio.clm_blob xz -C crc32 %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdio.txt +xz -C crc32 %{buildroot}%{_firmwarepath}/brcm/BCM43430A1.hcd +xz -C crc32 %{buildroot}%{_firmwarepath}/brcm/BCM43430B0.hcd +xz -C crc32 %{buildroot}%{_firmwarepath}/brcm/BCM4345C0.hcd +xz -C crc32 %{buildroot}%{_firmwarepath}/brcm/BCM4345C5.hcd # Create model-specific symlinks ln -s brcmfmac43456-sdio.bin.xz %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdio.raspberrypi,400.bin.xz ln -s brcmfmac43456-sdio.clm_blob.xz %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdio.raspberrypi,400.clm_blob.xz @@ -44,5 +61,8 @@ ln -s brcmfmac43456-sdio.txt.xz %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456- %{_firmwarepath}/brcm/* %changelog +* Fri Nov 17 2023 Koichiro Iwao - 20231117-1 +- Add firmware to support Bluetooth for RPi 3B+, Zero 2 W and 400 + * Thu Apr 20 2023 Koichiro Iwao - 20230420-1 - Initial creation