usb_hcd_check_unlink_urb
Prev | Chapter 6. Host Controller APIs | Next

## Name

usb_hcd_check_unlink_urb — check whether an URB may be unlinked

## Synopsis

`int usb_hcd_check_unlink_urb (` | struct usb_hcd * | hcd,
| struct urb * | urb,
| int | status`)`;

## Arguments

`hcd`

  host controller to which `urb` was submitted

`urb`

  URB being checked for unlinkability

`status`

  error code to store in `urb` if the unlink succeeds

## Description

Host controller drivers should call this routine in their `dequeue` method. The HCD's private spinlock must be held and interrupts must be disabled. The actions carried out here are required for making sure than an unlink is valid.

Returns 0 for no error, otherwise a negative error code (in which case the `dequeue` method must fail). The possible error codes are:

-EIDRM: `urb` was not submitted or has already completed. The completion function may not have been called yet.

-EBUSY: `urb` has already been unlinked.

Prev | Up | Next
usb_hcd_link_urb_to_ep | Home | usb_hcd_unlink_urb_from_ep