Chapter 4. Host-Side Data Types and Macros
Prev |  | Next

## Chapter 4. Host-Side Data Types and Macros

Table of Contents

struct usb_host_endpoint — host-side endpoint descriptor and queue
struct usb_interface — what usb device drivers talk to
struct usb_interface_cache — long-term representation of a device interface
struct usb_host_config — representation of a device's configuration
usb_interface_claimed — returns true iff an interface is claimed
usb_make_path — returns stable device path in the usb tree
usb_endpoint_num — get the endpoint's number
usb_endpoint_type — get the endpoint's transfer type
usb_endpoint_dir_in — check if the endpoint has IN direction
usb_endpoint_dir_out — check if the endpoint has OUT direction
usb_endpoint_xfer_bulk — check if the endpoint has bulk transfer type
usb_endpoint_xfer_control — check if the endpoint has control transfer type
usb_endpoint_xfer_int — check if the endpoint has interrupt transfer type
usb_endpoint_xfer_isoc — check if the endpoint has isochronous transfer type
usb_endpoint_is_bulk_in — check if the endpoint is bulk IN
usb_endpoint_is_bulk_out — check if the endpoint is bulk OUT
usb_endpoint_is_int_in — check if the endpoint is interrupt IN
usb_endpoint_is_int_out — check if the endpoint is interrupt OUT
usb_endpoint_is_isoc_in — check if the endpoint is isochronous IN
usb_endpoint_is_isoc_out — check if the endpoint is isochronous OUT
USB_DEVICE — macro used to describe a specific usb device
USB_DEVICE_VER — macro used to describe a specific usb device with a
USB_DEVICE_INTERFACE_PROTOCOL — macro used to describe a usb
USB_DEVICE_INFO — macro used to describe a class of usb devices
USB_INTERFACE_INFO — macro used to describe a class of usb interfaces
USB_DEVICE_AND_INTERFACE_INFO — macro used to describe a specific usb device
struct usbdrv_wrap — wrapper for driver-model structure
struct usb_driver — identifies USB interface driver to usbcore
struct usb_device_driver — identifies USB device driver to usbcore
struct usb_class_driver — identifies a USB driver that wants to use the USB major number
struct urb — USB Request Block
usb_fill_control_urb — initializes a control urb
usb_fill_bulk_urb — macro to help initialize a bulk urb
usb_fill_int_urb — macro to help initialize a interrupt urb
usb_urb_dir_in — check if an URB describes an IN transfer
usb_urb_dir_out — check if an URB describes an OUT transfer
struct usb_sg_request — support for scatter/gather I/O

The host side API exposes several layers to drivers, some of which are more necessary than others. These support lifecycle models for host side drivers and devices, and support passing buffers through usbcore to some HCD that performs the I/O for the device driver.

Prev |  | Next
struct usb_ctrlrequest | Home | struct usb_host_endpoint