Bluetooth: Remove Simultaneous LE & BR/EDR flags from AD
authorJohan Hedberg <johan.hedberg@intel.com>
Thu, 30 Jan 2014 19:16:50 +0000 (11:16 -0800)
committerJohan Hedberg <johan.hedberg@intel.com>
Thu, 13 Feb 2014 07:51:40 +0000 (09:51 +0200)
Starting with the 4.1 Core Specification these flags are no longer used
and should always be cleared. From volume 3, part C, section 13.1.1:

"The 'Simultaneous LE and BR/EDR to Same Device Capable (Controller)'
and ‘Simultaneous LE and BR/EDR to Same Device Capable (Host)’ bits in
the Flags AD type shall be set to ‘0’."

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
net/bluetooth/mgmt.c

index bde8e675c5eace4cd034514a817c2fb0352f8d05..111b1296a2b8fef2a169ed817f96d323bf84ca1d 100644 (file)
@@ -637,14 +637,8 @@ static u8 create_adv_data(struct hci_dev *hdev, u8 *ptr)
 
        flags |= get_adv_discov_flags(hdev);
 
-       if (test_bit(HCI_BREDR_ENABLED, &hdev->dev_flags)) {
-               if (lmp_le_br_capable(hdev))
-                       flags |= LE_AD_SIM_LE_BREDR_CTRL;
-               if (lmp_host_le_br_capable(hdev))
-                       flags |= LE_AD_SIM_LE_BREDR_HOST;
-       } else {
+       if (!test_bit(HCI_BREDR_ENABLED, &hdev->dev_flags))
                flags |= LE_AD_NO_BREDR;
-       }
 
        if (flags) {
                BT_DBG("adv flags 0x%02x", flags);