brcmfmac_sdio-firmware-all-aml: new firmware package

This commit is contained in:
Adam Green 2017-12-13 00:45:45 +00:00
parent abd84c2bbc
commit ba81a8ebac
No known key found for this signature in database
GPG Key ID: 52B701B6EF2F2E58
5 changed files with 82 additions and 0 deletions

View File

@ -0,0 +1,40 @@
################################################################################
# This file is part of LibreELEC - https://libreelec.tv
# Copyright (C) 2017-present Team LibreELEC
#
# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with LibreELEC. If not, see <http://www.gnu.org/licenses/>.
################################################################################
PKG_NAME="brcmfmac_sdio-firmware-all-aml"
PKG_VERSION="f9d6101"
PKG_SHA256="4676dfb1053795fd4c3c3ba59430da251d273202f016a9fdc13f22e12ac34947"
PKG_ARCH="arm aarch64"
PKG_LICENSE="GPL"
PKG_SITE="https://github.com/kszaq/brcmfmac_sdio-firmware-aml"
PKG_URL="https://github.com/kszaq/brcmfmac_sdio-firmware-aml/archive/$PKG_VERSION.tar.gz"
PKG_SOURCE_DIR="brcmfmac_sdio-firmware-aml-$PKG_VERSION*"
PKG_DEPENDS_TARGET="toolchain"
PKG_SECTION="firmware"
PKG_SHORTDESC="brcmfmac_sdio-firmware: firmware for brcm bluetooth chips used in some Amlogic based devices"
PKG_LONGDESC="Firmware for Broadcom Bluetooth devices used in some Amlogic based devices, and brcm-patchram-plus that downloads a patchram files in the HCD format to the Bluetooth based silicon and combo chips and other utility functions."
post_makeinstall_target() {
cd $INSTALL/$(get_full_firmware_dir)/brcm
for f in *.hcd; do
ln -sr $f $(grep --text -o 'BCM\S*' $f).hcd 2>/dev/null || true
ln -sr $f $(grep --text -o 'BCM\S*' $f | cut -c4-).hcd 2>/dev/null || true
ln -sr $f $(echo $f | sed -r 's/[^.]*/\U&/') 2>/dev/null || true
ln -sr bcm4335_V0343.0353.hcd BCM4335A0.hcd 2>/dev/null || true
done
}

View File

@ -0,0 +1,14 @@
diff -Naur a/Makefile b/Makefile
--- a/Makefile 2014-10-07 14:00:34.000000000 -0700
+++ b/Makefile 2016-12-06 11:24:34.855522455 -0800
@@ -15,8 +15,8 @@
install:
mkdir -p $(DESTDIR)/usr/bin
cp -P $(PROG) $(DESTDIR)/usr/bin
- mkdir -p $(DESTDIR)/lib/firmware
- cp -PR firmware/brcm $(DESTDIR)/lib/firmware/
+ mkdir -p $(DESTDIR)/usr/lib/kernel-overlays/base/lib/firmware
+ cp -PR firmware/brcm $(DESTDIR)/usr/lib/kernel-overlays/base/lib/firmware/
clean:
rm -f $(PROG)

View File

@ -0,0 +1,8 @@
[Unit]
Description=Broadcom sdio firmware update
[Service]
Type=simple
RemainAfterExit=yes
EnvironmentFile=/usr/share/bttty.conf
ExecStart=/usr/bin/hciattach -n -s 115200 ${BTTTY} bcm43xx 2000000

View File

@ -0,0 +1,8 @@
[Unit]
Description=Broadcom sdio firmware update for %I
[Service]
Type=simple
RemainAfterExit=yes
EnvironmentFile=/usr/share/bttty.conf
ExecStart=/usr/bin/brcm_patchram_plus --patchram /usr/lib/kernel-overlays/base/lib/firmware/brcm/%I.hcd --baudrate 2000000 --use_baudrate_for_download ${BTTTY} --enable_hci --no2bytes --tosleep=50000

View File

@ -0,0 +1,12 @@
################################################################################
# udev rules file for loading brcmfmac_sdio-firmware
################################################################################
### Broadcom bcm43362/bcm20710a1 bluetooth device
SUBSYSTEMS=="sdio", ATTRS{vendor}=="0x02d0", ATTRS{device}=="0xa962", ACTION=="add", \
TAG+="systemd", ENV{SYSTEMD_WANTS}+="brcmfmac_sdio-firmware@bcm20710a1.service", GOTO="end"
SUBSYSTEMS=="sdio", ATTRS{vendor}=="0x02d0", ACTION=="add", \
TAG+="systemd", ENV{SYSTEMD_WANTS}+="brcmfmac_sdio-firmware-aml.service"
LABEL="end"