Add power reset via enable-gpios in h5_btrtl_open function. Signed-off-by: Vyacheslav Bocharov <adeep@xxxxxxxxx> --- drivers/bluetooth/hci_h5.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/bluetooth/hci_h5.c b/drivers/bluetooth/hci_h5.c index 0c0dedece59c..ab7c929cc25d 100644 --- a/drivers/bluetooth/hci_h5.c +++ b/drivers/bluetooth/hci_h5.c @@ -968,6 +968,11 @@ static void h5_btrtl_open(struct h5 *h5) SUSPEND_TIMEOUT_MS); pm_runtime_enable(&h5->hu->serdev->dev); + /* The controller needs reset to startup */ + gpiod_set_value_cansleep(h5->enable_gpio, 0); + gpiod_set_value_cansleep(h5->device_wake_gpio, 0); + msleep(100); + /* The controller needs up to 500ms to wakeup */ gpiod_set_value_cansleep(h5->enable_gpio, 1); gpiod_set_value_cansleep(h5->device_wake_gpio, 1); -- 2.30.2