diff options
Diffstat (limited to 'drivers/bluetooth/hci_bcsp.c')
-rw-r--r-- | drivers/bluetooth/hci_bcsp.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/drivers/bluetooth/hci_bcsp.c b/drivers/bluetooth/hci_bcsp.c index 858fddb046de..0ee324e1265d 100644 --- a/drivers/bluetooth/hci_bcsp.c +++ b/drivers/bluetooth/hci_bcsp.c | |||
@@ -149,7 +149,7 @@ static int bcsp_enqueue(struct hci_uart *hu, struct sk_buff *skb) | |||
149 | return 0; | 149 | return 0; |
150 | } | 150 | } |
151 | 151 | ||
152 | switch (skb->pkt_type) { | 152 | switch (bt_cb(skb)->pkt_type) { |
153 | case HCI_ACLDATA_PKT: | 153 | case HCI_ACLDATA_PKT: |
154 | case HCI_COMMAND_PKT: | 154 | case HCI_COMMAND_PKT: |
155 | skb_queue_tail(&bcsp->rel, skb); | 155 | skb_queue_tail(&bcsp->rel, skb); |
@@ -227,7 +227,7 @@ static struct sk_buff *bcsp_prepare_pkt(struct bcsp_struct *bcsp, u8 *data, | |||
227 | if (!nskb) | 227 | if (!nskb) |
228 | return NULL; | 228 | return NULL; |
229 | 229 | ||
230 | nskb->pkt_type = pkt_type; | 230 | bt_cb(nskb)->pkt_type = pkt_type; |
231 | 231 | ||
232 | bcsp_slip_msgdelim(nskb); | 232 | bcsp_slip_msgdelim(nskb); |
233 | 233 | ||
@@ -286,7 +286,7 @@ static struct sk_buff *bcsp_dequeue(struct hci_uart *hu) | |||
286 | since they have priority */ | 286 | since they have priority */ |
287 | 287 | ||
288 | if ((skb = skb_dequeue(&bcsp->unrel)) != NULL) { | 288 | if ((skb = skb_dequeue(&bcsp->unrel)) != NULL) { |
289 | struct sk_buff *nskb = bcsp_prepare_pkt(bcsp, skb->data, skb->len, skb->pkt_type); | 289 | struct sk_buff *nskb = bcsp_prepare_pkt(bcsp, skb->data, skb->len, bt_cb(skb)->pkt_type); |
290 | if (nskb) { | 290 | if (nskb) { |
291 | kfree_skb(skb); | 291 | kfree_skb(skb); |
292 | return nskb; | 292 | return nskb; |
@@ -303,7 +303,7 @@ static struct sk_buff *bcsp_dequeue(struct hci_uart *hu) | |||
303 | spin_lock_irqsave(&bcsp->unack.lock, flags); | 303 | spin_lock_irqsave(&bcsp->unack.lock, flags); |
304 | 304 | ||
305 | if (bcsp->unack.qlen < BCSP_TXWINSIZE && (skb = skb_dequeue(&bcsp->rel)) != NULL) { | 305 | if (bcsp->unack.qlen < BCSP_TXWINSIZE && (skb = skb_dequeue(&bcsp->rel)) != NULL) { |
306 | struct sk_buff *nskb = bcsp_prepare_pkt(bcsp, skb->data, skb->len, skb->pkt_type); | 306 | struct sk_buff *nskb = bcsp_prepare_pkt(bcsp, skb->data, skb->len, bt_cb(skb)->pkt_type); |
307 | if (nskb) { | 307 | if (nskb) { |
308 | __skb_queue_tail(&bcsp->unack, skb); | 308 | __skb_queue_tail(&bcsp->unack, skb); |
309 | mod_timer(&bcsp->tbcsp, jiffies + HZ / 4); | 309 | mod_timer(&bcsp->tbcsp, jiffies + HZ / 4); |
@@ -401,7 +401,7 @@ static void bcsp_handle_le_pkt(struct hci_uart *hu) | |||
401 | if (!nskb) | 401 | if (!nskb) |
402 | return; | 402 | return; |
403 | memcpy(skb_put(nskb, 4), conf_rsp_pkt, 4); | 403 | memcpy(skb_put(nskb, 4), conf_rsp_pkt, 4); |
404 | nskb->pkt_type = BCSP_LE_PKT; | 404 | bt_cb(nskb)->pkt_type = BCSP_LE_PKT; |
405 | 405 | ||
406 | skb_queue_head(&bcsp->unrel, nskb); | 406 | skb_queue_head(&bcsp->unrel, nskb); |
407 | hci_uart_tx_wakeup(hu); | 407 | hci_uart_tx_wakeup(hu); |
@@ -483,14 +483,14 @@ static inline void bcsp_complete_rx_pkt(struct hci_uart *hu) | |||
483 | bcsp_pkt_cull(bcsp); | 483 | bcsp_pkt_cull(bcsp); |
484 | if ((bcsp->rx_skb->data[1] & 0x0f) == 6 && | 484 | if ((bcsp->rx_skb->data[1] & 0x0f) == 6 && |
485 | bcsp->rx_skb->data[0] & 0x80) { | 485 | bcsp->rx_skb->data[0] & 0x80) { |
486 | bcsp->rx_skb->pkt_type = HCI_ACLDATA_PKT; | 486 | bt_cb(bcsp->rx_skb)->pkt_type = HCI_ACLDATA_PKT; |
487 | pass_up = 1; | 487 | pass_up = 1; |
488 | } else if ((bcsp->rx_skb->data[1] & 0x0f) == 5 && | 488 | } else if ((bcsp->rx_skb->data[1] & 0x0f) == 5 && |
489 | bcsp->rx_skb->data[0] & 0x80) { | 489 | bcsp->rx_skb->data[0] & 0x80) { |
490 | bcsp->rx_skb->pkt_type = HCI_EVENT_PKT; | 490 | bt_cb(bcsp->rx_skb)->pkt_type = HCI_EVENT_PKT; |
491 | pass_up = 1; | 491 | pass_up = 1; |
492 | } else if ((bcsp->rx_skb->data[1] & 0x0f) == 7) { | 492 | } else if ((bcsp->rx_skb->data[1] & 0x0f) == 7) { |
493 | bcsp->rx_skb->pkt_type = HCI_SCODATA_PKT; | 493 | bt_cb(bcsp->rx_skb)->pkt_type = HCI_SCODATA_PKT; |
494 | pass_up = 1; | 494 | pass_up = 1; |
495 | } else if ((bcsp->rx_skb->data[1] & 0x0f) == 1 && | 495 | } else if ((bcsp->rx_skb->data[1] & 0x0f) == 1 && |
496 | !(bcsp->rx_skb->data[0] & 0x80)) { | 496 | !(bcsp->rx_skb->data[0] & 0x80)) { |
@@ -512,7 +512,7 @@ static inline void bcsp_complete_rx_pkt(struct hci_uart *hu) | |||
512 | hdr.evt = 0xff; | 512 | hdr.evt = 0xff; |
513 | hdr.plen = bcsp->rx_skb->len; | 513 | hdr.plen = bcsp->rx_skb->len; |
514 | memcpy(skb_push(bcsp->rx_skb, HCI_EVENT_HDR_SIZE), &hdr, HCI_EVENT_HDR_SIZE); | 514 | memcpy(skb_push(bcsp->rx_skb, HCI_EVENT_HDR_SIZE), &hdr, HCI_EVENT_HDR_SIZE); |
515 | bcsp->rx_skb->pkt_type = HCI_EVENT_PKT; | 515 | bt_cb(bcsp->rx_skb)->pkt_type = HCI_EVENT_PKT; |
516 | 516 | ||
517 | hci_recv_frame(bcsp->rx_skb); | 517 | hci_recv_frame(bcsp->rx_skb); |
518 | } else { | 518 | } else { |