summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Alfredsen <crabbedhaloablution@icloud.com>2020-11-25 17:26:57 +0100
committerSam James <sam@gentoo.org>2020-11-26 04:53:45 +0000
commita1fb90228efd57317e311536ef8ffe6ae68d6c49 (patch)
treeec415e33a66462544e3b81f7a7c5fdedae33cf74 /sys-firmware/raspberrypi-wifi-ucode
parentdev-python/black: restrict tests (diff)
downloadgentoo-a1fb90228efd57317e311536ef8ffe6ae68d6c49.tar.gz
gentoo-a1fb90228efd57317e311536ef8ffe6ae68d6c49.tar.bz2
gentoo-a1fb90228efd57317e311536ef8ffe6ae68d6c49.zip
sys-firmware/raspberrypi-wifi-ucode: new package package (raspberry pi wifi ucode)
This package installs the most up-to-date firmware for the Broadcom wifi chips found in the Raspberry Pi line of SBCs. Closes: https://bugs.gentoo.org/756739 Package-Manager: Portage-3.0.10, Repoman-3.0.2 Signed-off-by: Peter Alfredsen <crabbedhaloablution@icloud.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-firmware/raspberrypi-wifi-ucode')
-rw-r--r--sys-firmware/raspberrypi-wifi-ucode/Manifest1
-rw-r--r--sys-firmware/raspberrypi-wifi-ucode/metadata.xml19
-rw-r--r--sys-firmware/raspberrypi-wifi-ucode/raspberrypi-wifi-ucode-20190114.1_p9.ebuild67
3 files changed, 87 insertions, 0 deletions
diff --git a/sys-firmware/raspberrypi-wifi-ucode/Manifest b/sys-firmware/raspberrypi-wifi-ucode/Manifest
new file mode 100644
index 000000000000..7e0c1fe7bcf9
--- /dev/null
+++ b/sys-firmware/raspberrypi-wifi-ucode/Manifest
@@ -0,0 +1 @@
+DIST firmware-nonfree_20190114-1+rpt9.debian.tar.xz 2040560 BLAKE2B 923adb08e4033f1f70c8e373464b5a4881f354fb218b163accb957b99ed1adf104f496b2156c772d881e7e01ed393d0f6c1563dbe797e1b1600a1f7f768292c4 SHA512 80df5df213105bfae231dbc81d17941258063971ea82e5d321b31d92a0be7101b9ecfe03aed02d9b7a0263d13bbcdcb862d4892a9e789da781af1430d81a821d
diff --git a/sys-firmware/raspberrypi-wifi-ucode/metadata.xml b/sys-firmware/raspberrypi-wifi-ucode/metadata.xml
new file mode 100644
index 000000000000..bbecf8cc3a3e
--- /dev/null
+++ b/sys-firmware/raspberrypi-wifi-ucode/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>crabbedhaloablution@icloud.com</email>
+ <name>Peter Alfredsen</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">RPi-Distro/firmware-nonfree</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-firmware/raspberrypi-wifi-ucode/raspberrypi-wifi-ucode-20190114.1_p9.ebuild b/sys-firmware/raspberrypi-wifi-ucode/raspberrypi-wifi-ucode-20190114.1_p9.ebuild
new file mode 100644
index 000000000000..2d901028a833
--- /dev/null
+++ b/sys-firmware/raspberrypi-wifi-ucode/raspberrypi-wifi-ucode-20190114.1_p9.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Most up-to-date uCode for the Broadcom wifi chips on Raspberry Pi SBCs"
+HOMEPAGE="https://github.com/RPi-Distro/firmware-nonfree
+ https://archive.raspberrypi.org/debian/pool/main/f/firmware-nonfree"
+MY_PN=firmware-nonfree
+SRC_URI="https://archive.raspberrypi.org/debian/pool/main/f/${MY_PN}/${MY_PN}_$(ver_cut 1)-$(ver_cut 2)+rpt$(ver_cut 4).debian.tar.xz"
+
+LICENSE="Broadcom"
+SLOT="0"
+KEYWORDS="~arm ~arm64"
+
+RDEPEND="!sys-kernel/linux-firmware[-savedconfig]"
+DEPEND=""
+
+S="${WORKDIR}"
+
+pkg_setup() {
+ local -a BADFILES=()
+ local txt file
+ # /lib/firmware/brcm/brcmfmac434{30,36,55,56}-sdio.*.txt
+ # The above pattern works because the files we want to hit
+ # have names of the form:
+ # * /lib/firmware/brcm/brcmfmac43430-sdio.AP6212.txt
+ # * /lib/firmware/brcm/brcmfmac43430-sdio.Hampoo-D2D3_Vi8A1.txt
+ # * /lib/firmware/brcm/brcmfmac43430-sdio.MUR1DX.txt
+ # * /lib/firmware/brcm/brcmfmac43430-sdio.raspberrypi,3-model-b.txt
+ # * /lib/firmware/brcm/brcmfmac43455-sdio.MINIX-NEO Z83-4.txt
+ # * /lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,3-model-a-plus.txt
+ # * /lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt
+ # * /lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt
+ # While the files installed by raspberrypi-wifi-ucode have names
+ # of the form:
+ # * /lib/firmware/brcm/brcmfmac43430-sdio.txt
+ # * /lib/firmware/brcm/brcmfmac43436-sdio.txt
+ # * /lib/firmware/brcm/brcmfmac43455-sdio.txt
+ # * /lib/firmware/brcm/brcmfmac43456-sdio.txt
+ # So no overlap is assured.
+ for txt in /lib/firmware/brcm/brcmfmac434{30,36,55,56}-sdio.*.txt; do
+ [[ -e "${txt}" ]] && BADFILES+=( "${txt}" )
+ done
+ if (( "${#BADFILES[@]}" >= 1)); then
+ eerror "The following files should be excluded from the savedconfig of"
+ eerror "linux-firmware and linux-firmware should be re-emerged. Even"
+ eerror "though they do not collide with files from ${PN},"
+ eerror "they may be loaded preferentially to the files included in"
+ eerror "${PN}, leading to undefined behaviour."
+ eerror "List of files:"
+ for file in "${BADFILES[@]}"; do
+ eerror "${file}"
+ done
+ fi
+}
+
+src_prepare() {
+ default
+ eapply -p1 debian/patches/sdio-txt-files.patch
+}
+
+src_install() {
+ insinto /lib/firmware/brcm
+ doins brcm/*
+ dodoc debian/changelog
+}