Add firmware to support Bluetooth for RPi 3B+, Zero 2 W and 400

This commit is contained in:
Koichiro Iwao 2023-11-17 16:33:50 +09:00
parent b722db7d1f
commit 6fa98ea401
2 changed files with 33 additions and 8 deletions

View File

@ -1 +1,2 @@
8a860cdaddd54083fa3c59cdd2e9c485d7016656 SOURCES/firmware-nonfree-7f29411baead874b859eda53efdc2472345ea454.tar.gz 6bdeabc9c00f455499591d9d13dd9287b5087093 SOURCES/bluez-firmware-d9d4741caba7314d6500f588b1eaa5ab387a4ff5.tar.gz
e9a36b078988c69e10fc8e1fb65054be402386a9 SOURCES/firmware-nonfree-995129a86915fa3165a24d0a29419f6349f8f36b.tar.gz

View File

@ -1,9 +1,13 @@
%global _firmwarepath /usr/lib/firmware %global _firmwarepath /usr/lib/firmware
%global commit 7f29411baead874b859eda53efdc2472345ea454 %global fn_commit 995129a86915fa3165a24d0a29419f6349f8f36b
%global shortcommit %(c=%{commit}; echo ${c:0:7}) %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 Name: linux-firmware-raspberrypi
Version: 20230420 Version: 20231117
Release: 1%{?dist} Release: 1%{?dist}
Summary: Supplemental firmware used by Linux kernel for some Raspberry Pi models Summary: Supplemental firmware used by Linux kernel for some Raspberry Pi models
BuildArch: noarch BuildArch: noarch
@ -13,16 +17,18 @@ BuildArch: noarch
License: Redistributable, no modification permitted License: Redistributable, no modification permitted
URL: https://github.com/RPi-Distro/firmware-nonfree 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 Requires: linux-firmware
%description %description
This package provides suppremental firmware files not included in linux-firmware 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 %prep
%autosetup -n firmware-nonfree-%{commit} %setup -n %{fn_srcdir}
%setup -n %{fn_srcdir} -a 1
%build %build
@ -31,6 +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.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.bin %{buildroot}%{_firmwarepath}/brcm/
install -c -m 644 debian/config/brcm80211/brcm/brcmfmac43456-sdio.clm_blob %{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 # Create model-specific symlinks
ln -s brcmfmac43456-sdio.bin %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdio.raspberrypi,400.bin ln -s brcmfmac43456-sdio.bin %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdio.raspberrypi,400.bin
ln -s brcmfmac43456-sdio.clm_blob %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdio.raspberrypi,400.clm_blob ln -s brcmfmac43456-sdio.clm_blob %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdio.raspberrypi,400.clm_blob
@ -40,5 +61,8 @@ ln -s brcmfmac43456-sdio.txt %{buildroot}%{_firmwarepath}/brcm/brcmfmac43456-sdi
%{_firmwarepath}/brcm/* %{_firmwarepath}/brcm/*
%changelog %changelog
* Fri Nov 17 2023 Koichiro Iwao <meta@almalinux.org> - 20231117-1
- Add firmware to support Bluetooth for RPi 3B+, Zero 2 W and 400
* Thu Apr 20 2023 Koichiro Iwao <koichiro.iwao@miraclelinux.com> - 20230420-1 * Thu Apr 20 2023 Koichiro Iwao <koichiro.iwao@miraclelinux.com> - 20230420-1
- Initial creation - Initial creation