blob: c0f9e170494ddf9d6302fe73886cc06b380e6f18 [file] [log] [blame]
# Augments upstream linux-firmware with additional and updated images
# from Raspbian:
# https://github.com/RPi-Distro/firmware-nonfree
# https://github.com/RPi-Distro/bluez-firmware
SRC_URI_append_rpi = " \
git://github.com/RPi-Distro/firmware-nonfree;destsuffix=raspbian-nf;name=raspbian-nf \
git://github.com/RPi-Distro/bluez-firmware;destsuffix=raspbian-bluez;name=raspbian-bluez \
"
SRCREV_raspbian-nf = "86e88fbf0345da49555d0ec34c80b4fbae7d0cd3"
SRCREV_raspbian-bluez = "e28cd7ee8615de33aa7ec2b41d556af61a4a2707"
SRCREV_FORMAT_rpi = "default+raspbian-nf+raspbian-bluez"
do_install_append_rpi() {
install -d ${D}${nonarch_base_libdir}/firmware/brcm/
# Replace outdated linux-firmware files with updated ones from
# raspbian firmware-nonfree. Raspbian adds blobs and nvram
# definitions that are also necessary so copy those too.
for fw in brcmfmac43430-sdio brcmfmac43455-sdio ; do
install -m 0644 ${WORKDIR}/raspbian-nf/brcm/${fw}.* ${D}${nonarch_base_libdir}/firmware/brcm/
done
# Add missing Cypress Bluetooth files from raspbian bluez-firmware
for fw in BCM43430A1.hcd BCM4345C0.hcd ; do
install -m 0644 ${WORKDIR}/raspbian-bluez/broadcom/${fw} ${D}${nonarch_base_libdir}/firmware/brcm/
done
}
# NB: Must prepend, else these become empty and their content is left in
# the roll-up package which precedes them.
PACKAGES_prepend_rpi = "\
${PN}-bcm43430a1-hcd \
${PN}-bcm4345c0-hcd \
"
# ${PN}-bcm43455 package and brcmfmac43455-sdio from linux-firmware
# is already included in the oe-core recipe, so don't add it to PACKAGES
# again, the version from raspbian-nf seems a bit newer:
# $ strings ./1_0.0+gitAUTOINC+d114732723+86e88fbf03+e28cd7ee86-r0/git/brcm/brcmfmac43455-sdio.bin | grep Ver
# Version: 7.45.18.0 CRC: d7226371 Date: Sun 2015-03-01 07:31:57 PST Ucode Ver: 1026.2 FWID: 01-6a2c8ad4
# $ strings ./1_0.0+gitAUTOINC+d114732723+86e88fbf03+e28cd7ee86-r0/raspbian-nf/brcm/brcmfmac43455-sdio.bin | grep Ver
# Version: 7.45.154 (r684107 CY) CRC: b1f79383 Date: Tue 2018-02-27 03:18:17 PST Ucode Ver: 1043.2105 FWID 01-4fbe0b04
# For additional Broadcom
LICENSE_${PN}-bcm43455 = "Firmware-broadcom_bcm43xx"
FILES_${PN}-bcm43430_append_rpi = " \
${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.txt \
"
FILES_${PN}-bcm43455 = " \
${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.* \
"
RDEPENDS_${PN}-bcm43455 += "${PN}-broadcom-license"
LICENSE_${PN}-bcm43430a1-hcd = "Firmware-cypress"
LICENSE_${PN}-bcm4345c0-hcd = "Firmware-cypress"
FILES_${PN}-bcm43430a1-hcd = " \
${nonarch_base_libdir}/firmware/brcm/BCM43430A1.hcd \
"
FILES_${PN}-bcm4345c0-hcd = " \
${nonarch_base_libdir}/firmware/brcm/BCM4345C0.hcd \
"
RDEPENDS_${PN}-bcm43430a1-hcd += "${PN}-cypress-license"
RDEPENDS_${PN}-bcm4345c0-hcd += "${PN}-cypress-license"