Skip to contentSkip to conversation

bluez5_utils: define FIRMWARE_DIR for hciattach_bcm43xx

PATCH New Jörg Krause 3 participants 4 messages Aug 31, 2017 – Oct 22, 2017

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 bluez5_utils: define FIRMWARE_DIR for hciattach_bcm43xx

The tool hciattach_bcm43xx defines the default firmware path in /etc/firmware, but the Broadcom firmware blobs are usually stored in /lib/firmware.

---
 package/bluez5_utils/bluez5_utils.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/bluez5_utils/bluez5_utils.mk +4 -0
index 13658cd050..af3dfbe38d 100644
@@ -80,6 +80,10 @@ define BLUEZ5_UTILS_INSTALL_GATTTOOL
 	$(INSTALL) -D -m 0755 $(@D)/attrib/gatttool $(TARGET_DIR)/usr/bin/gatttool
 endef
 BLUEZ5_UTILS_POST_INSTALL_TARGET_HOOKS += BLUEZ5_UTILS_INSTALL_GATTTOOL
+# hciattach_bcm43xx defines default firmware path in `/etc/firmware`, but
+# Broadcom firmware blobs are usually located in `/lib/firmware`.
+BLUEZ5_UTILS_CONF_ENV += \
+	CPPFLAGS='$(TARGET_CPPFLAGS) -DFIRMWARE_DIR=\"/lib/firmware\"'
 BLUEZ5_UTILS_CONF_OPTS += --enable-deprecated
 else
 BLUEZ5_UTILS_CONF_OPTS += --disable-deprecated
Signature · 1 line
2.14.1
#1 lore raw

PATCH 2/2 bluez5_utils: add upstream patch to fix timeout issue with fw download

Add upstream patch [1] for the hciattach tool to fix timeout issue when downloading firmware to Broadcom bluetooth chips.

[1] https://git.kernel.org/pub/scm/bluetooth/bluez.git/commit/?id=76255f732d68aef2b90d36d9c7be51a9e1739ce7

---
 ...cm43xx-fix-the-delay-timer-for-firmware-d.patch | 38 ++++++++++++++++++++++
 1 file changed, 38 insertions(+)
 create mode 100644 package/bluez5_utils/0002-hciattach-bcm43xx-fix-the-delay-timer-for-firmware-d.patch
package/bluez5_utils/0002-hciattach-bcm43xx-fix-the-delay-timer-for-firmware-d.patch new file +38 -0
new file mode 100644
index 0000000000..2802510b98
@@ -0,0 +1,38 @@
+From 3b341fb421ef61db7782bf1314ec693828467de9 Mon Sep 17 00:00:00 2001
+From: Andy Duan <[email protected]>
+Date: Wed, 23 Nov 2016 17:12:12 +0800
+Subject: [PATCH] hciattach: bcm43xx: fix the delay timer for firmware download
+
+From the log in .bcm43xx_load_firmware():
+        /* Wait 50ms to let the firmware placed in download mode */
+        nanosleep(&tm_mode, NULL);
+
+But timespec tm_mode is real is 50us. Correct the delayed timer count.
+
+Backported from:
+https://git.kernel.org/pub/scm/bluetooth/bluez.git/commit/?id=76255f732d68aef2b90d36d9c7be51a9e1739ce7
+
+Signed-off-by: Fugang Duan <[email protected]>
+Signed-off-by: J?rg Krause <[email protected]>
+---
+ tools/hciattach_bcm43xx.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tools/hciattach_bcm43xx.c b/tools/hciattach_bcm43xx.c
+index 81f38cb..ac1b3c1 100644
+--- a/tools/hciattach_bcm43xx.c
++++ b/tools/hciattach_bcm43xx.c
+@@ -228,8 +228,8 @@ static int bcm43xx_set_speed(int fd, struct termios *ti, uint32_t speed)
+ static int bcm43xx_load_firmware(int fd, const char *fw)
+ {
+ 	unsigned char cmd[] = { HCI_COMMAND_PKT, 0x2e, 0xfc, 0x00 };
+-	struct timespec tm_mode = { 0, 50000 };
+-	struct timespec tm_ready = { 0, 2000000 };
++	struct timespec tm_mode = { 0, 50000000 };
++	struct timespec tm_ready = { 0, 200000000 };
+ 	unsigned char resp[CC_MIN_SIZE];
+ 	unsigned char tx_buf[1024];
+ 	int len, fd_fw, n;
+-- 
+1.9.1
+
Signature · 1 line
2.14.1
#2 lore raw

PATCH 2/2 bluez5_utils: add upstream patch to fix timeout issue with fw download

Am Thu, 31 Aug 2017 11:49:32 +0200 schrieb J?rg Krause:

Quoted 5 lines

Add upstream patch [1] for the hciattach tool to fix timeout issue when downloading firmware to Broadcom bluetooth chips.

[1]
https://git.kernel.org/pub/scm/bluetooth/bluez.git/commit/?

id=76255f732d68aef2b90d36d9c7be51a9e1739ce7

Hi,

this patch was is included in upstream release 5.47 and can be marked as superseded by this patch: http://patchwork.ozlabs.org/patch/814482/

Regards, Bernd

#3 lore raw

PATCH 2/2 bluez5_utils: add upstream patch to fix timeout issue with fw download

Hello,

Quoted 11 lines · Bernd Kuhls
Quoted 5 lines

Add upstream patch [1] for the hciattach tool to fix timeout issue when downloading firmware to Broadcom bluetooth chips.

[1]
https://git.kernel.org/pub/scm/bluetooth/bluez.git/commit/?

id=76255f732d68aef2b90d36d9c7be51a9e1739ce7

Hi,

this patch was is included in upstream release 5.47 and can be marked as superseded by this patch: http://patchwork.ozlabs.org/patch/814482/

Thanks, I've marked J?rg's patch as Superseded.

Best regards,

Thomas Petazzoni

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com