From 69ef1c05f4872a32e63e1638f9235d565a1a4974 Mon Sep 17 00:00:00 2001 From: Silvan Calarco Date: Fri, 5 Jan 2024 23:39:01 +0100 Subject: [PATCH] package created from bluez5-5.41-2mamba [release 5.41-1mamba;Tue Jul 19 2016] --- README.md | 2 + ...ncrease-firmware-load-timeout-to-30s.patch | 25 ++++++++ ...41-bcm43xx-Add-bcm43xx-3wire-variant.patch | 26 ++++++++ ...-speed-must-be-reset-after-the-firmw.patch | 37 +++++++++++ ...mode-43xx-firmware-into-lib-firmware.patch | 25 ++++++++ hciattach-rpi.spec | 64 +++++++++++++++++++ 6 files changed, 179 insertions(+) create mode 100644 bluez5-5.41-Increase-firmware-load-timeout-to-30s.patch create mode 100644 bluez5-5.41-bcm43xx-Add-bcm43xx-3wire-variant.patch create mode 100644 bluez5-5.41-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch create mode 100644 bluez5-5.41-mode-43xx-firmware-into-lib-firmware.patch create mode 100644 hciattach-rpi.spec diff --git a/README.md b/README.md index 716f491..1ecf9c3 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # hciattach-rpi +Userspace tool hciattach-rpi for RaspberryPi 3 bluetooth support. + diff --git a/bluez5-5.41-Increase-firmware-load-timeout-to-30s.patch b/bluez5-5.41-Increase-firmware-load-timeout-to-30s.patch new file mode 100644 index 0000000..f9f09eb --- /dev/null +++ b/bluez5-5.41-Increase-firmware-load-timeout-to-30s.patch @@ -0,0 +1,25 @@ +From d41dc2046dd08d8c95197f677e224506f5b39bdd Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Wed, 20 Jan 2016 16:00:37 +0000 +Subject: [PATCH 3/4] Increase firmware load timeout to 30s + +--- + tools/hciattach.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/hciattach.c b/tools/hciattach.c +index 5861d33..4141796 100644 +--- a/tools/hciattach.c ++++ b/tools/hciattach.c +@@ -1293,7 +1293,7 @@ int main(int argc, char *argv[]) + { + struct uart_t *u = NULL; + int detach, printpid, raw, opt, i, n, ld, err; +- int to = 10; ++ int to = 30; + int init_speed = 0; + int send_break = 0; + pid_t pid; +-- +1.9.1 + diff --git a/bluez5-5.41-bcm43xx-Add-bcm43xx-3wire-variant.patch b/bluez5-5.41-bcm43xx-Add-bcm43xx-3wire-variant.patch new file mode 100644 index 0000000..3bc02c4 --- /dev/null +++ b/bluez5-5.41-bcm43xx-Add-bcm43xx-3wire-variant.patch @@ -0,0 +1,26 @@ +From b4f2b77472aeb967d3a7595e8a965785c7a37c87 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Tue, 16 Feb 2016 16:40:46 +0000 +Subject: [PATCH 1/4] bcm43xx: Add bcm43xx-3wire variant + +--- + tools/hciattach.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/tools/hciattach.c b/tools/hciattach.c +index 59a76a7..5861d33 100644 +--- a/tools/hciattach.c ++++ b/tools/hciattach.c +@@ -1144,6 +1144,9 @@ struct uart_t uart[] = { + { "bcm43xx", 0x0000, 0x0000, HCI_UART_H4, 115200, 3000000, + FLOW_CTL, DISABLE_PM, NULL, bcm43xx, NULL }, + ++ { "bcm43xx-3wire", 0x0000, 0x0000, HCI_UART_3WIRE, 115200, 3000000, ++ 0, DISABLE_PM, NULL, bcm43xx, NULL }, ++ + { "ath3k", 0x0000, 0x0000, HCI_UART_ATH3K, 115200, 115200, + FLOW_CTL, DISABLE_PM, NULL, ath3k_ps, ath3k_pm }, + +-- +1.9.1 + diff --git a/bluez5-5.41-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch b/bluez5-5.41-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch new file mode 100644 index 0000000..5a0a434 --- /dev/null +++ b/bluez5-5.41-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch @@ -0,0 +1,37 @@ +From e145c9621f976063e5c573db1f2053d906f63427 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Tue, 16 Feb 2016 16:39:09 +0000 +Subject: [PATCH 2/4] bcm43xx: The UART speed must be reset after the firmware download + +--- + tools/hciattach_bcm43xx.c | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/tools/hciattach_bcm43xx.c b/tools/hciattach_bcm43xx.c +index 81f38cb..0b792e0 100644 +--- a/tools/hciattach_bcm43xx.c ++++ b/tools/hciattach_bcm43xx.c +@@ -366,11 +366,8 @@ int bcm43xx_init(int fd, int def_speed, int speed, struct termios *ti, + return -1; + + if (bcm43xx_locate_patch(FIRMWARE_DIR, chip_name, fw_path)) { +- fprintf(stderr, "Patch not found, continue anyway\n"); ++ fprintf(stderr, "Patch not found for %s, continue anyway\n", chip_name); + } else { +- if (bcm43xx_set_speed(fd, ti, speed)) +- return -1; +- + if (bcm43xx_load_firmware(fd, fw_path)) + return -1; + +@@ -380,6 +377,7 @@ int bcm43xx_init(int fd, int def_speed, int speed, struct termios *ti, + return -1; + } + ++ sleep(1); + if (bcm43xx_reset(fd)) + return -1; + } +-- +1.9.1 + diff --git a/bluez5-5.41-mode-43xx-firmware-into-lib-firmware.patch b/bluez5-5.41-mode-43xx-firmware-into-lib-firmware.patch new file mode 100644 index 0000000..dadce35 --- /dev/null +++ b/bluez5-5.41-mode-43xx-firmware-into-lib-firmware.patch @@ -0,0 +1,25 @@ +From 76681284b0ea49852041fdb97a35175089a08781 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Tue, 23 Feb 2016 17:52:29 +0000 +Subject: [PATCH 4/4] Move the 43xx firmware into /lib/firmware + +--- + tools/hciattach_bcm43xx.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/hciattach_bcm43xx.c b/tools/hciattach_bcm43xx.c +index 0b792e0..207f668 100644 +--- a/tools/hciattach_bcm43xx.c ++++ b/tools/hciattach_bcm43xx.c +@@ -43,7 +43,7 @@ + #include "hciattach.h" + + #ifndef FIRMWARE_DIR +-#define FIRMWARE_DIR "/etc/firmware" ++#define FIRMWARE_DIR "/lib/firmware" + #endif + + #define FW_EXT ".hcd" +-- +1.9.1 + diff --git a/hciattach-rpi.spec b/hciattach-rpi.spec new file mode 100644 index 0000000..cf38ad9 --- /dev/null +++ b/hciattach-rpi.spec @@ -0,0 +1,64 @@ +Name: hciattach-rpi +Version: 5.41 +Release: 1mamba +Summary: Userspace tools for the Bluetooth wireless library for Linux +Group: Applications/Communication +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: http://www.bluez.org +Source: http://www.kernel.org/pub/linux/bluetooth/bluez-%{version}.tar.gz +Patch0: bluez5-5.41-mode-43xx-firmware-into-lib-firmware.patch +Patch1: bluez5-5.41-bcm43xx-Add-bcm43xx-3wire-variant.patch +Patch2: bluez5-5.41-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch +Patch3: bluez5-5.41-Increase-firmware-load-timeout-to-30s.patch +License: GPL +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: libdbus-devel +BuildRequires: libglib-devel +BuildRequires: libical-devel +BuildRequires: libreadline-devel +BuildRequires: libtermcap-devel +BuildRequires: libudev-devel +## AUTOBUILDREQ-END +BuildRequires: flex +BuildRequires: bison +BuildRequires: libcap-ng-devel +BuildRequires: systemd-devel +ExclusiveArch: arm aarch64 +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +Userspace tool hciattach-rpi for RaspberryPi 3 bluetooth support. + +%prep +%setup -q -n bluez-%{version} +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 + +%build +%configure \ + --libexecdir=/%{_lib} \ + --enable-tools + +%make tools/hciattach + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +install -D -m0755 tools/hciattach %{buildroot}%{_sbindir}/hciattach-rpi + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%files +%defattr(-,root,root) +%{_sbindir}/hciattach-rpi +%doc AUTHORS COPYING + +%changelog +* Tue Jul 19 2016 Silvan Calarco 5.41-1mamba +- package created from bluez5-5.41-2mamba