/* SID has not been set listen for HCI_EV_LE_EXT_ADV_REPORT to update
         * it.
         */
-       if (conn->sid == HCI_SID_INVALID)
-               __hci_cmd_sync_status_sk(hdev, HCI_OP_NOP, 0, NULL,
-                                        HCI_EV_LE_EXT_ADV_REPORT,
-                                        conn->conn_timeout, NULL);
+       if (conn->sid == HCI_SID_INVALID) {
+               err = __hci_cmd_sync_status_sk(hdev, HCI_OP_NOP, 0, NULL,
+                                              HCI_EV_LE_EXT_ADV_REPORT,
+                                              conn->conn_timeout, NULL);
+               if (err == -ETIMEDOUT)
+                       goto done;
+       }
 
        memset(&cp, 0, sizeof(cp));
        cp.options = qos->bcast.options;
                __hci_cmd_sync_status(hdev, HCI_OP_LE_PA_CREATE_SYNC_CANCEL,
                                      0, NULL, HCI_CMD_TIMEOUT);
 
+done:
        hci_dev_clear_flag(hdev, HCI_PA_SYNC);
 
        /* Update passive scan since HCI_PA_SYNC flag has been cleared */