Drop obsolete btattach udev rule + systemd service
Drop the obsolete udev rule + systemd service to call btattach on BT-HCIs connected via UART from userspace. I added these a long time ago to make BT work on Broadcom HCIs connected through an UART, but this has not been necessary for a long time. The kernel now makes the connection between the UART and the HCI itself and as part of this it no longer instantiates the platform-devices which the udev rule triggers on, so these have been a no-op for a long time now.
This commit is contained in:
parent
fdda690e47
commit
3a853a2f14
@ -1,33 +0,0 @@
|
|||||||
# Some devices have a bluetooth HCI connected to an uart, these needs to be
|
|
||||||
# setup by calling btattach. The systemd btattach-bcm.service takes care of
|
|
||||||
# this. These udev rules hardware-activate that service when necessary.
|
|
||||||
#
|
|
||||||
# For now this only suports ACPI enumerated Broadcom BT HCIs.
|
|
||||||
# This has been tested on Bay and Cherry Trail devices with both ACPI and
|
|
||||||
# PCI enumerated UARTs.
|
|
||||||
|
|
||||||
# Note we check for the platform device not for the acpi device, because
|
|
||||||
# some DSDTs list multiple bluetooth adapters, but only some (or none)
|
|
||||||
# are enabled. Only enabled adapters get a platform device created.
|
|
||||||
ACTION!="add", GOTO="btattach_bcm_rules_end"
|
|
||||||
SUBSYSTEM!="platform", GOTO="btattach_bcm_rules_end"
|
|
||||||
|
|
||||||
KERNEL=="BCM2E1A:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E39:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E3A:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E3D:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E3F:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E40:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E54:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E55:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E64:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E65:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E67:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E71:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E7B:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E7C:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E7E:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E95:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
KERNEL=="BCM2E96:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service"
|
|
||||||
|
|
||||||
LABEL="btattach_bcm_rules_end"
|
|
18
bluez.spec
18
bluez.spec
@ -6,17 +6,13 @@
|
|||||||
|
|
||||||
Name: bluez
|
Name: bluez
|
||||||
Version: 5.56
|
Version: 5.56
|
||||||
Release: 2%{?dist}
|
Release: 3%{?dist}
|
||||||
Summary: Bluetooth utilities
|
Summary: Bluetooth utilities
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
URL: http://www.bluez.org/
|
URL: http://www.bluez.org/
|
||||||
|
|
||||||
Source0: http://www.kernel.org/pub/linux/bluetooth/%{name}-%{version}.tar.xz
|
Source0: http://www.kernel.org/pub/linux/bluetooth/%{name}-%{version}.tar.xz
|
||||||
Source1: bluez.gitignore
|
Source1: bluez.gitignore
|
||||||
# Scripts for automatically btattach-ing serial ports connected to Broadcom HCIs
|
|
||||||
Source2: 69-btattach-bcm.rules
|
|
||||||
Source3: btattach-bcm@.service
|
|
||||||
Source4: btattach-bcm-service.sh
|
|
||||||
|
|
||||||
# https://github.com/hadess/bluez/commits/obex-5.46
|
# https://github.com/hadess/bluez/commits/obex-5.46
|
||||||
Patch1: 0001-obex-Use-GLib-helper-function-to-manipulate-paths.patch
|
Patch1: 0001-obex-Use-GLib-helper-function-to-manipulate-paths.patch
|
||||||
@ -195,11 +191,6 @@ install -D -p -m0644 src/main.conf ${RPM_BUILD_ROOT}/etc/bluetooth/main.conf
|
|||||||
install -D -p -m0644 mesh/mesh-main.conf ${RPM_BUILD_ROOT}/etc/bluetooth/mesh-main.conf
|
install -D -p -m0644 mesh/mesh-main.conf ${RPM_BUILD_ROOT}/etc/bluetooth/mesh-main.conf
|
||||||
sed -i 's/#\[Policy\]$/\[Policy\]/; s/#AutoEnable=false/AutoEnable=true/' ${RPM_BUILD_ROOT}/%{_sysconfdir}/bluetooth/main.conf
|
sed -i 's/#\[Policy\]$/\[Policy\]/; s/#AutoEnable=false/AutoEnable=true/' ${RPM_BUILD_ROOT}/%{_sysconfdir}/bluetooth/main.conf
|
||||||
|
|
||||||
#serial port connected Broadcom HCIs scripts
|
|
||||||
install -D -p -m0644 %{SOURCE2} ${RPM_BUILD_ROOT}/%{_udevrulesdir}/
|
|
||||||
install -D -p -m0644 %{SOURCE3} ${RPM_BUILD_ROOT}/%{_unitdir}/
|
|
||||||
install -D -p -m0755 %{SOURCE4} ${RPM_BUILD_ROOT}/%{_libexecdir}/bluetooth/
|
|
||||||
|
|
||||||
# Install the HCI emulator, useful for testing
|
# Install the HCI emulator, useful for testing
|
||||||
install emulator/btvirt ${RPM_BUILD_ROOT}/%{_libexecdir}/bluetooth/
|
install emulator/btvirt ${RPM_BUILD_ROOT}/%{_libexecdir}/bluetooth/
|
||||||
|
|
||||||
@ -254,13 +245,10 @@ install emulator/btvirt ${RPM_BUILD_ROOT}/%{_libexecdir}/bluetooth/
|
|||||||
%{_mandir}/man8/bluetoothd.8.*
|
%{_mandir}/man8/bluetoothd.8.*
|
||||||
%dir %{_libexecdir}/bluetooth
|
%dir %{_libexecdir}/bluetooth
|
||||||
%{_libexecdir}/bluetooth/bluetoothd
|
%{_libexecdir}/bluetooth/bluetoothd
|
||||||
%{_libexecdir}/bluetooth/btattach-bcm-service.sh
|
|
||||||
%{_libdir}/bluetooth/
|
%{_libdir}/bluetooth/
|
||||||
%{_localstatedir}/lib/bluetooth
|
%{_localstatedir}/lib/bluetooth
|
||||||
%{_datadir}/dbus-1/system-services/org.bluez.service
|
%{_datadir}/dbus-1/system-services/org.bluez.service
|
||||||
%{_unitdir}/bluetooth.service
|
%{_unitdir}/bluetooth.service
|
||||||
%{_unitdir}/btattach-bcm@.service
|
|
||||||
%{_udevrulesdir}/69-btattach-bcm.rules
|
|
||||||
%{_datadir}/zsh/site-functions/_bluetoothctl
|
%{_datadir}/zsh/site-functions/_bluetoothctl
|
||||||
|
|
||||||
%if %{with deprecated}
|
%if %{with deprecated}
|
||||||
@ -320,6 +308,10 @@ install emulator/btvirt ${RPM_BUILD_ROOT}/%{_libexecdir}/bluetooth/
|
|||||||
%{_userunitdir}/obex.service
|
%{_userunitdir}/obex.service
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sun Mar 14 2021 Hans de Goede <hdegoede@redhat.com> - 5.56-3
|
||||||
|
- Drop obsolete udev rule + systemd service to call btattach on BT-HCIs
|
||||||
|
connected via UART from userspace, this is all handled in the kernel now
|
||||||
|
|
||||||
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 5.56-2
|
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 5.56-2
|
||||||
- Rebuilt for updated systemd-rpm-macros
|
- Rebuilt for updated systemd-rpm-macros
|
||||||
See https://pagure.io/fesco/issue/2583.
|
See https://pagure.io/fesco/issue/2583.
|
||||||
|
@ -1,30 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Simple shell script to wait for the tty for an uart using BT HCI to show up
|
|
||||||
# and then invoke btattach with the right parameters, this is intended to be
|
|
||||||
# invoked from a hardware-activated systemd service
|
|
||||||
#
|
|
||||||
# For now this only suports ACPI enumerated Broadcom BT HCIs.
|
|
||||||
# This has been tested on Bay and Cherry Trail devices with both ACPI and
|
|
||||||
# PCI enumerated UARTs.
|
|
||||||
#
|
|
||||||
# Note the kernel bt developers are working on solving this entirely in the
|
|
||||||
# kernel, so it is not worth the trouble to write something better then this.
|
|
||||||
|
|
||||||
BT_DEV="/sys/bus/platform/devices/$1"
|
|
||||||
BT_DEV="$(readlink -f $BT_DEV)"
|
|
||||||
UART_DEV="$(dirname $BT_DEV)"
|
|
||||||
|
|
||||||
# Stupid GPD-pocket has USB BT with id 0000:0000, but still claims to have
|
|
||||||
# an uart attached bt
|
|
||||||
if [ "$1" = "BCM2E7E:00" ] && lsusb | grep -q "ID 0000:0000"; then
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
while [ ! -d "$UART_DEV/tty" ]; do
|
|
||||||
sleep .2
|
|
||||||
done
|
|
||||||
|
|
||||||
TTY="$(ls $UART_DEV/tty)"
|
|
||||||
|
|
||||||
exec btattach --bredr "/dev/$TTY" -P bcm
|
|
@ -1,6 +0,0 @@
|
|||||||
[Unit]
|
|
||||||
Description=btattach for Broadcom devices
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
Type=simple
|
|
||||||
ExecStart=/usr/libexec/bluetooth/btattach-bcm-service.sh %I
|
|
Loading…
Reference in New Issue
Block a user