Skip to content

Commit 0ebcddd

Browse files
Matthias Kaehlckeholtmann
authored andcommitted
Bluetooth: hci_qca: Add delay after power-off pulse
During initialization the power-on pulse is currently sent inmediately after the prior power-off pulse. With this initialization often fails at boot time: [ 15.205224] Bluetooth: hci0: setting up wcn3990 [ 17.341062] Bluetooth: hci0: command 0xfc00 tx timeout [ 22.101453] ERROR: Bluetooth initialization failed [ 25.337740] Bluetooth: hci0: Reading QCA version information failed (-110) After a power-off pulse wait 10ms to give the controller time to power off. Remove the previous short settling delay, it isn't needed anymore. Signed-off-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Balakrishna Godavarthi <bgodavar@codeaurora.org> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
1 parent ad571d7 commit 0ebcddd

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

drivers/bluetooth/hci_qca.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1031,13 +1031,13 @@ static int qca_send_power_pulse(struct hci_uart *hu, bool on)
10311031
}
10321032

10331033
serdev_device_wait_until_sent(hu->serdev, timeout);
1034-
1035-
/* Wait for 100 uS for SoC to settle down */
1036-
usleep_range(100, 200);
10371034
hci_uart_set_flow_control(hu, false);
10381035

1036+
/* Give to controller time to boot/shutdown */
10391037
if (on)
10401038
msleep(100);
1039+
else
1040+
msleep(10);
10411041

10421042
return 0;
10431043
}

0 commit comments

Comments
 (0)