2020-02-17 09:07:21

by Sathish Narasimman

[permalink] [raw]
Subject: [PATCH] Bluetooth: FIX - Disable EXT Adv if enabled

Disabling LEGACY_ADV when EXT_ADV is enabled causes
'command disallowed' during DIRECTED_ADV. This Patch fixes this
issue.

Signed-off-by: Sathish Narsimman <[email protected]>
---
net/bluetooth/hci_conn.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/net/bluetooth/hci_conn.c b/net/bluetooth/hci_conn.c
index 65fa44cbe514..a582c676e584 100644
--- a/net/bluetooth/hci_conn.c
+++ b/net/bluetooth/hci_conn.c
@@ -1029,11 +1029,8 @@ struct hci_conn *hci_connect_le(struct hci_dev *hdev, bdaddr_t *dst,
* anyway have to disable it in order to start directed
* advertising.
*/
- if (hci_dev_test_flag(hdev, HCI_LE_ADV)) {
- u8 enable = 0x00;
- hci_req_add(&req, HCI_OP_LE_SET_ADV_ENABLE, sizeof(enable),
- &enable);
- }
+ if (hci_dev_test_flag(hdev, HCI_LE_ADV))
+ __hci_req_disable_advertising(&req);

/* If requested to connect as slave use directed advertising */
if (conn->role == HCI_ROLE_SLAVE) {
--
2.17.1


2020-02-18 08:27:18

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [PATCH] Bluetooth: FIX - Disable EXT Adv if enabled

Hi Sathish,

> Disabling LEGACY_ADV when EXT_ADV is enabled causes
> 'command disallowed' during DIRECTED_ADV. This Patch fixes this
> issue.
>
> Signed-off-by: Sathish Narsimman <[email protected]>
> ---
> net/bluetooth/hci_conn.c | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)

patch has been applied to bluetooth-next tree.

Regards

Marcel