brcmfmac_sdio-firmware-rpi: Implement Raspbian udev rules and btuart

This commit is contained in:
MilhouseVH 2017-03-02 15:50:29 +00:00
parent 96911956fd
commit f5dd985f63
4 changed files with 40 additions and 3 deletions

View File

@ -38,6 +38,12 @@ makeinstall_target() {
DESTDIR=$INSTALL/usr ./install
}
post_makeinstall_target() {
# Install rpi btuart script to bring up Bluetooth
mkdir -p $INSTALL/usr/bin
cp -P $PKG_DIR/scripts/rpi-btuart $INSTALL/usr/bin
}
post_install() {
enable_service brcmfmac_sdio-firmware.service
}

View File

@ -0,0 +1,11 @@
#!/bin/bash
if [ "$(cat /proc/device-tree/aliases/uart0)" = "$(cat /proc/device-tree/aliases/serial1)" ] ; then
if [ "$(wc -c /proc/device-tree/soc/gpio@7e200000/uart0_pins/brcm\,pins | cut -f 1 -d ' ')" = "16" ] ; then
/usr/bin/hciattach /dev/serial1 bcm43xx 3000000 flow -
else
/usr/bin/hciattach /dev/serial1 bcm43xx 921600 noflow -
fi
else
/usr/bin/hciattach /dev/serial1 bcm43xx 460800 noflow -
fi

View File

@ -1,13 +1,12 @@
[Unit]
Description=Broadcom sdio firmware update for BCM43430A1
ConditionPathExists=/dev/ttyAMA0
ConditionPathExists=/proc/device-tree/soc/gpio@7e200000/bt_pins
ConditionPathExists=/dev/serial1
After=network.target
[Service]
Type=simple
RemainAfterExit=yes
ExecStart=/usr/bin/hciattach /dev/ttyAMA0 bcm43xx 921600 noflow -
ExecStart=/usr/bin/rpi-btuart
[Install]
WantedBy=network.target

View File

@ -0,0 +1,21 @@
KERNEL=="ttyAMA[01]", PROGRAM="/bin/sh -c '\
ALIASES=/proc/device-tree/aliases; \
if [ $(cat $ALIASES/uart0) = $(cat $ALIASES/serial0) ]; then \
echo 0;\
elif [ $(cat $ALIASES/uart0) = $(cat $ALIASES/serial1) ]; then \
echo 1; \
else \
exit 1; \
fi\
'", SYMLINK+="serial%c"
KERNEL=="ttyS0", PROGRAM="/bin/sh -c '\
ALIASES=/proc/device-tree/aliases; \
if [ $(cat $ALIASES/uart1) = $(cat $ALIASES/serial0) ]; then \
echo 0; \
elif [ $(cat $ALIASES/uart1) = $(cat $ALIASES/serial1) ]; then \
echo 1; \
else \
exit 1; \
fi \
'", SYMLINK+="serial%c"