diff mbox series

[1/2] Bluetooth: hci_bcm4377: Increase boot timeout

Message ID 20240512-btfix-msgid-v1-1-ab1bd938a7f4@svenpeter.dev (mailing list archive)
State New
Headers show
Series Bluetooth: hci_bcm4377 fixes | expand

Commit Message

Sven Peter via B4 Relay May 12, 2024, 12:12 p.m. UTC
From: Hector Martin <marcan@marcan.st>

BCM4388 takes over 2 seconds to boot, so increase the timeout (and also
fix the units while we're here).

Signed-off-by: Hector Martin <marcan@marcan.st>
Reviewed-by: Sven Peter <sven@svenpeter.dev>
Signed-off-by: Sven Peter <sven@svenpeter.dev>
---
 drivers/bluetooth/hci_bcm4377.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Comments

Stefan Wahren May 12, 2024, 12:54 p.m. UTC | #1
Hi Sven,

Am 12.05.24 um 14:12 schrieb Sven Peter via B4 Relay:
> From: Hector Martin <marcan@marcan.st>
>
> BCM4388 takes over 2 seconds to boot, so increase the timeout (and also
> fix the units while we're here).
>
> Signed-off-by: Hector Martin <marcan@marcan.st>
> Reviewed-by: Sven Peter <sven@svenpeter.dev>
> Signed-off-by: Sven Peter <sven@svenpeter.dev>
> ---
>   drivers/bluetooth/hci_bcm4377.c | 5 +++--
>   1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/bluetooth/hci_bcm4377.c b/drivers/bluetooth/hci_bcm4377.c
> index 9a7243d5db71..5b818a0e33d6 100644
> --- a/drivers/bluetooth/hci_bcm4377.c
> +++ b/drivers/bluetooth/hci_bcm4377.c
> @@ -32,7 +32,8 @@ enum bcm4377_chip {
>   #define BCM4378_DEVICE_ID 0x5f69
>   #define BCM4387_DEVICE_ID 0x5f71
>
> -#define BCM4377_TIMEOUT 1000
> +#define BCM4377_TIMEOUT msecs_to_jiffies(1000)
this change affect all timeouts not just the boot timeout, so i would
prefer to split this.
> +#define BCM4377_BOOT_TIMEOUT msecs_to_jiffies(5000)
>
>   /*
>    * These devices only support DMA transactions inside a 32bit window
> @@ -1857,7 +1858,7 @@ static int bcm4377_boot(struct bcm4377_data *bcm4377)
>   	dev_dbg(&bcm4377->pdev->dev, "waiting for firmware to boot\n");
>
>   	ret = wait_for_completion_interruptible_timeout(&bcm4377->event,
> -							BCM4377_TIMEOUT);
> +							BCM4377_BOOT_TIMEOUT);
>   	if (ret == 0) {
>   		ret = -ETIMEDOUT;
>   		goto out_dma_free;
>
diff mbox series

Patch

diff --git a/drivers/bluetooth/hci_bcm4377.c b/drivers/bluetooth/hci_bcm4377.c
index 9a7243d5db71..5b818a0e33d6 100644
--- a/drivers/bluetooth/hci_bcm4377.c
+++ b/drivers/bluetooth/hci_bcm4377.c
@@ -32,7 +32,8 @@  enum bcm4377_chip {
 #define BCM4378_DEVICE_ID 0x5f69
 #define BCM4387_DEVICE_ID 0x5f71
 
-#define BCM4377_TIMEOUT 1000
+#define BCM4377_TIMEOUT msecs_to_jiffies(1000)
+#define BCM4377_BOOT_TIMEOUT msecs_to_jiffies(5000)
 
 /*
  * These devices only support DMA transactions inside a 32bit window
@@ -1857,7 +1858,7 @@  static int bcm4377_boot(struct bcm4377_data *bcm4377)
 	dev_dbg(&bcm4377->pdev->dev, "waiting for firmware to boot\n");
 
 	ret = wait_for_completion_interruptible_timeout(&bcm4377->event,
-							BCM4377_TIMEOUT);
+							BCM4377_BOOT_TIMEOUT);
 	if (ret == 0) {
 		ret = -ETIMEDOUT;
 		goto out_dma_free;