diff options
Diffstat (limited to 'drivers/bluetooth/bpa10x.c')
-rw-r--r-- | drivers/bluetooth/bpa10x.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/bluetooth/bpa10x.c b/drivers/bluetooth/bpa10x.c index f696da6f417b..a1bf8f066c88 100644 --- a/drivers/bluetooth/bpa10x.c +++ b/drivers/bluetooth/bpa10x.c | |||
@@ -105,7 +105,7 @@ static void bpa10x_recv_bulk(struct bpa10x_data *data, unsigned char *buf, int c | |||
105 | if (skb) { | 105 | if (skb) { |
106 | memcpy(skb_put(skb, len), buf, len); | 106 | memcpy(skb_put(skb, len), buf, len); |
107 | skb->dev = (void *) data->hdev; | 107 | skb->dev = (void *) data->hdev; |
108 | skb->pkt_type = HCI_ACLDATA_PKT; | 108 | bt_cb(skb)->pkt_type = HCI_ACLDATA_PKT; |
109 | hci_recv_frame(skb); | 109 | hci_recv_frame(skb); |
110 | } | 110 | } |
111 | break; | 111 | break; |
@@ -117,7 +117,7 @@ static void bpa10x_recv_bulk(struct bpa10x_data *data, unsigned char *buf, int c | |||
117 | if (skb) { | 117 | if (skb) { |
118 | memcpy(skb_put(skb, len), buf, len); | 118 | memcpy(skb_put(skb, len), buf, len); |
119 | skb->dev = (void *) data->hdev; | 119 | skb->dev = (void *) data->hdev; |
120 | skb->pkt_type = HCI_SCODATA_PKT; | 120 | bt_cb(skb)->pkt_type = HCI_SCODATA_PKT; |
121 | hci_recv_frame(skb); | 121 | hci_recv_frame(skb); |
122 | } | 122 | } |
123 | break; | 123 | break; |
@@ -129,7 +129,7 @@ static void bpa10x_recv_bulk(struct bpa10x_data *data, unsigned char *buf, int c | |||
129 | if (skb) { | 129 | if (skb) { |
130 | memcpy(skb_put(skb, len), buf, len); | 130 | memcpy(skb_put(skb, len), buf, len); |
131 | skb->dev = (void *) data->hdev; | 131 | skb->dev = (void *) data->hdev; |
132 | skb->pkt_type = HCI_VENDOR_PKT; | 132 | bt_cb(skb)->pkt_type = HCI_VENDOR_PKT; |
133 | hci_recv_frame(skb); | 133 | hci_recv_frame(skb); |
134 | } | 134 | } |
135 | break; | 135 | break; |
@@ -190,7 +190,7 @@ static int bpa10x_recv_event(struct bpa10x_data *data, unsigned char *buf, int s | |||
190 | } | 190 | } |
191 | 191 | ||
192 | skb->dev = (void *) data->hdev; | 192 | skb->dev = (void *) data->hdev; |
193 | skb->pkt_type = pkt_type; | 193 | bt_cb(skb)->pkt_type = pkt_type; |
194 | 194 | ||
195 | memcpy(skb_put(skb, size), buf, size); | 195 | memcpy(skb_put(skb, size), buf, size); |
196 | 196 | ||
@@ -307,7 +307,8 @@ unlock: | |||
307 | read_unlock(&data->lock); | 307 | read_unlock(&data->lock); |
308 | } | 308 | } |
309 | 309 | ||
310 | static inline struct urb *bpa10x_alloc_urb(struct usb_device *udev, unsigned int pipe, size_t size, int flags, void *data) | 310 | static inline struct urb *bpa10x_alloc_urb(struct usb_device *udev, unsigned int pipe, |
311 | size_t size, unsigned int __nocast flags, void *data) | ||
311 | { | 312 | { |
312 | struct urb *urb; | 313 | struct urb *urb; |
313 | struct usb_ctrlrequest *cr; | 314 | struct usb_ctrlrequest *cr; |
@@ -487,7 +488,7 @@ static int bpa10x_send_frame(struct sk_buff *skb) | |||
487 | struct hci_dev *hdev = (struct hci_dev *) skb->dev; | 488 | struct hci_dev *hdev = (struct hci_dev *) skb->dev; |
488 | struct bpa10x_data *data; | 489 | struct bpa10x_data *data; |
489 | 490 | ||
490 | BT_DBG("hdev %p skb %p type %d len %d", hdev, skb, skb->pkt_type, skb->len); | 491 | BT_DBG("hdev %p skb %p type %d len %d", hdev, skb, bt_cb(skb)->pkt_type, skb->len); |
491 | 492 | ||
492 | if (!hdev) { | 493 | if (!hdev) { |
493 | BT_ERR("Frame for unknown HCI device"); | 494 | BT_ERR("Frame for unknown HCI device"); |
@@ -500,9 +501,9 @@ static int bpa10x_send_frame(struct sk_buff *skb) | |||
500 | data = hdev->driver_data; | 501 | data = hdev->driver_data; |
501 | 502 | ||
502 | /* Prepend skb with frame type */ | 503 | /* Prepend skb with frame type */ |
503 | memcpy(skb_push(skb, 1), &(skb->pkt_type), 1); | 504 | memcpy(skb_push(skb, 1), &bt_cb(skb)->pkt_type, 1); |
504 | 505 | ||
505 | switch (skb->pkt_type) { | 506 | switch (bt_cb(skb)->pkt_type) { |
506 | case HCI_COMMAND_PKT: | 507 | case HCI_COMMAND_PKT: |
507 | hdev->stat.cmd_tx++; | 508 | hdev->stat.cmd_tx++; |
508 | skb_queue_tail(&data->cmd_queue, skb); | 509 | skb_queue_tail(&data->cmd_queue, skb); |