mirror of
https://github.com/agherzan/meta-raspberrypi.git
synced 2025-12-06 06:19:11 +00:00
Compare commits
3 Commits
3afc9728b1
...
aaf976a665
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aaf976a665 | ||
|
|
8d786f646e | ||
|
|
2597651049 |
@@ -1,28 +0,0 @@
|
||||
From b9db43e36ad0942d33cb4db5b394abd722862568 Mon Sep 17 00:00:00 2001
|
||||
From: Andrei Gherzan <andrei.gherzan@huawei.com>
|
||||
Date: Fri, 9 Sep 2022 20:28:06 +0200
|
||||
Subject: [PATCH] Default 43455 firmware to standard variant
|
||||
|
||||
The firmware for 43455 is loaded as a symlink: brcmfmac43455-sdio.bin.
|
||||
This symlink is now broken as the debian package handles the right
|
||||
target of this symlink through a postinstall. We don't have that logic
|
||||
here so we default to the standard variant.
|
||||
|
||||
Upstream-Status: Inappropriate [issue reported at https://github.com/RPi-Distro/firmware-nonfree/issues/26]
|
||||
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
|
||||
---
|
||||
debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin
|
||||
index 9c39208..b914838 120000
|
||||
--- a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin
|
||||
+++ b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin
|
||||
@@ -1 +1 @@
|
||||
-../cypress/cyfmac43455-sdio.bin
|
||||
\ No newline at end of file
|
||||
+../cypress/cyfmac43455-sdio-standard.bin
|
||||
\ No newline at end of file
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
From 20741d848c32e0fb2e4841cf8bbc9ec3d198bb6b Mon Sep 17 00:00:00 2001
|
||||
From: Omri Sarig <omri.sarig@prevas.dk>
|
||||
Date: Thu, 9 Jan 2025 19:00:10 +0100
|
||||
Subject: [PATCH 2/2] Default all RPi 43455 boards to standard variant
|
||||
|
||||
As the patch above explains, the symlink that is being used by the
|
||||
brcmfmac43455-sdio.* files is one that is created by the Debian system,
|
||||
which we do not have in our implementation. Therefore, when the system
|
||||
tries to load these files, an error message is generated.
|
||||
|
||||
By changing the symlinks to be to the standard variant, the problem is
|
||||
solved for the build.
|
||||
|
||||
The code is also working without this patch - when the driver is unable
|
||||
to load the board-specific file (such as
|
||||
brcmfmac43455-sdio.raspberrypi,3-model-a-plus.bin), it reverts to using
|
||||
the base file (brcmfmac43455-sdio.bin), which is a correct link (as it
|
||||
is fixed in the patch above). However, the driver is still generating an
|
||||
error message in this case, which is being solved by linking the
|
||||
board-specific files to the standard variant as well.
|
||||
|
||||
Upstream-Status: Inappropriate [issue reported at https://github.com/RPi-Distro/firmware-nonfree/issues/26]
|
||||
Signed-off-by: Omri Sarig <omri.sarig@prevas.dk>
|
||||
---
|
||||
.../brcm/brcmfmac43455-sdio.raspberrypi,3-model-a-plus.bin | 2 +-
|
||||
.../brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin | 2 +-
|
||||
.../brcm/brcmfmac43455-sdio.raspberrypi,4-compute-module.bin | 2 +-
|
||||
.../brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.bin | 2 +-
|
||||
.../brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,5-model-b.bin | 2 +-
|
||||
5 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-a-plus.bin b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-a-plus.bin
|
||||
index 9c39208..b914838 120000
|
||||
--- a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-a-plus.bin
|
||||
+++ b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-a-plus.bin
|
||||
@@ -1 +1 @@
|
||||
-../cypress/cyfmac43455-sdio.bin
|
||||
\ No newline at end of file
|
||||
+../cypress/cyfmac43455-sdio-standard.bin
|
||||
\ No newline at end of file
|
||||
diff --git a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin
|
||||
index 9c39208..b914838 120000
|
||||
--- a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin
|
||||
+++ b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin
|
||||
@@ -1 +1 @@
|
||||
-../cypress/cyfmac43455-sdio.bin
|
||||
\ No newline at end of file
|
||||
+../cypress/cyfmac43455-sdio-standard.bin
|
||||
\ No newline at end of file
|
||||
diff --git a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-compute-module.bin b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-compute-module.bin
|
||||
index 9c39208..b914838 120000
|
||||
--- a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-compute-module.bin
|
||||
+++ b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-compute-module.bin
|
||||
@@ -1 +1 @@
|
||||
-../cypress/cyfmac43455-sdio.bin
|
||||
\ No newline at end of file
|
||||
+../cypress/cyfmac43455-sdio-standard.bin
|
||||
\ No newline at end of file
|
||||
diff --git a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.bin b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.bin
|
||||
index 9c39208..b914838 120000
|
||||
--- a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.bin
|
||||
+++ b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.bin
|
||||
@@ -1 +1 @@
|
||||
-../cypress/cyfmac43455-sdio.bin
|
||||
\ No newline at end of file
|
||||
+../cypress/cyfmac43455-sdio-standard.bin
|
||||
\ No newline at end of file
|
||||
diff --git a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,5-model-b.bin b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,5-model-b.bin
|
||||
index 9c39208..b914838 120000
|
||||
--- a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,5-model-b.bin
|
||||
+++ b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,5-model-b.bin
|
||||
@@ -1 +1 @@
|
||||
-../cypress/cyfmac43455-sdio.bin
|
||||
\ No newline at end of file
|
||||
+../cypress/cyfmac43455-sdio-standard.bin
|
||||
\ No newline at end of file
|
||||
--
|
||||
2.34.1
|
||||
|
||||
@@ -7,7 +7,7 @@ SECTION = "kernel"
|
||||
|
||||
LICENSE = "GPL-2.0-only & binary-redist-Cypress-rpidistro & Synaptics-rpidistro"
|
||||
LIC_FILES_CHKSUM = "\
|
||||
file://debian/copyright;md5=291ee5385b4cf74b10c5fb5a46a7bbc6 \
|
||||
file://debian/copyright;md5=454e44c688dc909e16223e4aee63568c \
|
||||
"
|
||||
# Where these are no common licenses, set NO_GENERIC_LICENSE so that the
|
||||
# license files will be copied from the fetched source.
|
||||
@@ -16,10 +16,10 @@ NO_GENERIC_LICENSE[Synaptics-rpidistro] = "debian/copyright"
|
||||
LICENSE_FLAGS = "synaptics-killswitch"
|
||||
|
||||
SRC_URI = "git://github.com/RPi-Distro/firmware-nonfree;branch=bookworm;protocol=https \
|
||||
file://0001-Default-43455-firmware-to-standard-variant.patch \
|
||||
file://0002-Default-all-RPi-43455-boards-to-standard-variant.patch \
|
||||
"
|
||||
SRCREV = "4b356e134e8333d073bd3802d767a825adec3807"
|
||||
PV = "20230625-2+rpt3"
|
||||
SRCREV = "c9d3ae6584ab79d19a4f94ccf701e888f9f87a53"
|
||||
PV = "20240709-2~bpo12+1+rpt3"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit allarch
|
||||
@@ -27,6 +27,11 @@ inherit allarch
|
||||
do_configure[noexec] = "1"
|
||||
do_compile[noexec] = "1"
|
||||
|
||||
# The minimal firmware doesn't work with Raspberry Pi 5, so default to the
|
||||
# standard firmware
|
||||
CYFMAC43455_SDIO_FIRMWARE ??= "minimal"
|
||||
CYFMAC43455_SDIO_FIRMWARE:raspberrypi5 ??= "standard"
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${nonarch_base_libdir}/firmware/brcm ${D}${nonarch_base_libdir}/firmware/cypress
|
||||
|
||||
@@ -43,8 +48,12 @@ do_install() {
|
||||
done
|
||||
|
||||
cp -R --no-dereference --preserve=mode,links -v debian/config/brcm80211/cypress/* ${D}${nonarch_base_libdir}/firmware/cypress/
|
||||
ln -s cyfmac43455-sdio-${CYFMAC43455_SDIO_FIRMWARE}.bin ${D}${nonarch_base_libdir}/firmware/cypress/cyfmac43455-sdio.bin
|
||||
|
||||
rm ${D}${nonarch_base_libdir}/firmware/cypress/README.txt
|
||||
|
||||
install -d ${D}${sysconfdir}/modprobe.d
|
||||
install -m 0644 debian/rpi-brcmfmac.conf ${D}${sysconfdir}/modprobe.d/
|
||||
}
|
||||
|
||||
PACKAGES = "\
|
||||
@@ -55,6 +64,7 @@ PACKAGES = "\
|
||||
${PN}-bcm43455 \
|
||||
${PN}-bcm43456 \
|
||||
${PN}-license \
|
||||
${PN}-module-conf \
|
||||
"
|
||||
|
||||
LICENSE:${PN}-bcm43430 = "binary-redist-Cypress-rpidistro"
|
||||
@@ -85,13 +95,14 @@ FILES:${PN}-bcm43455 = " \
|
||||
"
|
||||
FILES:${PN}-bcm43456 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43456*"
|
||||
FILES:${PN}-license = "${nonarch_base_libdir}/firmware/copyright.firmware-nonfree-rpidistro"
|
||||
FILES:${PN}-module-conf = "${sysconfdir}/modprobe.d"
|
||||
|
||||
RDEPENDS:${PN}-bcm43430 += "${PN}-license"
|
||||
RDEPENDS:${PN}-bcm43436 += "${PN}-license"
|
||||
RDEPENDS:${PN}-bcm43436s += "${PN}-license"
|
||||
RDEPENDS:${PN}-bcm43439 += "${PN}-license"
|
||||
RDEPENDS:${PN}-bcm43455 += "${PN}-license"
|
||||
RDEPENDS:${PN}-bcm43456 += "${PN}-license"
|
||||
RDEPENDS:${PN}-bcm43430 += "${PN}-license ${PN}-module-conf"
|
||||
RDEPENDS:${PN}-bcm43436 += "${PN}-license ${PN}-module-conf"
|
||||
RDEPENDS:${PN}-bcm43436s += "${PN}-license ${PN}-module-conf"
|
||||
RDEPENDS:${PN}-bcm43439 += "${PN}-license ${PN}-module-conf"
|
||||
RDEPENDS:${PN}-bcm43455 += "${PN}-license ${PN}-module-conf"
|
||||
RDEPENDS:${PN}-bcm43456 += "${PN}-license ${PN}-module-conf"
|
||||
|
||||
RCONFLICTS:${PN}-bcm43430 = "linux-firmware-raspbian-bcm43430"
|
||||
RCONFLICTS:${PN}-bcm43436 = "linux-firmware-bcm43436"
|
||||
|
||||
Reference in New Issue
Block a user