Hi Ajye, On Fri, Sep 30, 2022 at 7:07 AM Ajye Huang <ajye_huang@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote: > > When "hciconfig hci0 up" command is used to bluetooth ON, but > the bluetooth UI icon in settings still not be turned ON. > > Refer to commit 2ff13894cfb8 ("Bluetooth: Perform HCI update for power on synchronously") > Add back mgmt_power_on(hdev, ret) into function hci_dev_do_open(struct hci_dev *hdev) > in hci_core.c > > Signed-off-by: Ajye Huang <ajye_huang@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> > --- > net/bluetooth/hci_core.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c > index 0540555b3704..5061845c8fc2 100644 > --- a/net/bluetooth/hci_core.c > +++ b/net/bluetooth/hci_core.c > @@ -481,6 +481,7 @@ static int hci_dev_do_open(struct hci_dev *hdev) > hci_req_sync_lock(hdev); > > ret = hci_dev_open_sync(hdev); > + mgmt_power_on(hdev, ret); > > hci_req_sync_unlock(hdev); > return ret; > -- > 2.25.1 I believe the culprit is actually the following change: git show cf75ad8b41d2a: @@ -1489,8 +1488,7 @@ static int hci_dev_do_open(struct hci_dev *hdev) !hci_dev_test_flag(hdev, HCI_USER_CHANNEL) && hci_dev_test_flag(hdev, HCI_MGMT) && hdev->dev_type == HCI_PRIMARY) { - ret = __hci_req_hci_power_on(hdev); - mgmt_power_on(hdev, ret); + ret = hci_powered_update_sync(hdev); So we should probably restore mgmt_power_on above. -- Luiz Augusto von Dentz