Bluetooth: Fix BR/EDR Page Scan update with Add Device
The recent changes to remove dependency on HCI in Add Device missed out relevant changes for BR/EDR. This patch removes the left-overs and ensures the right HCI command gets queued for BR/EDR. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
2154d3f4fb
commit
2f27498107
|
@ -5894,8 +5894,6 @@ static int add_device(struct sock *sk, struct hci_dev *hdev,
|
||||||
void *data, u16 len)
|
void *data, u16 len)
|
||||||
{
|
{
|
||||||
struct mgmt_cp_add_device *cp = data;
|
struct mgmt_cp_add_device *cp = data;
|
||||||
struct mgmt_pending_cmd *cmd;
|
|
||||||
struct hci_request req;
|
|
||||||
u8 auto_conn, addr_type;
|
u8 auto_conn, addr_type;
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
|
@ -5912,18 +5910,8 @@ static int add_device(struct sock *sk, struct hci_dev *hdev,
|
||||||
MGMT_STATUS_INVALID_PARAMS,
|
MGMT_STATUS_INVALID_PARAMS,
|
||||||
&cp->addr, sizeof(cp->addr));
|
&cp->addr, sizeof(cp->addr));
|
||||||
|
|
||||||
hci_req_init(&req, hdev);
|
|
||||||
|
|
||||||
hci_dev_lock(hdev);
|
hci_dev_lock(hdev);
|
||||||
|
|
||||||
cmd = mgmt_pending_add(sk, MGMT_OP_ADD_DEVICE, hdev, data, len);
|
|
||||||
if (!cmd) {
|
|
||||||
err = -ENOMEM;
|
|
||||||
goto unlock;
|
|
||||||
}
|
|
||||||
|
|
||||||
cmd->cmd_complete = addr_cmd_complete;
|
|
||||||
|
|
||||||
if (cp->addr.type == BDADDR_BREDR) {
|
if (cp->addr.type == BDADDR_BREDR) {
|
||||||
/* Only incoming connections action is supported for now */
|
/* Only incoming connections action is supported for now */
|
||||||
if (cp->action != 0x01) {
|
if (cp->action != 0x01) {
|
||||||
|
@ -5939,7 +5927,7 @@ static int add_device(struct sock *sk, struct hci_dev *hdev,
|
||||||
if (err)
|
if (err)
|
||||||
goto unlock;
|
goto unlock;
|
||||||
|
|
||||||
__hci_update_page_scan(&req);
|
hci_update_page_scan(hdev);
|
||||||
|
|
||||||
goto added;
|
goto added;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue