diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2014-12-25 22:42:34 -0500 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2014-12-26 13:16:14 -0500 |
commit | 0f3adeae6011fe82ccdee858dad6b7b2bd790add (patch) | |
tree | b61cd33784d8ad0c91339a8985910bd5782518b0 /net/bluetooth/hci_core.c | |
parent | d57dbe779e0e14a8cdc7327b5cfcd02122728d0f (diff) |
Bluetooth: Remove BlueFritz! specific check from initialization
The AVM BlueFritz! USB controllers had a special handling in the
Bluetooth core when it comes to reading the supported commands.
Both drivers now set the HCI_QUIRK_BROKEN_LOCAL_COMMANDS and with
that it is no longer needed to look for vendor specific details.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'net/bluetooth/hci_core.c')
-rw-r--r-- | net/bluetooth/hci_core.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c index 47f0311d1006..5ef5221c1813 100644 --- a/net/bluetooth/hci_core.c +++ b/net/bluetooth/hci_core.c | |||
@@ -623,10 +623,16 @@ static void hci_init2_req(struct hci_request *req, unsigned long opt) | |||
623 | if (lmp_le_capable(hdev)) | 623 | if (lmp_le_capable(hdev)) |
624 | le_setup(req); | 624 | le_setup(req); |
625 | 625 | ||
626 | /* AVM Berlin (31), aka "BlueFRITZ!", doesn't support the read | 626 | /* All Bluetooth 1.2 and later controllers should support the |
627 | * local supported commands HCI command. | 627 | * HCI command for reading the local supported commands. |
628 | * | ||
629 | * Unfortunately some controllers indicate Bluetooth 1.2 support, | ||
630 | * but do not have support for this command. If that is the case, | ||
631 | * the driver can quirk the behavior and skip reading the local | ||
632 | * supported commands. | ||
628 | */ | 633 | */ |
629 | if (hdev->manufacturer != 31 && hdev->hci_ver > BLUETOOTH_VER_1_1) | 634 | if (hdev->hci_ver > BLUETOOTH_VER_1_1 && |
635 | !test_bit(HCI_QUIRK_BROKEN_LOCAL_COMMANDS, &hdev->quirks)) | ||
630 | hci_req_add(req, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); | 636 | hci_req_add(req, HCI_OP_READ_LOCAL_COMMANDS, 0, NULL); |
631 | 637 | ||
632 | if (lmp_ssp_capable(hdev)) { | 638 | if (lmp_ssp_capable(hdev)) { |