aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/bluetooth/bpa10x.c
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2013-10-11 09:19:18 -0400
committerJohan Hedberg <johan.hedberg@intel.com>2013-10-11 09:28:03 -0400
commit7bd8f09f69f8a190f9b8334a07bb0a9237612314 (patch)
treea5d892d5129194953e29eb9dc986f5773e59ef14 /drivers/bluetooth/bpa10x.c
parente1a26170692dc1e5fbe0ccd98ef86cc9fcd31a64 (diff)
Bluetooth: Add hdev parameter to hdev->send driver callback
Instead of masking hdev inside the skb->dev parameter, hand it directly to the driver as a parameter to hdev->send. This makes the driver interface more clear and simpler. This patch fixes all drivers to accept and handle the new parameter of hdev->send callback. Special care has been taken for bpa10x and btusb drivers that require having skb->dev set to hdev for the URB transmit complete handlers. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'drivers/bluetooth/bpa10x.c')
-rw-r--r--drivers/bluetooth/bpa10x.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/bluetooth/bpa10x.c b/drivers/bluetooth/bpa10x.c
index 3188fb48bf4b..b9e4e621fb10 100644
--- a/drivers/bluetooth/bpa10x.c
+++ b/drivers/bluetooth/bpa10x.c
@@ -350,9 +350,8 @@ static int bpa10x_flush(struct hci_dev *hdev)
350 return 0; 350 return 0;
351} 351}
352 352
353static int bpa10x_send_frame(struct sk_buff *skb) 353static int bpa10x_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
354{ 354{
355 struct hci_dev *hdev = (struct hci_dev *) skb->dev;
356 struct bpa10x_data *data = hci_get_drvdata(hdev); 355 struct bpa10x_data *data = hci_get_drvdata(hdev);
357 struct usb_ctrlrequest *dr; 356 struct usb_ctrlrequest *dr;
358 struct urb *urb; 357 struct urb *urb;
@@ -364,6 +363,8 @@ static int bpa10x_send_frame(struct sk_buff *skb)
364 if (!test_bit(HCI_RUNNING, &hdev->flags)) 363 if (!test_bit(HCI_RUNNING, &hdev->flags))
365 return -EBUSY; 364 return -EBUSY;
366 365
366 skb->dev = (void *) hdev;
367
367 urb = usb_alloc_urb(0, GFP_ATOMIC); 368 urb = usb_alloc_urb(0, GFP_ATOMIC);
368 if (!urb) 369 if (!urb)
369 return -ENOMEM; 370 return -ENOMEM;