|
@@ -2151,9 +2151,10 @@ static void hci_add_acl_hdr(struct sk_buff *skb, __u16 handle, __u16 flags)
|
|
|
hdr->dlen = cpu_to_le16(len);
|
|
|
}
|
|
|
|
|
|
-static void hci_queue_acl(struct hci_conn *conn, struct sk_buff_head *queue,
|
|
|
+static void hci_queue_acl(struct hci_chan *chan, struct sk_buff_head *queue,
|
|
|
struct sk_buff *skb, __u16 flags)
|
|
|
{
|
|
|
+ struct hci_conn *conn = chan->conn;
|
|
|
struct hci_dev *hdev = conn->hdev;
|
|
|
struct sk_buff *list;
|
|
|
|
|
@@ -2200,14 +2201,13 @@ static void hci_queue_acl(struct hci_conn *conn, struct sk_buff_head *queue,
|
|
|
|
|
|
void hci_send_acl(struct hci_chan *chan, struct sk_buff *skb, __u16 flags)
|
|
|
{
|
|
|
- struct hci_conn *conn = chan->conn;
|
|
|
- struct hci_dev *hdev = conn->hdev;
|
|
|
+ struct hci_dev *hdev = chan->conn->hdev;
|
|
|
|
|
|
BT_DBG("%s chan %p flags 0x%4.4x", hdev->name, chan, flags);
|
|
|
|
|
|
skb->dev = (void *) hdev;
|
|
|
|
|
|
- hci_queue_acl(conn, &chan->data_q, skb, flags);
|
|
|
+ hci_queue_acl(chan, &chan->data_q, skb, flags);
|
|
|
|
|
|
queue_work(hdev->workqueue, &hdev->tx_work);
|
|
|
}
|