bluez5: use pi-bluetooth package for startup infrastructure

RPi-Distro has augmented their bluetooth infrastructure to support new
features.  It also correctly handles restart, which fixes problems when
faults cause hciattach to exit.  Replace brcm43438.service with the
upstream ones.

Resolves: #330
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
This commit is contained in:
Peter A. Bigot
2018-11-14 07:48:51 -06:00
committed by Andrei Gherzan
parent bfc35b773f
commit f752e92383
4 changed files with 60 additions and 51 deletions
@@ -0,0 +1,28 @@
From af91c96951a11f81f5cea88a0010161592c89310 Mon Sep 17 00:00:00 2001
From: "Peter A. Bigot" <pab@pabigot.com>
Date: Wed, 14 Nov 2018 09:19:51 -0600
Subject: [PATCH] bthelper: correct path for hciconfig under Yocto
Upstream-Status: Inapproprate [OE-specific]
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
---
usr/bin/bthelper | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/usr/bin/bthelper b/usr/bin/bthelper
index 255fdeb..4e1a1a4 100755
--- a/usr/bin/bthelper
+++ b/usr/bin/bthelper
@@ -10,7 +10,7 @@ fi
dev="$1"
# Need to bring hci up before looking at MAC as it can be all zeros during init
-/bin/hciconfig "$dev" up
-/bin/hciconfig "$dev" |grep -q "BD Address: B8:27:EB:" || exit 0
+/usr/bin/hciconfig "$dev" up
+/usr/bin/hciconfig "$dev" |grep -q "BD Address: B8:27:EB:" || exit 0
/usr/bin/hcitool -i "$dev" cmd 0x3f 0x1c 0x01 0x02 0x00 0x01 0x01 > /dev/null
--
2.17.1
@@ -6,17 +6,41 @@ LIC_FILES_CHKSUM = "\
file://debian/copyright;md5=6af8de3c8ee71f8e91e9b22f84ff2022 \
"
SRC_URI = "git://github.com/RPi-Distro/pi-bluetooth"
SRCREV = "2a7477966bb3c69838b224f3ea92cb49a88124d5"
UPSTREAM_VERSION_UNKNOWN = "1"
SRC_URI = "\
git://github.com/RPi-Distro/pi-bluetooth \
file://0001-bthelper-correct-path-for-hciconfig-under-Yocto.patch \
"
SRCREV = "2e1a393955910aea67bbf3c921be35a66e8a8fbe"
PV = "1.1+git${SRCPV}"
S = "${WORKDIR}/git"
# hciuart.service replaces what was brcm43438.service
inherit systemd
SYSTEMD_SERVICE_${PN} = "\
hciuart.service \
bthelper@.service \
"
inherit allarch
do_install() {
install -d ${D}${sysconfdir}/udev/rules.d
install -m 0644 ${S}/lib/udev/rules.d/* ${D}${sysconfdir}/udev/rules.d
install -d ${D}${bindir}
install -m 0755 ${S}/usr/bin/bthelper ${D}${bindir}
install -m 0755 ${S}/usr/bin/btuart ${D}${bindir}
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${S}/debian/pi-bluetooth.bthelper@.service ${D}${systemd_system_unitdir}/bthelper@.service
install -m 0644 ${S}/debian/pi-bluetooth.hciuart.service ${D}${systemd_system_unitdir}/hciuart.service
fi
}
FILES_${PN} = "${bindir}"
FILES_${PN} = "\
${bindir} \
${sysconfdir} \
${systemd_unitdir}/system \
"