aboutsummaryrefslogtreecommitdiffstats
path: root/net/bluetooth/hci_core.c
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2014-12-25 22:42:34 -0500
committerJohan Hedberg <johan.hedberg@intel.com>2014-12-26 13:16:14 -0500
commit0f3adeae6011fe82ccdee858dad6b7b2bd790add (patch)
treeb61cd33784d8ad0c91339a8985910bd5782518b0 /net/bluetooth/hci_core.c
parentd57dbe779e0e14a8cdc7327b5cfcd02122728d0f (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.c12
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)) {