DBG("%s", hdev->name);
husb->read_urb->dev = husb->udev;
- if ((status = usb_submit_urb(husb->read_urb)))
+ if ((status = usb_submit_urb(husb->read_urb, GFP_KERNEL)))
DBG("read submit failed. %d", status);
husb->intr_urb->dev = husb->udev;
- if ((status = usb_submit_urb(husb->intr_urb)))
+ if ((status = usb_submit_urb(husb->intr_urb, GFP_KERNEL)))
DBG("interrupt submit failed. %d", status);
hdev->flags |= HCI_RUNNING;
resubmit:
husb->read_urb->dev = husb->udev;
- if ((status = usb_submit_urb(husb->read_urb)))
+ if ((status = usb_submit_urb(husb->read_urb, GFP_KERNEL)))
DBG("%s read URB submit failed %d", husb->hdev.name, status);
DBG("%s read URB re-submited", husb->hdev.name);
FILL_CONTROL_URB(urb, husb->udev, pipe, (void*)dr, skb->data, skb->len,
hci_usb_ctrl, skb);
- if ((status = usb_submit_urb(urb))) {
+ if ((status = usb_submit_urb(urb, GFP_KERNEL))) {
DBG("%s control URB submit failed %d", husb->hdev.name, status);
return status;
}
hci_usb_bulk_write, skb);
urb->transfer_flags |= USB_QUEUE_BULK;
- if ((status = usb_submit_urb(urb))) {
+ if ((status = usb_submit_urb(urb, GFP_KERNEL))) {
DBG("%s write URB submit failed %d", husb->hdev.name, status);
return status;
}
set_current_state(TASK_INTERRUPTIBLE);
add_wait_queue(&iforce->wait, &wait);
- if (usb_submit_urb(iforce->out)) {
+ if (usb_submit_urb(iforce->out, GFP_ATOMIC)) {
set_current_state(TASK_RUNNING);
remove_wait_queue(&iforce->wait, &wait);
return;
set_current_state(TASK_INTERRUPTIBLE);
add_wait_queue(&iforce->wait, &wait);
- if (usb_submit_urb(iforce->ctrl)) {
+ if (usb_submit_urb(iforce->ctrl, GFP_ATOMIC)) {
set_current_state(TASK_RUNNING);
remove_wait_queue(&iforce->wait, &wait);
return -1;
if (iforce->open++)
break;
iforce->irq->dev = iforce->usbdev;
- if (usb_submit_urb(iforce->irq))
+ if (usb_submit_urb(iforce->irq, GFP_KERNEL))
return -EIO;
break;
#endif
* Submit an URB with error reporting. This is a macro so
* the __FUNCTION__ returns the caller function name.
*/
-#define SUBMIT_URB(urb) \
+#define SUBMIT_URB(urb, mem_flags) \
({ \
int status; \
- if ((status = usb_submit_urb(urb)) < 0) { \
+ if ((status = usb_submit_urb(urb, mem_flags)) < 0) { \
WARN("usb_submit_urb failed,status=%d", status); \
} \
status; \
DBG_ISO_PACKET(0x200,urb);
- SUBMIT_URB(urb);
+ SUBMIT_URB(urb, GFP_KERNEL);
}
/*
DBG_ISO_PACKET(0x20,urb);
- if (usb_submit_urb(urb) < 0) {
+ if (usb_submit_urb(urb, GFP_KERNEL) < 0) {
// There is another URB queued up
urb->transfer_flags = USB_ISO_ASAP;
- SUBMIT_URB(urb);
+ SUBMIT_URB(urb, GFP_KERNEL);
}
}
urb->transfer_flags = USB_ISO_ASAP;
DBG_ISO_PACKET(0x20,urb);
- SUBMIT_URB(urb);
+ SUBMIT_URB(urb, GFP_KERNEL);
}
static void dout_short_fifo(struct FsmInst *fsm, int event, void *arg)
// Prepare the URB
urb->dev = adapter->usb_dev;
- SUBMIT_URB(urb);
+ SUBMIT_URB(urb, GFP_KERNEL);
}
/*
adapter->leds = RED_LED;
// Start receiving on the interrupt endpoint
- SUBMIT_URB(intr->urb);
+ SUBMIT_URB(intr->urb, GFP_KERNEL);
while ((request = init_cmd_table[i++])) {
value = init_cmd_table[i++];
urb->dev = in->adapter->usb_dev;
urb->actual_length = 0;
- SUBMIT_URB(urb);
+ SUBMIT_URB(urb, GFP_KERNEL);
}
int __devinit st5481_setup_in(struct st5481_in *in)
DBG(4,"");
in->urb[0]->dev = adapter->usb_dev;
- SUBMIT_URB(in->urb[0]);
+ SUBMIT_URB(in->urb[0], GFP_KERNEL);
in->urb[1]->dev = adapter->usb_dev;
- SUBMIT_URB(in->urb[1]);
+ SUBMIT_URB(in->urb[1], GFP_KERNEL);
}
void st5481_in_mode(struct st5481_in *in, int mode)
ucpia->sbuf[1].urb->next = ucpia->sbuf[0].urb;
ucpia->sbuf[0].urb->next = ucpia->sbuf[1].urb;
- err = usb_submit_urb(ucpia->sbuf[0].urb);
+ err = usb_submit_urb(ucpia->sbuf[0].urb, GFP_KERNEL);
if (err) {
printk(KERN_ERR "cpia_init_isoc: usb_submit_urb 0 ret %d\n",
err);
goto error_urb1;
}
- err = usb_submit_urb(ucpia->sbuf[1].urb);
+ err = usb_submit_urb(ucpia->sbuf[1].urb, GFP_KERNEL);
if (err) {
printk(KERN_ERR "cpia_init_isoc: usb_submit_urb 1 ret %d\n",
err);
urb->transfer_flags = USB_QUEUE_BULK | USB_ASYNC_UNLINK;
urb->timeout = MSECS_TO_JIFFIES(100);
- if ((ret = usb_submit_urb(urb))) {
+ if ((ret = usb_submit_urb(urb, GFP_KERNEL))) {
WARNING(__FUNCTION__ "(), failed Speed URB\n");
}
spin_unlock_irqrestore(&self->lock, flags);
}
/* Ask USB to send the packet */
- if ((res = usb_submit_urb(urb))) {
+ if ((res = usb_submit_urb(urb, GFP_KERNEL))) {
WARNING(__FUNCTION__ "(), failed Tx URB\n");
self->stats.tx_errors++;
/* Let USB recover : We will catch that in the watchdog */
urb->status = 0;
urb->next = NULL; /* Don't auto resubmit URBs */
- ret = usb_submit_urb(urb);
+ ret = usb_submit_urb(urb, GFP_KERNEL);
if (ret) {
/* If this ever happen, we are in deep s***.
* Basically, the Rx path will stop... */