|
@@ -188,12 +188,6 @@ static void bredr_init(struct hci_dev *hdev)
|
|
|
|
|
|
/* Mandatory initialization */
|
|
/* Mandatory initialization */
|
|
|
|
|
|
- /* Reset */
|
|
|
|
- if (!test_bit(HCI_QUIRK_RESET_ON_CLOSE, &hdev->quirks)) {
|
|
|
|
- set_bit(HCI_RESET, &hdev->flags);
|
|
|
|
- hci_send_cmd(hdev, HCI_OP_RESET, 0, NULL);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
/* Read Local Supported Features */
|
|
/* Read Local Supported Features */
|
|
hci_send_cmd(hdev, HCI_OP_READ_LOCAL_FEATURES, 0, NULL);
|
|
hci_send_cmd(hdev, HCI_OP_READ_LOCAL_FEATURES, 0, NULL);
|
|
|
|
|
|
@@ -234,9 +228,6 @@ static void amp_init(struct hci_dev *hdev)
|
|
{
|
|
{
|
|
hdev->flow_ctl_mode = HCI_FLOW_CTL_MODE_BLOCK_BASED;
|
|
hdev->flow_ctl_mode = HCI_FLOW_CTL_MODE_BLOCK_BASED;
|
|
|
|
|
|
- /* Reset */
|
|
|
|
- hci_send_cmd(hdev, HCI_OP_RESET, 0, NULL);
|
|
|
|
-
|
|
|
|
/* Read Local Version */
|
|
/* Read Local Version */
|
|
hci_send_cmd(hdev, HCI_OP_READ_LOCAL_VERSION, 0, NULL);
|
|
hci_send_cmd(hdev, HCI_OP_READ_LOCAL_VERSION, 0, NULL);
|
|
|
|
|
|
@@ -262,6 +253,10 @@ static void hci_init_req(struct hci_dev *hdev, unsigned long opt)
|
|
}
|
|
}
|
|
skb_queue_purge(&hdev->driver_init);
|
|
skb_queue_purge(&hdev->driver_init);
|
|
|
|
|
|
|
|
+ /* Reset */
|
|
|
|
+ if (!test_bit(HCI_QUIRK_RESET_ON_CLOSE, &hdev->quirks))
|
|
|
|
+ hci_reset_req(hdev, 0);
|
|
|
|
+
|
|
switch (hdev->dev_type) {
|
|
switch (hdev->dev_type) {
|
|
case HCI_BREDR:
|
|
case HCI_BREDR:
|
|
bredr_init(hdev);
|
|
bredr_init(hdev);
|