FreeBSD kernel usb device Code
usbdi.h File Reference
#include <sys/_eventhandler.h>
Include dependency graph for usbdi.h:

Go to the source code of this file.

Data Structures

struct  usb_xfer_queue
 
struct  usb_endpoint
 
struct  usb_interface
 
struct  usb_xfer_flags
 
struct  usb_config
 
struct  usb_device_id
 
struct  usbd_lookup_info
 
struct  usb_attach_arg
 
struct  usb_callout
 
struct  usb_proc_msg
 
struct  usb_fifo_methods
 
struct  usb_fifo_sc
 

Macros

#define USB_FORCE_SHORT_XFER   0x0001 /* force a short transmit last */
 
#define USB_SHORT_XFER_OK   0x0004 /* allow short reads */
 
#define USB_DELAY_STATUS_STAGE   0x0010 /* insert delay before STATUS stage */
 
#define USB_USER_DATA_PTR   0x0020 /* internal flag */
 
#define USB_MULTI_SHORT_OK   0x0040 /* allow multiple short frames */
 
#define USB_MANUAL_STATUS   0x0080 /* manual ctrl status */
 
#define USB_NO_TIMEOUT   0
 
#define USB_DEFAULT_TIMEOUT   5000 /* 5000 ms = 5 seconds */
 
#define USB_MS_HZ   1024
 
#define USB_MS_TO_TICKS(ms)    (((uint32_t)((((uint32_t)(ms)) * ((uint32_t)(hz))) + USB_MS_HZ - 1)) / USB_MS_HZ)
 
#define USB_EP_REF_MAX   0x3f
 
#define USB_DEFAULT_INTERVAL   0
 
#define STRUCT_USB_HOST_ID    struct usb_device_id
 
#define STRUCT_USB_DEVICE_ID    struct usb_device_id
 
#define STRUCT_USB_DUAL_ID    struct usb_device_id
 
#define USB_STD_PNP_INFO
 
#define USB_STD_PNP_HOST_INFO   USB_STD_PNP_INFO "T:mode=host;"
 
#define USB_STD_PNP_DEVICE_INFO   USB_STD_PNP_INFO "T:mode=device;"
 
#define USB_PNP_HOST_INFO(table)
 
#define USB_PNP_DEVICE_INFO(table)
 
#define USB_PNP_DUAL_INFO(table)
 
#define USB_VENDOR(vend)    .match_flag_vendor = 1, .idVendor = (vend)
 
#define USB_PRODUCT(prod)    .match_flag_product = 1, .idProduct = (prod)
 
#define USB_VP(vend, prod)    USB_VENDOR(vend), USB_PRODUCT(prod)
 
#define USB_VPI(vend, prod, info)    USB_VENDOR(vend), USB_PRODUCT(prod), USB_DRIVER_INFO(info)
 
#define USB_DEV_BCD_GTEQ(lo)
 
#define USB_DEV_BCD_LTEQ(hi)
 
#define USB_DEV_CLASS(dc)    .match_flag_dev_class = 1, .bDeviceClass = (dc)
 
#define USB_DEV_SUBCLASS(dsc)    .match_flag_dev_subclass = 1, .bDeviceSubClass = (dsc)
 
#define USB_DEV_PROTOCOL(dp)    .match_flag_dev_protocol = 1, .bDeviceProtocol = (dp)
 
#define USB_IFACE_CLASS(ic)    .match_flag_int_class = 1, .bInterfaceClass = (ic)
 
#define USB_IFACE_SUBCLASS(isc)    .match_flag_int_subclass = 1, .bInterfaceSubClass = (isc)
 
#define USB_IFACE_PROTOCOL(ip)    .match_flag_int_protocol = 1, .bInterfaceProtocol = (ip)
 
#define USB_IF_CSI(class, subclass, info)    USB_IFACE_CLASS(class), USB_IFACE_SUBCLASS(subclass), USB_DRIVER_INFO(info)
 
#define USB_DRIVER_INFO(n)    .driver_info = (n)
 
#define USB_GET_DRIVER_INFO(did)    (did)->driver_info
 
#define UAA_DEV_READY   0
 
#define UAA_DEV_DISABLED   1
 
#define UAA_DEV_EJECTING   2
 
#define USB_MTX_ASSERT(_m, _t)   do { } while (0)
 
#define USB_MTX_LOCK(_m)
 
#define USB_MTX_UNLOCK(_m)
 
#define USB_MTX_LOCK_SPIN(_m)
 
#define USB_MTX_UNLOCK_SPIN(_m)
 
#define usb_callout_init_mtx(c, m, f)   callout_init_mtx(&(c)->co,m,f)
 
#define usb_callout_reset(c, ...)
 
#define usb_callout_reset_sbt(c, ...)
 
#define usb_callout_stop(c)
 
#define usb_callout_drain(c)   callout_drain(&(c)->co)
 
#define usb_callout_pending(c)   callout_pending(&(c)->co)
 
#define USB_ST_SETUP   0
 
#define USB_ST_TRANSFERRED   1
 
#define USB_ST_ERROR   2
 
#define USB_HR_NOT_COMPLETE   0
 
#define USB_HR_COMPLETE_OK   1
 
#define USB_HR_COMPLETE_ERR   2
 
#define USB_GET_STATE(xfer)   (usbd_xfer_state(xfer))
 
#define USB_FIFO_TX   0
 
#define USB_FIFO_RX   1
 
#define usbd_do_request(u, m, r, d)    usbd_do_request_flags(u,m,r,d,0,NULL,USB_DEFAULT_TIMEOUT)
 

Typedefs

typedef void() usb_callback_t(struct usb_xfer *, usb_error_t)
 
typedef void() usb_proc_callback_t(struct usb_proc_msg *)
 
typedef usb_error_t() usb_handle_req_t(struct usb_device *, struct usb_device_request *, const void **, uint16_t *)
 
typedef int() usb_fifo_open_t(struct usb_fifo *fifo, int fflags)
 
typedef void() usb_fifo_close_t(struct usb_fifo *fifo, int fflags)
 
typedef int() usb_fifo_ioctl_t(struct usb_fifo *fifo, u_long cmd, void *addr, int fflags)
 
typedef void() usb_fifo_cmd_t(struct usb_fifo *fifo)
 
typedef void() usb_fifo_filter_t(struct usb_fifo *fifo, struct usb_mbuf *m)
 
typedef void(* usb_dev_configured_t) (void *, struct usb_device *, struct usb_attach_arg *)
 

Enumerations

enum  usb_error_t {
  USB_ERR_NORMAL_COMPLETION = 0 , USB_ERR_PENDING_REQUESTS , USB_ERR_NOT_STARTED , USB_ERR_INVAL ,
  USB_ERR_NOMEM , USB_ERR_CANCELLED , USB_ERR_BAD_ADDRESS , USB_ERR_BAD_BUFSIZE ,
  USB_ERR_BAD_FLAG , USB_ERR_NO_CALLBACK , USB_ERR_IN_USE , USB_ERR_NO_ADDR ,
  USB_ERR_NO_PIPE , USB_ERR_ZERO_NFRAMES , USB_ERR_ZERO_MAXP , USB_ERR_SET_ADDR_FAILED ,
  USB_ERR_NO_POWER , USB_ERR_TOO_DEEP , USB_ERR_IOERROR , USB_ERR_NOT_CONFIGURED ,
  USB_ERR_TIMEOUT , USB_ERR_SHORT_XFER , USB_ERR_STALLED , USB_ERR_INTERRUPTED ,
  USB_ERR_DMA_LOAD_FAILED , USB_ERR_BAD_CONTEXT , USB_ERR_NO_ROOT_HUB , USB_ERR_NO_INTR_THREAD ,
  USB_ERR_NOT_LOCKED , USB_ERR_MAX
}
 

Functions

 EVENTHANDLER_DECLARE (usb_dev_configured, usb_dev_configured_t)
 
struct usb_device_id __aligned (32)
 
const char * usbd_errstr (usb_error_t error)
 
void * usbd_find_descriptor (struct usb_device *udev, void *id, uint8_t iface_index, uint8_t type, uint8_t type_mask, uint8_t subtype, uint8_t subtype_mask)
 
struct usb_config_descriptorusbd_get_config_descriptor (struct usb_device *udev)
 
struct usb_device_descriptorusbd_get_device_descriptor (struct usb_device *udev)
 
struct usb_interfaceusbd_get_iface (struct usb_device *udev, uint8_t iface_index)
 
struct usb_interface_descriptorusbd_get_interface_descriptor (struct usb_interface *iface)
 
struct usb_endpointusbd_get_endpoint (struct usb_device *udev, uint8_t iface_index, const struct usb_config *setup)
 
struct usb_endpointusbd_get_ep_by_addr (struct usb_device *udev, uint8_t ea_val)
 
usb_error_t usbd_interface_count (struct usb_device *udev, uint8_t *count)
 
enum usb_hc_mode usbd_get_mode (struct usb_device *udev)
 
enum usb_dev_speed usbd_get_speed (struct usb_device *udev)
 
void device_set_usb_desc (device_t dev)
 
void usb_pause_mtx (struct mtx *mtx, int _ticks)
 
usb_error_t usbd_set_pnpinfo (struct usb_device *udev, uint8_t iface_index, const char *pnpinfo)
 
usb_error_t usbd_add_dynamic_quirk (struct usb_device *udev, uint16_t quirk)
 
usb_error_t usbd_set_endpoint_mode (struct usb_device *udev, struct usb_endpoint *ep, uint8_t ep_mode)
 
uint8_t usbd_get_endpoint_mode (struct usb_device *udev, struct usb_endpoint *ep)
 
const struct usb_device_idusbd_lookup_id_by_info (const struct usb_device_id *id, usb_size_t sizeof_id, const struct usbd_lookup_info *info)
 
int usbd_lookup_id_by_uaa (const struct usb_device_id *id, usb_size_t sizeof_id, struct usb_attach_arg *uaa)
 
usb_error_t usbd_do_request_flags (struct usb_device *udev, struct mtx *mtx, struct usb_device_request *req, void *data, uint16_t flags, uint16_t *actlen, usb_timeout_t timeout)
 
uint8_t usbd_clear_stall_callback (struct usb_xfer *xfer1, struct usb_xfer *xfer2)
 
uint8_t usbd_get_interface_altindex (struct usb_interface *iface)
 
usb_error_t usbd_set_alt_interface_index (struct usb_device *udev, uint8_t iface_index, uint8_t alt_index)
 
uint32_t usbd_get_isoc_fps (struct usb_device *udev)
 
uint32_t usbd_get_max_frame_length (const struct usb_endpoint_descriptor *, const struct usb_endpoint_ss_comp_descriptor *, enum usb_dev_speed)
 
usb_error_t usbd_transfer_setup (struct usb_device *udev, const uint8_t *ifaces, struct usb_xfer **pxfer, const struct usb_config *setup_start, uint16_t n_setup, void *priv_sc, struct mtx *priv_mtx)
 
void usbd_transfer_submit (struct usb_xfer *xfer)
 
void usbd_transfer_clear_stall (struct usb_xfer *xfer)
 
void usbd_transfer_drain (struct usb_xfer *xfer)
 
uint8_t usbd_transfer_pending (struct usb_xfer *xfer)
 
void usbd_transfer_start (struct usb_xfer *xfer)
 
void usbd_transfer_stop (struct usb_xfer *xfer)
 
void usbd_transfer_unsetup (struct usb_xfer **pxfer, uint16_t n_setup)
 
void usbd_transfer_poll (struct usb_xfer **ppxfer, uint16_t max)
 
void usbd_set_parent_iface (struct usb_device *udev, uint8_t iface_index, uint8_t parent_index)
 
uint8_t usbd_get_bus_index (struct usb_device *udev)
 
uint8_t usbd_get_device_index (struct usb_device *udev)
 
void usbd_set_power_mode (struct usb_device *udev, uint8_t power_mode)
 
uint8_t usbd_filter_power_mode (struct usb_device *udev, uint8_t power_mode)
 
uint8_t usbd_device_attached (struct usb_device *udev)
 
usb_frlength_t usbd_xfer_old_frame_length (struct usb_xfer *xfer, usb_frcount_t frindex)
 
void usbd_xfer_status (struct usb_xfer *xfer, int *actlen, int *sumlen, int *aframes, int *nframes)
 
struct usb_page_cacheusbd_xfer_get_frame (struct usb_xfer *, usb_frcount_t)
 
void * usbd_xfer_get_frame_buffer (struct usb_xfer *, usb_frcount_t)
 
void * usbd_xfer_softc (struct usb_xfer *xfer)
 
void * usbd_xfer_get_priv (struct usb_xfer *xfer)
 
void usbd_xfer_set_priv (struct usb_xfer *xfer, void *)
 
void usbd_xfer_set_interval (struct usb_xfer *xfer, int)
 
uint8_t usbd_xfer_state (struct usb_xfer *xfer)
 
void usbd_xfer_set_frame_data (struct usb_xfer *xfer, usb_frcount_t frindex, void *ptr, usb_frlength_t len)
 
void usbd_xfer_frame_data (struct usb_xfer *xfer, usb_frcount_t frindex, void **ptr, int *len)
 
void usbd_xfer_set_frame_offset (struct usb_xfer *xfer, usb_frlength_t offset, usb_frcount_t frindex)
 
usb_frlength_t usbd_xfer_max_len (struct usb_xfer *xfer)
 
usb_frlength_t usbd_xfer_max_framelen (struct usb_xfer *xfer)
 
usb_frcount_t usbd_xfer_max_frames (struct usb_xfer *xfer)
 
uint8_t usbd_xfer_get_fps_shift (struct usb_xfer *xfer)
 
usb_frlength_t usbd_xfer_frame_len (struct usb_xfer *xfer, usb_frcount_t frindex)
 
void usbd_xfer_set_frame_len (struct usb_xfer *xfer, usb_frcount_t frindex, usb_frlength_t len)
 
void usbd_xfer_set_timeout (struct usb_xfer *xfer, int timeout)
 
void usbd_xfer_set_frames (struct usb_xfer *xfer, usb_frcount_t n)
 
void usbd_xfer_set_zlp (struct usb_xfer *xfer)
 
uint8_t usbd_xfer_get_and_clr_zlp (struct usb_xfer *xfer)
 
void usbd_xfer_set_stall (struct usb_xfer *xfer)
 
int usbd_xfer_is_stalled (struct usb_xfer *xfer)
 
void usbd_xfer_set_flag (struct usb_xfer *xfer, int flag)
 
void usbd_xfer_clr_flag (struct usb_xfer *xfer, int flag)
 
uint16_t usbd_xfer_get_timestamp (struct usb_xfer *xfer)
 
uint8_t usbd_xfer_maxp_was_clamped (struct usb_xfer *xfer)
 
void usbd_copy_in (struct usb_page_cache *cache, usb_frlength_t offset, const void *ptr, usb_frlength_t len)
 
int usbd_copy_in_user (struct usb_page_cache *cache, usb_frlength_t offset, const void *ptr, usb_frlength_t len)
 
void usbd_copy_out (struct usb_page_cache *cache, usb_frlength_t offset, void *ptr, usb_frlength_t len)
 
int usbd_copy_out_user (struct usb_page_cache *cache, usb_frlength_t offset, void *ptr, usb_frlength_t len)
 
void usbd_get_page (struct usb_page_cache *pc, usb_frlength_t offset, struct usb_page_search *res)
 
void usbd_m_copy_in (struct usb_page_cache *cache, usb_frlength_t dst_offset, struct mbuf *m, usb_size_t src_offset, usb_frlength_t src_len)
 
void usbd_frame_zero (struct usb_page_cache *cache, usb_frlength_t offset, usb_frlength_t len)
 
void usbd_start_re_enumerate (struct usb_device *udev)
 
usb_error_t usbd_start_set_config (struct usb_device *, uint8_t)
 
int usbd_in_polling_mode (void)
 
void usbd_dummy_timeout (void *)
 
int usb_fifo_attach (struct usb_device *udev, void *priv_sc, struct mtx *priv_mtx, struct usb_fifo_methods *pm, struct usb_fifo_sc *f_sc, uint16_t unit, int16_t subunit, uint8_t iface_index, uid_t uid, gid_t gid, int mode)
 
void usb_fifo_detach (struct usb_fifo_sc *f_sc)
 
int usb_fifo_alloc_buffer (struct usb_fifo *f, uint32_t bufsize, uint16_t nbuf)
 
void usb_fifo_free_buffer (struct usb_fifo *f)
 
uint32_t usb_fifo_put_bytes_max (struct usb_fifo *fifo)
 
void usb_fifo_put_data (struct usb_fifo *fifo, struct usb_page_cache *pc, usb_frlength_t offset, usb_frlength_t len, uint8_t what)
 
void usb_fifo_put_data_linear (struct usb_fifo *fifo, void *ptr, usb_size_t len, uint8_t what)
 
uint8_t usb_fifo_put_data_buffer (struct usb_fifo *f, void *ptr, usb_size_t len)
 
void usb_fifo_put_data_error (struct usb_fifo *fifo)
 
uint8_t usb_fifo_get_data (struct usb_fifo *fifo, struct usb_page_cache *pc, usb_frlength_t offset, usb_frlength_t len, usb_frlength_t *actlen, uint8_t what)
 
uint8_t usb_fifo_get_data_linear (struct usb_fifo *fifo, void *ptr, usb_size_t len, usb_size_t *actlen, uint8_t what)
 
uint8_t usb_fifo_get_data_buffer (struct usb_fifo *f, void **pptr, usb_size_t *plen)
 
void usb_fifo_reset (struct usb_fifo *f)
 
void usb_fifo_wakeup (struct usb_fifo *f)
 
void usb_fifo_get_data_error (struct usb_fifo *fifo)
 
void * usb_fifo_softc (struct usb_fifo *fifo)
 
void usb_fifo_set_close_zlp (struct usb_fifo *, uint8_t)
 
void usb_fifo_set_write_defrag (struct usb_fifo *, uint8_t)
 
void usb_fifo_free (struct usb_fifo *f)
 

Variables

uint16_t match_flag_vendor
 
uint16_t match_flag_product
 
uint16_t match_flag_dev_lo
 
uint16_t match_flag_dev_hi
 
uint16_t match_flag_dev_class
 
uint16_t match_flag_dev_subclass
 
uint16_t match_flag_dev_protocol
 
uint16_t match_flag_int_class
 
uint16_t match_flag_int_subclass
 
uint16_t match_flag_int_protocol
 
uint16_t match_flag_unused
 
uint16_t idVendor
 
uint16_t idProduct
 
uint16_t bcdDevice_lo
 
uint16_t bcdDevice_hi
 
uint8_t bDeviceClass
 
uint8_t bDeviceSubClass
 
uint8_t bDeviceProtocol
 
uint8_t bInterfaceClass
 
uint8_t bInterfaceSubClass
 
uint8_t bInterfaceProtocol
 
unsigned long driver_info
 
char usb_device_id_assert [(sizeof(struct usb_device_id)==32) ? 1 :-1]
 
struct usbd_lookup_info __aligned
 

Macro Definition Documentation

◆ STRUCT_USB_DEVICE_ID

#define STRUCT_USB_DEVICE_ID    struct usb_device_id

Definition at line 260 of file usbdi.h.

◆ STRUCT_USB_DUAL_ID

#define STRUCT_USB_DUAL_ID    struct usb_device_id

Definition at line 262 of file usbdi.h.

◆ STRUCT_USB_HOST_ID

#define STRUCT_USB_HOST_ID    struct usb_device_id

Definition at line 258 of file usbdi.h.

◆ UAA_DEV_DISABLED

#define UAA_DEV_DISABLED   1

Definition at line 436 of file usbdi.h.

◆ UAA_DEV_EJECTING

#define UAA_DEV_EJECTING   2

Definition at line 437 of file usbdi.h.

◆ UAA_DEV_READY

#define UAA_DEV_READY   0

Definition at line 435 of file usbdi.h.

◆ usb_callout_drain

#define usb_callout_drain (   c)    callout_drain(&(c)->co)

Definition at line 497 of file usbdi.h.

◆ usb_callout_init_mtx

#define usb_callout_init_mtx (   c,
  m,
 
)    callout_init_mtx(&(c)->co,m,f)

Definition at line 480 of file usbdi.h.

◆ usb_callout_pending

#define usb_callout_pending (   c)    callout_pending(&(c)->co)

Definition at line 498 of file usbdi.h.

◆ usb_callout_reset

#define usb_callout_reset (   c,
  ... 
)
Value:
do { \
callout_reset(&(c)->co, __VA_ARGS__); \
} while (0)
#define USB_IN_POLLING_MODE_FUNC()
Definition: usb_freebsd.h:96

Definition at line 481 of file usbdi.h.

◆ usb_callout_reset_sbt

#define usb_callout_reset_sbt (   c,
  ... 
)
Value:
do { \
callout_reset_sbt(&(c)->co, __VA_ARGS__); \
} while (0)

Definition at line 485 of file usbdi.h.

◆ usb_callout_stop

#define usb_callout_stop (   c)
Value:
do { \
callout_stop(&(c)->co); \
} else { \
/* \
* Cannot stop callout when \
* polling. Set dummy callback \
* function instead: \
*/ \
(c)->co.c_func = &usbd_dummy_timeout; \
} \
} while (0)
void usbd_dummy_timeout(void *)
Definition: usb_core.c:78

Definition at line 489 of file usbdi.h.

◆ USB_DEFAULT_INTERVAL

#define USB_DEFAULT_INTERVAL   0

Definition at line 233 of file usbdi.h.

◆ USB_DEFAULT_TIMEOUT

#define USB_DEFAULT_TIMEOUT   5000 /* 5000 ms = 5 seconds */

Definition at line 89 of file usbdi.h.

◆ USB_DELAY_STATUS_STAGE

#define USB_DELAY_STATUS_STAGE   0x0010 /* insert delay before STATUS stage */

Definition at line 83 of file usbdi.h.

◆ USB_DEV_BCD_GTEQ

#define USB_DEV_BCD_GTEQ (   lo)
Value:
/* greater than or equal */ \
.match_flag_dev_lo = 1, .bcdDevice_lo = (lo)

Definition at line 370 of file usbdi.h.

◆ USB_DEV_BCD_LTEQ

#define USB_DEV_BCD_LTEQ (   hi)
Value:
/* less than or equal */ \
.match_flag_dev_hi = 1, .bcdDevice_hi = (hi)

Definition at line 373 of file usbdi.h.

◆ USB_DEV_CLASS

#define USB_DEV_CLASS (   dc)     .match_flag_dev_class = 1, .bDeviceClass = (dc)

Definition at line 376 of file usbdi.h.

◆ USB_DEV_PROTOCOL

#define USB_DEV_PROTOCOL (   dp)     .match_flag_dev_protocol = 1, .bDeviceProtocol = (dp)

Definition at line 382 of file usbdi.h.

◆ USB_DEV_SUBCLASS

#define USB_DEV_SUBCLASS (   dsc)     .match_flag_dev_subclass = 1, .bDeviceSubClass = (dsc)

Definition at line 379 of file usbdi.h.

◆ USB_DRIVER_INFO

#define USB_DRIVER_INFO (   n)     .driver_info = (n)

Definition at line 397 of file usbdi.h.

◆ USB_EP_REF_MAX

#define USB_EP_REF_MAX   0x3f

Definition at line 158 of file usbdi.h.

◆ USB_FIFO_RX

#define USB_FIFO_RX   1

Definition at line 527 of file usbdi.h.

◆ USB_FIFO_TX

#define USB_FIFO_TX   0

Definition at line 526 of file usbdi.h.

◆ USB_FORCE_SHORT_XFER

#define USB_FORCE_SHORT_XFER   0x0001 /* force a short transmit last */

Definition at line 81 of file usbdi.h.

◆ USB_GET_DRIVER_INFO

#define USB_GET_DRIVER_INFO (   did)     (did)->driver_info

Definition at line 400 of file usbdi.h.

◆ USB_GET_STATE

#define USB_GET_STATE (   xfer)    (usbd_xfer_state(xfer))

Definition at line 515 of file usbdi.h.

◆ USB_HR_COMPLETE_ERR

#define USB_HR_COMPLETE_ERR   2

Definition at line 509 of file usbdi.h.

◆ USB_HR_COMPLETE_OK

#define USB_HR_COMPLETE_OK   1

Definition at line 508 of file usbdi.h.

◆ USB_HR_NOT_COMPLETE

#define USB_HR_NOT_COMPLETE   0

Definition at line 507 of file usbdi.h.

◆ USB_IF_CSI

#define USB_IF_CSI (   class,
  subclass,
  info 
)     USB_IFACE_CLASS(class), USB_IFACE_SUBCLASS(subclass), USB_DRIVER_INFO(info)

Definition at line 394 of file usbdi.h.

◆ USB_IFACE_CLASS

#define USB_IFACE_CLASS (   ic)     .match_flag_int_class = 1, .bInterfaceClass = (ic)

Definition at line 385 of file usbdi.h.

◆ USB_IFACE_PROTOCOL

#define USB_IFACE_PROTOCOL (   ip)     .match_flag_int_protocol = 1, .bInterfaceProtocol = (ip)

Definition at line 391 of file usbdi.h.

◆ USB_IFACE_SUBCLASS

#define USB_IFACE_SUBCLASS (   isc)     .match_flag_int_subclass = 1, .bInterfaceSubClass = (isc)

Definition at line 388 of file usbdi.h.

◆ USB_MANUAL_STATUS

#define USB_MANUAL_STATUS   0x0080 /* manual ctrl status */

Definition at line 86 of file usbdi.h.

◆ USB_MS_HZ

#define USB_MS_HZ   1024

Definition at line 118 of file usbdi.h.

◆ USB_MS_TO_TICKS

#define USB_MS_TO_TICKS (   ms)     (((uint32_t)((((uint32_t)(ms)) * ((uint32_t)(hz))) + USB_MS_HZ - 1)) / USB_MS_HZ)

Definition at line 120 of file usbdi.h.

◆ USB_MTX_ASSERT

#define USB_MTX_ASSERT (   _m,
  _t 
)    do { } while (0)

Definition at line 450 of file usbdi.h.

◆ USB_MTX_LOCK

#define USB_MTX_LOCK (   _m)
Value:
do { \
mtx_lock(_m); \
} while (0)

Definition at line 453 of file usbdi.h.

◆ USB_MTX_LOCK_SPIN

#define USB_MTX_LOCK_SPIN (   _m)
Value:
do { \
mtx_lock_spin(_m); \
} while (0)

Definition at line 463 of file usbdi.h.

◆ USB_MTX_UNLOCK

#define USB_MTX_UNLOCK (   _m)
Value:
do { \
mtx_unlock(_m); \
} while (0)

Definition at line 458 of file usbdi.h.

◆ USB_MTX_UNLOCK_SPIN

#define USB_MTX_UNLOCK_SPIN (   _m)
Value:
do { \
mtx_unlock_spin(_m); \
} while (0)

Definition at line 468 of file usbdi.h.

◆ USB_MULTI_SHORT_OK

#define USB_MULTI_SHORT_OK   0x0040 /* allow multiple short frames */

Definition at line 85 of file usbdi.h.

◆ USB_NO_TIMEOUT

#define USB_NO_TIMEOUT   0

Definition at line 88 of file usbdi.h.

◆ USB_PNP_DEVICE_INFO

#define USB_PNP_DEVICE_INFO (   table)
Value:
MODULE_PNP_INFO(USB_STD_PNP_DEVICE_INFO, uhub, table, table, \
sizeof(table) / sizeof(table[0]))
#define USB_STD_PNP_DEVICE_INFO
Definition: usbdi.h:344

Definition at line 348 of file usbdi.h.

◆ USB_PNP_DUAL_INFO

#define USB_PNP_DUAL_INFO (   table)
Value:
MODULE_PNP_INFO(USB_STD_PNP_INFO, uhub, table, table, \
sizeof(table) / sizeof(table[0]))
#define USB_STD_PNP_INFO
Definition: usbdi.h:340

Definition at line 351 of file usbdi.h.

◆ USB_PNP_HOST_INFO

#define USB_PNP_HOST_INFO (   table)
Value:
MODULE_PNP_INFO(USB_STD_PNP_HOST_INFO, uhub, table, table, \
sizeof(table) / sizeof(table[0]))
#define USB_STD_PNP_HOST_INFO
Definition: usbdi.h:343

Definition at line 345 of file usbdi.h.

◆ USB_PRODUCT

#define USB_PRODUCT (   prod)     .match_flag_product = 1, .idProduct = (prod)

Definition at line 361 of file usbdi.h.

◆ USB_SHORT_XFER_OK

#define USB_SHORT_XFER_OK   0x0004 /* allow short reads */

Definition at line 82 of file usbdi.h.

◆ USB_ST_ERROR

#define USB_ST_ERROR   2

Definition at line 504 of file usbdi.h.

◆ USB_ST_SETUP

#define USB_ST_SETUP   0

Definition at line 502 of file usbdi.h.

◆ USB_ST_TRANSFERRED

#define USB_ST_TRANSFERRED   1

Definition at line 503 of file usbdi.h.

◆ USB_STD_PNP_DEVICE_INFO

#define USB_STD_PNP_DEVICE_INFO   USB_STD_PNP_INFO "T:mode=device;"

Definition at line 344 of file usbdi.h.

◆ USB_STD_PNP_HOST_INFO

#define USB_STD_PNP_HOST_INFO   USB_STD_PNP_INFO "T:mode=host;"

Definition at line 343 of file usbdi.h.

◆ USB_STD_PNP_INFO

#define USB_STD_PNP_INFO
Value:
"M16:mask;U16:vendor;U16:product;L16:release;G16:release;" \
"U8:devclass;U8:devsubclass;U8:devproto;" \
"U8:intclass;U8:intsubclass;U8:intprotocol;"

Definition at line 340 of file usbdi.h.

◆ USB_USER_DATA_PTR

#define USB_USER_DATA_PTR   0x0020 /* internal flag */

Definition at line 84 of file usbdi.h.

◆ USB_VENDOR

#define USB_VENDOR (   vend)     .match_flag_vendor = 1, .idVendor = (vend)

Definition at line 358 of file usbdi.h.

◆ USB_VP

#define USB_VP (   vend,
  prod 
)     USB_VENDOR(vend), USB_PRODUCT(prod)

Definition at line 364 of file usbdi.h.

◆ USB_VPI

#define USB_VPI (   vend,
  prod,
  info 
)     USB_VENDOR(vend), USB_PRODUCT(prod), USB_DRIVER_INFO(info)

Definition at line 367 of file usbdi.h.

◆ usbd_do_request

#define usbd_do_request (   u,
  m,
  r,
 
)     usbd_do_request_flags(u,m,r,d,0,NULL,USB_DEFAULT_TIMEOUT)

Definition at line 596 of file usbdi.h.

Typedef Documentation

◆ usb_callback_t

typedef void() usb_callback_t(struct usb_xfer *, usb_error_t)

Definition at line 94 of file usbdi.h.

◆ usb_dev_configured_t

typedef void(* usb_dev_configured_t) (void *, struct usb_device *, struct usb_attach_arg *)

Definition at line 109 of file usbdi.h.

◆ usb_fifo_close_t

typedef void() usb_fifo_close_t(struct usb_fifo *fifo, int fflags)

Definition at line 100 of file usbdi.h.

◆ usb_fifo_cmd_t

typedef void() usb_fifo_cmd_t(struct usb_fifo *fifo)

Definition at line 102 of file usbdi.h.

◆ usb_fifo_filter_t

typedef void() usb_fifo_filter_t(struct usb_fifo *fifo, struct usb_mbuf *m)

Definition at line 103 of file usbdi.h.

◆ usb_fifo_ioctl_t

typedef int() usb_fifo_ioctl_t(struct usb_fifo *fifo, u_long cmd, void *addr, int fflags)

Definition at line 101 of file usbdi.h.

◆ usb_fifo_open_t

typedef int() usb_fifo_open_t(struct usb_fifo *fifo, int fflags)

Definition at line 99 of file usbdi.h.

◆ usb_handle_req_t

typedef usb_error_t() usb_handle_req_t(struct usb_device *, struct usb_device_request *, const void **, uint16_t *)

Definition at line 96 of file usbdi.h.

◆ usb_proc_callback_t

typedef void() usb_proc_callback_t(struct usb_proc_msg *)

Definition at line 95 of file usbdi.h.

Enumeration Type Documentation

◆ usb_error_t

Enumerator
USB_ERR_NORMAL_COMPLETION 
USB_ERR_PENDING_REQUESTS 
USB_ERR_NOT_STARTED 
USB_ERR_INVAL 
USB_ERR_NOMEM 
USB_ERR_CANCELLED 
USB_ERR_BAD_ADDRESS 
USB_ERR_BAD_BUFSIZE 
USB_ERR_BAD_FLAG 
USB_ERR_NO_CALLBACK 
USB_ERR_IN_USE 
USB_ERR_NO_ADDR 
USB_ERR_NO_PIPE 
USB_ERR_ZERO_NFRAMES 
USB_ERR_ZERO_MAXP 
USB_ERR_SET_ADDR_FAILED 
USB_ERR_NO_POWER 
USB_ERR_TOO_DEEP 
USB_ERR_IOERROR 
USB_ERR_NOT_CONFIGURED 
USB_ERR_TIMEOUT 
USB_ERR_SHORT_XFER 
USB_ERR_STALLED 
USB_ERR_INTERRUPTED 
USB_ERR_DMA_LOAD_FAILED 
USB_ERR_BAD_CONTEXT 
USB_ERR_NO_ROOT_HUB 
USB_ERR_NO_INTR_THREAD 
USB_ERR_NOT_LOCKED 
USB_ERR_MAX 

Definition at line 45 of file usbdi.h.

Function Documentation

◆ __aligned()

struct usb_device_id __aligned ( 32  )

◆ device_set_usb_desc()

◆ EVENTHANDLER_DECLARE()

EVENTHANDLER_DECLARE ( usb_dev_configured  ,
usb_dev_configured_t   
)

◆ usb_fifo_alloc_buffer()

int usb_fifo_alloc_buffer ( struct usb_fifo f,
uint32_t  bufsize,
uint16_t  nbuf 
)

Referenced by uep_open(), uhid_open(), uhid_snes_open(), ums_fifo_open(), unlpt_open(), urio_open(), and wsp_open().

Here is the caller graph for this function:

◆ usb_fifo_attach()

int usb_fifo_attach ( struct usb_device udev,
void *  priv_sc,
struct mtx *  priv_mtx,
struct usb_fifo_methods pm,
struct usb_fifo_sc f_sc,
uint16_t  unit,
int16_t  subunit,
uint8_t  iface_index,
uid_t  uid,
gid_t  gid,
int  mode 
)

Referenced by uep_attach(), uhid_attach(), uhid_snes_attach(), uled_attach(), ulpt_attach(), ums_attach(), urio_attach(), and wsp_attach().

Here is the caller graph for this function:

◆ usb_fifo_detach()

void usb_fifo_detach ( struct usb_fifo_sc f_sc)

Referenced by uep_detach(), uhid_detach(), uhid_snes_detach(), uled_detach(), ulpt_detach(), ums_detach(), urio_detach(), and wsp_detach().

Here is the caller graph for this function:

◆ usb_fifo_free()

void usb_fifo_free ( struct usb_fifo f)

◆ usb_fifo_free_buffer()

void usb_fifo_free_buffer ( struct usb_fifo f)

Referenced by uep_close(), uhid_close(), uhid_snes_close(), ulpt_close(), ums_fifo_close(), urio_close(), wsp_close(), and wsp_open().

Here is the caller graph for this function:

◆ usb_fifo_get_data()

uint8_t usb_fifo_get_data ( struct usb_fifo fifo,
struct usb_page_cache pc,
usb_frlength_t  offset,
usb_frlength_t  len,
usb_frlength_t actlen,
uint8_t  what 
)

Referenced by uhid_intr_write_callback(), uhid_write_callback(), ulpt_write_callback(), and urio_write_callback().

Here is the caller graph for this function:

◆ usb_fifo_get_data_buffer()

uint8_t usb_fifo_get_data_buffer ( struct usb_fifo f,
void **  pptr,
usb_size_t plen 
)

◆ usb_fifo_get_data_error()

void usb_fifo_get_data_error ( struct usb_fifo fifo)

Referenced by uhid_write_callback().

Here is the caller graph for this function:

◆ usb_fifo_get_data_linear()

uint8_t usb_fifo_get_data_linear ( struct usb_fifo fifo,
void *  ptr,
usb_size_t  len,
usb_size_t actlen,
uint8_t  what 
)

◆ usb_fifo_put_bytes_max()

uint32_t usb_fifo_put_bytes_max ( struct usb_fifo fifo)

◆ usb_fifo_put_data()

void usb_fifo_put_data ( struct usb_fifo fifo,
struct usb_page_cache pc,
usb_frlength_t  offset,
usb_frlength_t  len,
uint8_t  what 
)

◆ usb_fifo_put_data_buffer()

uint8_t usb_fifo_put_data_buffer ( struct usb_fifo f,
void *  ptr,
usb_size_t  len 
)

◆ usb_fifo_put_data_error()

void usb_fifo_put_data_error ( struct usb_fifo fifo)

Referenced by uhid_read_callback().

Here is the caller graph for this function:

◆ usb_fifo_put_data_linear()

void usb_fifo_put_data_linear ( struct usb_fifo fifo,
void *  ptr,
usb_size_t  len,
uint8_t  what 
)

Referenced by uep_put_queue(), ums_put_queue(), and wsp_add_to_queue().

Here is the caller graph for this function:

◆ usb_fifo_reset()

void usb_fifo_reset ( struct usb_fifo f)

Referenced by ums_reset_buf(), and wsp_reset_buf().

Here is the caller graph for this function:

◆ usb_fifo_set_close_zlp()

void usb_fifo_set_close_zlp ( struct usb_fifo ,
uint8_t   
)

◆ usb_fifo_set_write_defrag()

void usb_fifo_set_write_defrag ( struct usb_fifo ,
uint8_t   
)

◆ usb_fifo_softc()

◆ usb_fifo_wakeup()

void usb_fifo_wakeup ( struct usb_fifo f)

◆ usb_pause_mtx()

void usb_pause_mtx ( struct mtx *  mtx,
int  _ticks 
)

Definition at line 135 of file usb_util.c.

Referenced by atmegadci_init(), atmegadci_wakeup_peer(), avr32dci_init(), avr32dci_wakeup_peer(), dwc_otg_init(), dwc_otg_roothub_exec(), dwc_otg_wakeup_peer(), ehci_detach(), ehci_hcreset(), ehci_init_sub(), ehci_pci_take_controller(), ehci_reset(), ehci_roothub_exec(), mos_reset(), musbotg_init(), musbotg_roothub_exec(), musbotg_wakeup_host(), musbotg_wakeup_peer(), ohci_controller_init(), ohci_detach(), ohci_roothub_exec(), rsu_cam_read(), rsu_delete_key(), rsu_init(), rsu_key_check(), rsu_newstate(), rum_pause(), run_delay(), ucom_cfg_open(), ucom_cfg_param(), ucom_drain(), ucom_drain_all(), uether_pause(), uhci_portreset(), uhci_reset(), uhci_restart(), uhci_roothub_exec(), uhub_attach(), uhub_reattach_port(), uipaq_attach(), upgt_device_reset(), upgt_eeprom_read(), ural_pause(), urtw_8185_tx_antenna(), urtw_8187_write_phy(), urtw_8187b_cmd_reset(), urtw_8225_isv2(), urtw_8225_rf_init(), urtw_8225_rf_set_chan(), urtw_8225_set_txpwrlvl(), urtw_8225_usb_init(), urtw_8225_write_c(), urtw_8225v2_rf_init(), urtw_8225v2_rf_set_chan(), urtw_8225v2_set_txpwrlvl(), urtw_8225v2_setgain(), urtw_8225v2b_rf_init(), urtw_8225v2b_rf_set_chan(), urtw_8225v2b_set_txpwrlvl(), urtw_do_request(), urtw_led_mode0(), urtw_reset(), urtw_set_channel(), usb_dev_resume_peer(), usb_dev_suspend_peer(), usb_iface_is_cdrom(), usb_msc_auto_quirk(), usb_trigger_reprobe_all(), usbd_do_request_flags(), usbd_req_get_desc(), usbd_req_re_enumerate(), usbd_req_reset_port(), usbd_req_set_address(), usbd_req_warm_reset_port(), usbd_transfer_unsetup_sub(), usie_do_request(), usie_if_status_cb(), uss820dci_init(), xhci_halt_controller(), xhci_pci_take_controller(), xhci_reset_command_queue_locked(), xhci_reset_controller(), xhci_roothub_exec(), and xhci_start_controller().

◆ usbd_add_dynamic_quirk()

usb_error_t usbd_add_dynamic_quirk ( struct usb_device udev,
uint16_t  quirk 
)

Definition at line 3045 of file usb_device.c.

References usb_device::autoQuirk, USB_ERR_NOMEM, and USB_MAX_AUTO_QUIRK.

◆ usbd_clear_stall_callback()

◆ usbd_copy_in()

void usbd_copy_in ( struct usb_page_cache cache,
usb_frlength_t  offset,
const void *  ptr,
usb_frlength_t  len 
)

Definition at line 166 of file usb_busdma.c.

References usb_page_search::buffer, len, usb_page_search::length, offset, USB_ADD_BYTES, and usbd_get_page().

Referenced by atmegadci_setup_rx(), atp_reset_callback(), aue_bulk_write_callback(), avr32dci_setup_rx(), axe_bulk_write_callback(), axge_bulk_write_callback(), cdce_intr_write_callback(), cdceem_send_data(), cdceem_send_echo(), cdceem_send_echo_response(), cp2112iic_intr_write_callback(), cue_bulk_write_callback(), dwc_otg_read_fifo(), kue_bulk_write_callback(), muge_bulk_write_callback(), musbotg_dev_ctrl_data_rx(), musbotg_dev_ctrl_setup_rx(), musbotg_dev_data_rx(), musbotg_host_ctrl_data_rx(), musbotg_host_data_rx(), rum_bulk_write_callback(), run_bulk_tx_callbackN(), smsc_bulk_write_callback(), ubser_write_callback(), ucom_get_data(), ucycom_ctrl_write_callback(), udav_bulk_write_callback(), ufoma_ctrl_read_callback(), ufoma_ctrl_write_callback(), uftdi_write_callback(), uhci_isoc_done(), uhci_non_isoc_done_sub(), uhid_read_callback(), uhid_snes_status_callback(), uhid_write_callback(), uhso_mux_read_callback(), uhso_mux_write_callback(), ukbd_set_leds_callback(), ulpt_status_callback(), umass_t_bbb_command_callback(), umass_t_bbb_reset1_callback(), umass_t_cbi_command_callback(), umass_t_cbi_reset1_callback(), ural_bulk_write_callback(), ure_bulk_write_callback(), urndis_bulk_write_callback(), usb_do_clear_stall_callback(), usb_handle_request(), usbd_clear_stall_callback(), usbd_do_request_flags(), usbhid_ctrl_callback(), usbhid_intr_out_callback(), usie_if_tx_callback(), uslcom_control_callback(), uss820dci_setup_rx(), zyd_bulk_write_callback(), and zyd_intr_write_callback().

Here is the call graph for this function:

◆ usbd_copy_in_user()

int usbd_copy_in_user ( struct usb_page_cache cache,
usb_frlength_t  offset,
const void *  ptr,
usb_frlength_t  len 
)

Referenced by usbd_do_request_flags().

Here is the caller graph for this function:

◆ usbd_copy_out()

void usbd_copy_out ( struct usb_page_cache cache,
usb_frlength_t  offset,
void *  ptr,
usb_frlength_t  len 
)

Definition at line 283 of file usb_busdma.c.

References usb_page_search::buffer, len, usb_page_search::length, offset, USB_ADD_BYTES, and usbd_get_page().

Referenced by aue_bulk_read_callback(), aue_intr_callback(), axe_rx_frame(), axe_rxeof(), axge_rx_frame(), axge_rxeof(), cdce_intr_read_callback(), cdceem_bulk_read_callback(), cdceem_handle_cmd(), cdceem_handle_data(), cp2112iic_intr_read_callback(), cue_bulk_read_callback(), dwc_otg_host_setup_tx(), dwc_otg_setup_rx(), dwc_otg_write_fifo(), kue_bulk_read_callback(), mos_bulk_read_callback(), mos_intr_callback(), muge_bulk_read_callback(), musbotg_dev_ctrl_data_tx(), musbotg_dev_data_tx(), musbotg_host_ctrl_data_tx(), musbotg_host_ctrl_setup_tx(), musbotg_host_data_tx(), rue_bulk_read_callback(), rue_intr_callback(), rum_bulk_read_callback(), smsc_bulk_read_callback(), u3g_intr_callback(), uath_intr_rx_callback(), ubsa_intr_callback(), ubser_read_callback(), uchcom_intr_callback(), ucom_put_data(), ucycom_intr_read_callback(), udav_bulk_read_callback(), udbp_bulk_read_callback(), uep_intr_callback(), uether_rxbuf(), ufoma_intr_callback(), uftdi_read_callback(), ugold_intr_callback(), uhci_mem_layout_fixup(), uhid_snes_status_callback(), uhid_write_callback(), uhso_bs_intr_callback(), uhso_ifnet_read_callback(), ukbd_intr_callback(), ulpt_status_callback(), umass_t_bbb_status_callback(), umass_t_cbi_status_callback(), umcs7840_intr_callback(), umct_intr_callback_sub(), umodem_intr_read_callback(), ums_intr_callback(), uplcom_intr_callback(), ural_bulk_read_callback(), ure_bulk_read_callback(), ure_makembuf(), urndis_bulk_read_callback(), usb_handle_request(), usbd_control_transfer_did_data(), usbd_control_transfer_init(), usbd_do_request_flags(), usbhid_ctrl_callback(), usbhid_intr_in_callback(), usbpf_xfertap(), usie_if_status_callback(), usie_uc_rx_callback(), usie_uc_status_callback(), uslcom_control_callback(), uvscom_intr_callback(), wmt_intr_callback(), wsp_intr_callback(), xhci_setup_generic_chain_sub(), zyd_bulk_read_callback(), zyd_intr_read_callback(), and zyd_rx_data().

Here is the call graph for this function:

◆ usbd_copy_out_user()

int usbd_copy_out_user ( struct usb_page_cache cache,
usb_frlength_t  offset,
void *  ptr,
usb_frlength_t  len 
)

Referenced by usbd_do_request_flags().

Here is the caller graph for this function:

◆ usbd_device_attached()

uint8_t usbd_device_attached ( struct usb_device udev)

Definition at line 2885 of file usb_device.c.

References usb_device::state, and USB_STATE_DETACHED.

◆ usbd_do_request_flags()

usb_error_t usbd_do_request_flags ( struct usb_device udev,
struct mtx *  mtx,
struct usb_device_request req,
void *  data,
uint16_t  flags,
uint16_t *  actlen,
usb_timeout_t  timeout 
)

Definition at line 405 of file usb_request.c.

References usb_xfer::actlen, usb_xfer::aframes, usb_device::bus, usb_device::ctrl_xfer, usb_device::ctrlreq_cv, data, desc, DPRINTF, usb_xfer::error, usb_xfer::flags, usb_xfer::frbuffers, usb_xfer_flags::manual_status, req, usb_xfer_flags::short_xfer_ok, usb_device::state, usb_xfer::timeout, UGETW, USB_ADD_BYTES, USB_BUS_LOCK, USB_BUS_UNLOCK, USB_DELAY_STATUS_STAGE, USB_ERR_CANCELLED, USB_ERR_INVAL, USB_ERR_NOMEM, USB_ERR_NORMAL_COMPLETION, USB_ERR_NOT_CONFIGURED, USB_ERR_SHORT_XFER, USB_ERR_STALLED, USB_ERR_TIMEOUT, USB_MS_TO_TICKS, USB_MTX_ASSERT, USB_MTX_LOCK, USB_MTX_UNLOCK, usb_pause_mtx(), USB_SHORT_XFER_OK, USB_STATE_POWERED, USB_USER_DATA_PTR, USB_XFER_LOCK, USB_XFER_UNLOCK, usbd_copy_in(), usbd_copy_in_user(), usbd_copy_out(), usbd_copy_out_user(), usbd_ctrl_lock(), usbd_ctrl_transfer_setup(), usbd_ctrl_unlock(), usbd_errstr(), usbd_get_hr_func(), usbd_transfer_pending(), usbd_transfer_start(), usbd_transfer_stop(), usbd_xfer_frame_len(), usbd_xfer_max_len(), usbd_xfer_set_frame_len(), usbd_xfer_set_frames(), UT_READ, usb_xfer_root::xfer_mtx, and usb_xfer::xroot.

Referenced by rsu_do_request(), rum_do_request(), run_do_request(), u3g_huawei_init(), u3g_sierra_init(), ubser_attach(), udl_ctrl_msg(), uhid_snes_reset(), uhso_probe_iface_auto(), uipaq_attach(), uled_ctrl_msg(), ulpt_attach(), ulpt_reset(), ural_do_request(), urndis_ctrl_msg(), urtw_do_request(), usbd_do_request_proc(), usbd_req_get_desc(), usbd_req_get_port_status(), usbd_req_set_address(), usie_autoinst(), usie_if_status_cb(), uslcom_get_partnum(), and uvisor_init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ usbd_dummy_timeout()

void usbd_dummy_timeout ( void *  arg)

Definition at line 78 of file usb_core.c.

◆ usbd_errstr()

const char * usbd_errstr ( usb_error_t  error)

Definition at line 93 of file usb_error.c.

References USB_ERR_MAX, and usb_errstr_table.

Referenced by aue_bulk_read_callback(), aue_bulk_write_callback(), axe_bulk_read_callback(), axe_bulk_write_callback(), bbb_status_callback(), cdce_bulk_read_callback(), cdce_bulk_write_callback(), cdceem_bulk_read_callback(), cdceem_bulk_write_callback(), cfumass_attach(), cfumass_t_command_callback(), cfumass_t_data_callback(), cfumass_t_status_callback(), cue_bulk_read_callback(), cue_bulk_write_callback(), g_audio_attach(), g_audio_isoc_read_callback(), g_audio_isoc_write_callback(), g_keyboard_attach(), g_keyboard_intr_callback(), g_modem_attach(), g_modem_bulk_read_callback(), g_modem_bulk_write_callback(), g_modem_intr_callback(), g_mouse_attach(), g_mouse_intr_callback(), ipheth_bulk_read_callback(), ipheth_bulk_write_callback(), kue_bulk_read_callback(), kue_bulk_write_callback(), kue_load_fw(), mos_bulk_read_callback(), mos_bulk_write_callback(), muge_bulk_read_callback(), muge_bulk_write_callback(), rsu_attach(), rsu_do_request(), rue_bulk_read_callback(), rue_bulk_write_callback(), rum_attach(), rum_bulk_write_callback(), rum_do_request(), rum_eeprom_read(), rum_load_microcode(), rum_newstate(), rum_read_multi(), rum_set_power_state(), rum_write_multi(), run_attach(), run_bulk_tx_callbackN(), run_do_request(), smsc_bulk_read_callback(), smsc_bulk_write_callback(), uark_cfg_write(), uath_attach(), ubsa_cfg_request(), ubser_attach(), ubser_cfg_set_break(), uchcom_attach(), ucycom_attach(), ucycom_cfg_write(), ucycom_ctrl_write_callback(), udav_bulk_read_callback(), udav_bulk_write_callback(), udbp_attach(), udl_attach(), udl_ctrl_msg(), uep_attach(), ufoma_ctrl_read_callback(), ufoma_ctrl_write_callback(), ugold_attach(), uhid_attach(), uhso_attach(), uhso_attach_ifnet(), uhso_attach_muxserial(), uhso_bs_cfg(), uhso_bs_read_callback(), uhso_bs_write_callback(), uhso_ifnet_read_callback(), uhso_ifnet_write_callback(), uhso_mux_intr_callback(), uhso_mux_read_callback(), uhso_mux_write_callback(), uhso_probe_iface_auto(), uhso_radio_ctrl(), uhub_attach(), uhub_explore_handle_re_enumerate(), uhub_query_info(), uhub_read_port_status(), uhub_reattach_port(), ukbd_attach(), ukbd_intr_callback(), ukbd_set_leds_callback(), ulpt_attach(), ulpt_status_callback(), umass_attach(), umass_bbb_get_max_lun(), umass_t_bbb_status_callback(), umass_t_cbi_status_callback(), umass_tr_error(), umcs7840_get_reg_sync(), umcs7840_get_UART_reg_sync(), umcs7840_set_reg_sync(), umcs7840_set_UART_reg_sync(), umct_cfg_do_request(), umoscom_attach(), ums_attach(), upgt_attach(), uplcom_attach(), uplcom_pl2303_do(), ural_attach(), ural_bulk_write_callback(), ural_do_request(), ural_eeprom_read(), ural_read(), ural_read_multi(), ural_set_testmode(), ural_write(), ural_write_multi(), ure_bulk_read_callback(), ure_bulk_write_callback(), urio_attach(), urndis_bulk_read_callback(), urndis_bulk_write_callback(), urndis_ctrl_send(), urtw_attach(), urtw_do_request(), urtw_stop(), usb_alloc_device(), usb_bus_attach(), usb_dev_resume_peer(), usb_handle_iface_request(), usb_msc_eject(), usb_temp_setup(), usb_trigger_reprobe_on_off(), usbd_do_request_flags(), usbd_req_re_enumerate(), usbd_req_reset_port(), usbd_req_warm_reset_port(), usbd_set_config_index(), usbd_setup_device_desc(), usbd_transfer_done(), usbhid_attach(), usbhid_ctrl_callback(), usbhid_get_rdesc(), usbhid_intr_setup(), usie_attach(), usie_do_request(), usie_if_rx_callback(), usie_if_status_callback(), usie_if_status_cb(), usie_if_tx_callback(), usie_uc_status_callback(), uslcom_attach(), uslcom_control_callback(), ustorage_fs_attach(), uvisor_attach(), uvisor_cfg_close(), uvscom_cfg_read_status(), uvscom_cfg_write(), wmt_attach(), wsp_attach(), zyd_attach(), zyd_bulk_read_callback(), zyd_bulk_write_callback(), zyd_get_macaddr(), zyd_intr_read_callback(), and zyd_intr_write_callback().

◆ usbd_filter_power_mode()

uint8_t usbd_filter_power_mode ( struct usb_device udev,
uint8_t  power_mode 
)

Definition at line 2920 of file usb_hub.c.

References usb_device::bus, usb_bus_methods::get_power_mode, and usb_bus::methods.

Referenced by usb_alloc_device(), and usbd_set_power_mode().

Here is the caller graph for this function:

◆ usbd_find_descriptor()

void * usbd_find_descriptor ( struct usb_device udev,
void *  id,
uint8_t  iface_index,
uint8_t  type,
uint8_t  type_mask,
uint8_t  subtype,
uint8_t  subtype_mask 
)

Definition at line 2395 of file usb_device.c.

References usb_endpoint_descriptor::bDescriptorType, desc, type, UDESC_INTERFACE, usb_desc_foreach(), usbd_get_config_descriptor(), usbd_get_iface(), and usbd_get_interface_descriptor().

Referenced by cdce_attach(), uhso_attach_muxserial(), umodem_attach(), umodem_get_desc(), and urndis_attach().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ usbd_frame_zero()

void usbd_frame_zero ( struct usb_page_cache cache,
usb_frlength_t  offset,
usb_frlength_t  len 
)

Definition at line 339 of file usb_busdma.c.

References usb_page_search::buffer, len, usb_page_search::length, offset, and usbd_get_page().

Referenced by ipheth_bulk_write_callback(), kue_bulk_write_callback(), rue_bulk_write_callback(), run_bulk_tx_callbackN(), and udav_bulk_write_callback().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ usbd_get_bus_index()

uint8_t usbd_get_bus_index ( struct usb_device udev)

Definition at line 2668 of file usb_device.c.

References usb_bus::bdev, and usb_device::bus.

Referenced by uftdi_probe().

Here is the caller graph for this function:

◆ usbd_get_config_descriptor()

◆ usbd_get_device_descriptor()

struct usb_device_descriptor * usbd_get_device_descriptor ( struct usb_device udev)

Definition at line 2608 of file usb_device.c.

References usb_device::ddesc.

Referenced by kue_load_fw(), uftdi_devtype_setup(), and uplcom_attach().

Here is the caller graph for this function:

◆ usbd_get_device_index()

uint8_t usbd_get_device_index ( struct usb_device udev)

Definition at line 2674 of file usb_device.c.

References usb_device::device_index.

Referenced by uftdi_probe().

Here is the caller graph for this function:

◆ usbd_get_endpoint()

◆ usbd_get_endpoint_mode()

uint8_t usbd_get_endpoint_mode ( struct usb_device udev,
struct usb_endpoint ep 
)

Definition at line 3092 of file usb_device.c.

References usb_endpoint::ep_mode.

◆ usbd_get_ep_by_addr()

struct usb_endpoint * usbd_get_ep_by_addr ( struct usb_device udev,
uint8_t  ea_val 
)

◆ usbd_get_iface()

◆ usbd_get_interface_altindex()

uint8_t usbd_get_interface_altindex ( struct usb_interface iface)

Definition at line 2662 of file usb_device.c.

References usb_interface::alt_index.

◆ usbd_get_interface_descriptor()

◆ usbd_get_isoc_fps()

uint32_t usbd_get_isoc_fps ( struct usb_device udev)

Definition at line 2595 of file usb_device.c.

References usb_device::speed, USB_SPEED_FULL, and USB_SPEED_LOW.

◆ usbd_get_max_frame_length()

◆ usbd_get_mode()

enum usb_hc_mode usbd_get_mode ( struct usb_device udev)

Definition at line 2579 of file usb_device.c.

References usb_device::flags, and usb_device_flags::usb_mode.

Referenced by cdce_bulk_read_callback(), cdce_bulk_write_callback(), cdce_init(), cdce_intr_read_callback(), cdce_intr_write_callback(), and cdceem_init().

Here is the caller graph for this function:

◆ usbd_get_page()

void usbd_get_page ( struct usb_page_cache pc,
usb_frlength_t  offset,
struct usb_page_search res 
)

Definition at line 86 of file usb_busdma.c.

References usb_page_search::buffer, usb_page_cache::buffer, usb_page_search::length, offset, USB_ADD_BYTES, and USB_PAGE_SIZE.

Referenced by atmegadci_data_rx(), atmegadci_data_tx(), avr32dci_data_rx(), avr32dci_data_tx(), dwc_otg_read_fifo(), dwc_otg_write_fifo(), ehci_device_isoc_fs_enter(), ehci_device_isoc_hs_enter(), ehci_init(), ehci_init_sub(), ehci_setup_standard_chain_sub(), ehci_xfer_setup(), musbotg_dev_ctrl_data_rx(), musbotg_dev_ctrl_data_tx(), musbotg_dev_data_rx(), musbotg_dev_data_tx(), musbotg_host_ctrl_data_rx(), musbotg_host_ctrl_data_tx(), musbotg_host_data_rx(), musbotg_host_data_tx(), ohci_controller_init(), ohci_device_isoc_enter(), ohci_init(), ohci_init_ed(), ohci_setup_standard_chain_sub(), ohci_xfer_setup(), ucom_get_data(), ucom_put_data(), uhci_init(), uhci_init_qh(), uhci_init_td(), uhci_isoc_done(), uhci_mem_layout_fixup(), uhci_non_isoc_done_sub(), uhci_restart(), uhci_xfer_setup(), uhso_mux_intr_callback(), uhso_mux_write_callback(), usb_pc_buffer_is_aligned(), usbd_copy_in(), usbd_copy_out(), usbd_frame_zero(), usbd_transfer_setup_sub(), usbd_xfer_get_frame_buffer(), uss820dci_data_rx(), uss820dci_data_tx(), xhci_alloc_device_ext(), xhci_configure_device(), xhci_configure_endpoint(), xhci_configure_mask(), xhci_configure_reset_endpoint(), xhci_device_state_change(), xhci_do_command(), xhci_get_endpoint_ext(), xhci_get_endpoint_state(), xhci_interrupt_poll(), xhci_reset_command_queue_locked(), xhci_set_address(), xhci_set_slot_pointer(), xhci_setup_generic_chain_sub(), xhci_start_controller(), and xhci_xfer_setup().

◆ usbd_get_speed()

◆ usbd_in_polling_mode()

int usbd_in_polling_mode ( void  )

Definition at line 72 of file usb_core.c.

References USB_IN_POLLING_MODE_VALUE.

◆ usbd_interface_count()

usb_error_t usbd_interface_count ( struct usb_device udev,
uint8_t *  count 
)

◆ usbd_lookup_id_by_info()

◆ usbd_lookup_id_by_uaa()

◆ usbd_m_copy_in()

◆ usbd_set_alt_interface_index()

usb_error_t usbd_set_alt_interface_index ( struct usb_device udev,
uint8_t  iface_index,
uint8_t  alt_index 
)

◆ usbd_set_endpoint_mode()

usb_error_t usbd_set_endpoint_mode ( struct usb_device udev,
struct usb_endpoint ep,
uint8_t  ep_mode 
)

Definition at line 3065 of file usb_device.c.

References usb_device::bus, usb_endpoint::ep_mode, error, usb_bus::methods, usb_bus_methods::set_endpoint_mode, USB_EP_MODE_DEFAULT, USB_ERR_INVAL, usbd_enum_lock(), and usbd_enum_unlock().

Referenced by usb_init_endpoint().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ usbd_set_parent_iface()

void usbd_set_parent_iface ( struct usb_device udev,
uint8_t  iface_index,
uint8_t  parent_index 
)

Definition at line 1395 of file usb_device.c.

References usb_interface::parent_iface_index, and usbd_get_iface().

Referenced by cdce_attach(), g_audio_attach(), g_modem_attach(), u3g_attach(), ufoma_modem_setup(), ugensa_attach(), ugold_attach(), umodem_attach(), uplcom_attach(), and usie_attach().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ usbd_set_pnpinfo()

usb_error_t usbd_set_pnpinfo ( struct usb_device udev,
uint8_t  iface_index,
const char *  pnpinfo 
)

Definition at line 3021 of file usb_device.c.

References usb_interface::pnpinfo, USB_ERR_INVAL, USB_ERR_NOMEM, and usbd_get_iface().

Referenced by ucom_set_pnpinfo_usb().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ usbd_set_power_mode()

void usbd_set_power_mode ( struct usb_device udev,
uint8_t  power_mode 
)

Definition at line 2896 of file usb_hub.c.

References usb_device::bus, usb_device::power_mode, usb_bus_power_update(), usb_needs_explore(), USB_POWER_MODE_OFF, USB_POWER_MODE_ON, USB_POWER_MODE_SAVE, and usbd_filter_power_mode().

Referenced by cfumass_attach(), uhub_attach(), usie_attach(), and ustorage_fs_attach().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ usbd_start_re_enumerate()

void usbd_start_re_enumerate ( struct usb_device udev)

Definition at line 2947 of file usb_hub.c.

References usb_device::bus, usb_device::re_enumerate_wait, usb_needs_explore(), USB_RE_ENUM_DONE, and USB_RE_ENUM_START.

Referenced by usb_do_clear_stall_callback().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ usbd_start_set_config()

usb_error_t usbd_start_set_config ( struct usb_device udev,
uint8_t  index 
)

◆ usbd_transfer_clear_stall()

void usbd_transfer_clear_stall ( struct usb_xfer xfer)

◆ usbd_transfer_drain()

◆ usbd_transfer_pending()

◆ usbd_transfer_poll()

◆ usbd_transfer_setup()

usb_error_t usbd_transfer_setup ( struct usb_device udev,
const uint8_t *  ifaces,
struct usb_xfer **  pxfer,
const struct usb_config setup_start,
uint16_t  n_setup,
void *  priv_sc,
struct mtx *  priv_mtx 
)

Definition at line 987 of file usb_transfer.c.

References usb_xfer::address, usb_device::address, usb_setup_params::buf, usb_config::bufsize, usb_device::bus, usb_xfer_root::bus, usb_bus::bus_mtx, usb_config::callback, usb_xfer_queue::command, usb_setup_params::curr_setup, usb_setup_params::curr_xfer, usb_xfer_root::cv_drain, usb_bus::dma_bits, usb_setup_params::dma_page_cache_ptr, usb_setup_params::dma_page_ptr, usb_xfer_root::dma_parent_tag, usb_setup_params::dma_tag_max, usb_setup_params::dma_tag_p, usb_xfer_root::done_m, usb_xfer_root::done_p, usb_xfer_root::done_q, DPRINTF, usb_device_scratch::dummy, usb_xfer::endpoint, usb_endpoint::ep_mode, usb_setup_params::err, error, usb_device::flags, usb_config::flags, usb_setup_params::hc_max_packet_count, usb_done_msg::hdr, usb_config::if_index, usb_xfer_root::memory_base, usb_xfer_root::memory_size, usb_bus::methods, usb_setup_params::methods, usb_endpoint::methods, n, usb_xfer_flags::no_pipe_ok, usb_device_scratch::parm, usb_proc_msg::pm_callback, usb_xfer::priv_sc, usb_endpoint::refcount_alloc, usb_device::scratch, usb_xfer_root::setup_refcount, usb_setup_params::size, usb_setup_params::speed, usb_xfer::stream_id, usb_config::stream_id, usb_xfer::timeout_handle, usb_xfer_root::udev, usb_setup_params::udev, USB_ADD_BYTES, usb_bdma_done_event(), usb_bdma_work_loop(), USB_BUS_LOCK, USB_BUS_UNLOCK, usb_callback_proc(), usb_callout_init_mtx, usb_control_ep_cfg, usb_control_ep_quirk_cfg, usb_dma_tag_setup(), USB_EP_MAX, USB_EP_MODE_DEFAULT, USB_EP_MODE_STREAMS, USB_EP_REF_MAX, USB_ERR_BAD_BUFSIZE, USB_ERR_INVAL, USB_ERR_NO_CALLBACK, USB_ERR_NO_PIPE, USB_ERR_NOMEM, USB_HOST_ALIGN, USB_MAX_EP_STREAMS, usb_device_flags::usb_mode, usb_config::usb_mode, USB_MODE_DUAL, USB_SPEED_MAX, usbd_callback_wrapper(), usbd_ctrl_lock(), usbd_ctrl_unlock(), usbd_get_endpoint(), usbd_get_speed(), usbd_transfer_setup_has_bulk(), usbd_transfer_unsetup(), usbd_transfer_unsetup_sub(), usb_setup_params::xfer_length_ptr, usb_xfer_root::xfer_mtx, usb_xfer_root::xfer_page_cache_end, usb_setup_params::xfer_page_cache_ptr, usb_xfer_root::xfer_page_cache_start, usb_bus_methods::xfer_setup, usb_device_scratch::xfer_setup, usb_xfer::xroot, and usb_done_msg::xroot.

Referenced by aue_attach(), axe_attach(), axge_attach(), bbb_attach(), cdce_attach(), cdceem_attach(), cfumass_attach(), cp2112iic_attach(), cue_attach(), g_audio_attach(), g_keyboard_attach(), g_modem_attach(), g_mouse_attach(), ipheth_attach(), kue_attach(), mos_attach(), muge_attach(), rsu_attach(), rue_attach(), rum_attach(), run_attach(), smsc_attach(), u3g_attach(), uark_attach(), uath_attach(), ubsa_attach(), ubser_attach(), uchcom_attach(), ucycom_attach(), udav_attach(), udbp_attach(), udl_attach(), uep_attach(), ufoma_attach(), ufoma_modem_setup(), uftdi_attach(), ugensa_attach(), ugold_attach(), uhid_attach(), uhid_snes_attach(), uhso_attach(), uhso_attach_bulkserial(), uhso_attach_ifnet(), uhso_attach_muxserial(), uhub_attach(), uipaq_attach(), ukbd_attach(), ulpt_attach(), umass_attach(), umcs7840_attach(), umct_attach(), umodem_attach(), umoscom_attach(), ums_attach(), upgt_attach(), uplcom_attach(), ural_attach(), ure_attach(), urio_attach(), urndis_attach(), urtw_attach(), usbd_ctrl_transfer_setup(), usbhid_intr_setup(), usie_attach(), uslcom_attach(), ustorage_fs_attach(), uvisor_attach(), uvscom_attach(), wmt_attach(), wsp_attach(), and zyd_attach().

Here is the call graph for this function:

◆ usbd_transfer_start()

void usbd_transfer_start ( struct usb_xfer xfer)

Definition at line 1948 of file usb_transfer.c.

References usb_xfer_root::bus, usb_xfer::flags_int, usb_xfer_flags_int::started, usb_xfer_flags_int::transferring, USB_BUS_LOCK, USB_BUS_UNLOCK, USB_XFER_LOCK_ASSERT, usbd_callback_ss_done_defer(), and usb_xfer::xroot.

Referenced by aue_start(), axe_start(), axge_start(), bbb_command_start(), bbb_raw_write(), bbb_transfer_start(), cdce_handle_request(), cdce_init(), cdce_start(), cdceem_start(), cfumass_transfer_start(), cp2112iic_attach(), cp2112iic_send_req(), cue_start(), fg_interpret_sensor_data(), g_audio_attach(), g_audio_isoc_read_callback(), g_audio_timeout(), g_keyboard_timeout(), g_modem_bulk_read_callback(), g_modem_bulk_write_callback(), g_modem_timeout(), g_mouse_button_press_timeout(), g_mouse_cursor_update_timeout(), ipheth_start(), kue_start(), mos_start(), muge_start(), ng_udbp_connect(), ng_udbp_rcvdata(), rsu_fw_cmd(), rsu_fw_loadsection(), rsu_init(), rsu_tx_start(), rue_start(), rum_init(), rum_sendprot(), rum_tx_data(), rum_tx_mgt(), rum_tx_raw(), run_init_locked(), run_sendprot(), run_tx(), run_tx_mgt(), run_tx_param(), smsc_start(), u3g_start_read(), u3g_start_write(), uark_start_read(), uark_start_write(), uath_cmdsend(), uath_dataflush(), uath_init(), uath_tx_start(), ubsa_start_read(), ubsa_start_write(), ubser_attach(), ubser_start_read(), ubser_start_write(), uchcom_start_read(), uchcom_start_write(), ucycom_start_read(), ucycom_start_write(), udav_start(), udbp_bulk_read_callback(), udbp_bulk_read_clear_stall_callback(), udbp_bulk_read_complete(), udbp_bulk_write_callback(), udbp_bulk_write_clear_stall_callback(), udl_callout(), udl_cmd_buf_send(), uep_start_read(), ufoma_intr_callback(), ufoma_start_read(), ufoma_start_write(), uftdi_start_read(), uftdi_start_write(), ugensa_start_read(), ugensa_start_write(), ugold_attach(), uhid_snes_start_read(), uhid_snes_watchdog(), uhid_start_read(), uhid_start_write(), uhso_if_start(), uhso_mux_intr_callback(), uhso_mux_read_callback(), uhso_probe_iface(), uhso_ucom_start_read(), uhso_ucom_start_write(), uhso_ucom_stop_read(), uhub_attach(), uipaq_start_read(), uipaq_start_write(), ukbd_attach(), ukbd_get_key(), ukbd_set_leds(), ulpt_start_read(), ulpt_start_write(), ulpt_watchdog(), umass_command_start(), umass_transfer_start(), umcs7840_start_read(), umcs7840_start_write(), umct_start_read(), umct_start_write(), umodem_start_read(), umodem_start_write(), umoscom_start_read(), umoscom_start_write(), ums_start_rx(), upgt_bulk_tx(), upgt_fw_load(), upgt_init(), uplcom_start_read(), uplcom_start_write(), ural_init(), ural_sendprot(), ural_tx_bcn(), ural_tx_data(), ural_tx_mgt(), ural_tx_raw(), ure_start(), urio_read_callback(), urio_read_clear_stall_callback(), urio_start_read(), urio_start_write(), urio_write_callback(), urio_write_clear_stall_callback(), urndis_attach(), urndis_start(), urtw_init(), urtw_rx_enable(), urtw_tx_start(), usbd_clear_stall_proc(), usbd_ctrl_transfer_setup(), usbd_do_request_flags(), usbhid_intr_setup(), usbhid_intr_start(), usbhid_sync_xfer(), usie_cns_req(), usie_if_init(), usie_if_start(), usie_uc_cfg_open(), usie_uc_start_read(), usie_uc_start_write(), uslcom_start_read(), uslcom_start_write(), uslcom_watchdog(), ustorage_fs_transfer_start(), uvisor_start_read(), uvisor_start_write(), uvscom_attach(), uvscom_start_read(), uvscom_start_write(), wmt_ev_open_11(), wsp_start_read(), zyd_cmd(), zyd_init_locked(), and zyd_tx_start().

Here is the call graph for this function:

◆ usbd_transfer_stop()

void usbd_transfer_stop ( struct usb_xfer xfer)

Definition at line 1984 of file usb_transfer.c.

References usb_xfer_root::bus, usb_xfer_flags_int::can_cancel_immed, usb_pipe_methods::close, usb_xfer_queue::curr, usb_xfer_flags_int::did_close, DPRINTF, usb_xfer::endpoint, usb_endpoint::endpoint_q, usb_xfer::error, usb_xfer::flags_int, usb_endpoint::methods, usb_xfer_flags_int::open, usb_xfer_flags_int::started, usb_xfer::stream_id, usb_xfer_flags_int::transferring, USB_BUS_LOCK, USB_BUS_UNLOCK, usb_command_wrapper(), USB_ERR_CANCELLED, USB_XFER_LOCK_ASSERT, and usb_xfer::xroot.

Referenced by atp_open(), aue_stop(), axe_stop(), axge_stop(), cdce_stop(), cdceem_stop(), cfumass_transfer_stop_and_drain(), cp2112iic_detach(), cp2112iic_send_req(), cue_stop(), ipheth_stop(), kue_stop(), mos_stop(), muge_stop(), ng_udbp_disconnect(), rsu_init(), rsu_stop(), rue_stop(), smsc_stop(), u3g_stop_read(), u3g_stop_write(), uark_stop_read(), uark_stop_write(), uath_abort_xfers(), ubsa_stop_read(), ubsa_stop_write(), ubser_stop_read(), ubser_stop_write(), uchcom_stop_read(), uchcom_stop_write(), ucycom_stop_read(), ucycom_stop_write(), udav_stop(), uep_start_read(), uep_stop_read(), ufoma_stop_read(), ufoma_stop_write(), uftdi_stop_read(), uftdi_stop_write(), ugensa_stop_read(), ugensa_stop_write(), uhid_snes_stop_read(), uhid_stop_read(), uhid_stop_write(), uhso_if_stop(), uhso_ucom_stop_read(), uhso_ucom_stop_write(), uipaq_stop_read(), uipaq_stop_write(), ukbd_detach(), ulpt_stop_read(), ulpt_stop_write(), umass_reset(), umcs7840_stop_read(), umcs7840_stop_write(), umct_stop_read(), umct_stop_write(), umodem_stop_read(), umodem_stop_write(), umoscom_stop_read(), umoscom_stop_write(), ums_start_rx(), ums_stop_rx(), upgt_abort_xfers_locked(), uplcom_stop_read(), uplcom_stop_write(), ure_stop(), urio_stop_read(), urio_stop_write(), urndis_stop(), urtw_abort_xfers(), usbd_do_request_flags(), usbd_transfer_drain(), usbhid_sync_xfer(), usie_if_stop(), usie_uc_cfg_close(), usie_uc_stop_read(), usie_uc_stop_write(), uslcom_stop_read(), uslcom_stop_write(), ustorage_fs_transfer_stop(), uvisor_stop_read(), uvisor_stop_write(), uvscom_detach(), uvscom_stop_read(), uvscom_stop_write(), wmt_ev_close_11(), wsp_start_read(), and wsp_stop_read().

Here is the call graph for this function:

◆ usbd_transfer_submit()

void usbd_transfer_submit ( struct usb_xfer xfer)

Definition at line 1719 of file usb_transfer.c.

References usb_xfer::actlen, usb_xfer::aframes, usb_xfer_root::bus, bus, usb_xfer_flags_int::can_cancel_immed, usb_xfer_flags_int::control_xfr, usb_xfer_flags_int::did_close, usb_xfer_flags_int::did_dma_delay, DPRINTF, usb_xfer::endpoint, usb_xfer::error, usb_xfer::flags, usb_xfer::flags_int, usb_xfer::frlengths, usb_xfer::max_frame_count, usb_endpoint::methods, usb_xfer::nframes, usb_pipe_methods::open, usb_xfer_flags_int::open, usb_xfer_flags_int::short_frames_ok, usb_xfer_flags::short_frames_ok, usb_xfer_flags_int::short_xfer_ok, usb_xfer_flags::short_xfer_ok, usb_xfer_flags::stall_pipe, usb_device::state, usb_xfer::stream_id, usb_xfer::sumlen, usb_xfer_flags_int::transferring, usb_xfer_root::udev, USB_BUS_LOCK, USB_BUS_LOCK_ASSERT, USB_BUS_UNLOCK, usb_command_wrapper(), USB_DEBUG_VAR, usb_dump_endpoint(), USB_ERR_CANCELLED, USB_ERR_INVAL, USB_ERR_STALLED, USB_GET_DATA_ISREAD, USB_STATE_POWERED, USB_XFER_LOCK_ASSERT, usbd_pipe_enter(), usbd_setup_ctrl_transfer(), usbd_transfer_dequeue(), usbd_transfer_done(), usbd_transfer_power_ref(), usb_xfer::wait_queue, and usb_xfer::xroot.

Referenced by atp_reset_callback(), atp_start_read(), aue_bulk_read_callback(), aue_bulk_write_callback(), aue_intr_callback(), axe_bulk_read_callback(), axe_bulk_write_callback(), axge_bulk_read_callback(), axge_bulk_write_callback(), bbb_command_callback(), bbb_data_read_callback(), bbb_data_write_callback(), bbb_raw_write_callback(), bbb_status_callback(), cdce_bulk_read_callback(), cdce_bulk_write_callback(), cdce_intr_read_callback(), cdce_intr_write_callback(), cdceem_bulk_read_callback(), cdceem_bulk_write_callback(), cfumass_t_command_callback(), cfumass_t_data_callback(), cfumass_t_status_callback(), cp2112iic_intr_read_callback(), cp2112iic_intr_write_callback(), cue_bulk_read_callback(), cue_bulk_write_callback(), g_audio_isoc_read_callback(), g_keyboard_intr_callback(), g_modem_bulk_read_callback(), g_modem_bulk_write_callback(), g_mouse_intr_callback(), ipheth_bulk_read_callback(), ipheth_bulk_write_callback(), kue_bulk_read_callback(), kue_bulk_write_callback(), mos_bulk_read_callback(), mos_bulk_write_callback(), muge_bulk_read_callback(), muge_bulk_write_callback(), rsu_bulk_rx_callback(), rsu_bulk_tx_callback_sub(), rue_bulk_read_callback(), rue_bulk_write_callback(), rue_intr_callback(), rum_bulk_read_callback(), rum_bulk_write_callback(), run_bulk_rx_callback(), run_bulk_tx_callbackN(), smsc_bulk_read_callback(), smsc_bulk_write_callback(), u3g_intr_callback(), u3g_read_callback(), u3g_write_callback(), uark_bulk_read_callback(), uark_bulk_write_callback(), uath_bulk_rx_callback(), uath_bulk_tx_callback(), uath_intr_rx_callback(), uath_intr_tx_callback(), ubsa_intr_callback(), ubsa_read_callback(), ubsa_write_callback(), ubser_read_callback(), ubser_write_callback(), uchcom_intr_callback(), uchcom_read_callback(), uchcom_write_callback(), ucycom_ctrl_write_callback(), ucycom_intr_read_callback(), udav_bulk_read_callback(), udav_bulk_write_callback(), udav_intr_callback(), udbp_bulk_read_callback(), udbp_bulk_write_callback(), udl_bulk_write_callback(), uep_intr_callback(), ufoma_bulk_read_callback(), ufoma_bulk_write_callback(), ufoma_ctrl_read_callback(), ufoma_ctrl_write_callback(), ufoma_intr_callback(), uftdi_read_callback(), uftdi_write_callback(), ugensa_bulk_read_callback(), ugensa_bulk_write_callback(), ugold_intr_callback(), uhid_intr_read_callback(), uhid_intr_write_callback(), uhid_read_callback(), uhid_snes_read_callback(), uhid_snes_status_callback(), uhid_write_callback(), uhso_bs_read_callback(), uhso_bs_write_callback(), uhso_ifnet_read_callback(), uhso_ifnet_write_callback(), uhso_mux_intr_callback(), uhso_mux_read_callback(), uhso_mux_write_callback(), uhub_intr_callback(), uipaq_read_callback(), uipaq_write_callback(), ukbd_intr_callback(), ukbd_set_leds_callback(), ulpt_read_callback(), ulpt_status_callback(), ulpt_write_callback(), umass_t_bbb_command_callback(), umass_t_bbb_data_read_callback(), umass_t_bbb_data_write_callback(), umass_t_bbb_reset1_callback(), umass_t_bbb_status_callback(), umass_t_cbi_command_callback(), umass_t_cbi_data_read_callback(), umass_t_cbi_data_write_callback(), umass_t_cbi_reset1_callback(), umass_t_cbi_status_callback(), umcs7840_intr_callback(), umcs7840_read_callbackN(), umcs7840_write_callbackN(), umct_intr_callback_sub(), umct_read_callback_sub(), umct_write_callback(), umodem_intr_read_callback(), umodem_read_callback(), umodem_write_callback(), umoscom_intr_callback(), umoscom_read_callback(), umoscom_write_callback(), ums_intr_callback(), upgt_bulk_rx_callback(), upgt_bulk_tx_callback(), uplcom_intr_callback(), uplcom_read_callback(), uplcom_write_callback(), ural_bulk_read_callback(), ural_bulk_write_callback(), ure_bulk_read_callback(), ure_bulk_write_callback(), urio_read_callback(), urio_write_callback(), urndis_bulk_read_callback(), urndis_bulk_write_callback(), urndis_intr_read_callback(), urtw_bulk_rx_callback(), urtw_bulk_tx_callback(), urtw_bulk_tx_status_callback(), usb_do_clear_stall_callback(), usb_handle_request_callback(), usbd_clear_stall_callback(), usbd_do_request_callback(), usbd_xfer_get_and_clr_zlp(), usbhid_ctrl_callback(), usbhid_intr_in_callback(), usbhid_intr_out_callback(), usie_if_rx_callback(), usie_if_status_callback(), usie_if_tx_callback(), usie_uc_rx_callback(), usie_uc_status_callback(), usie_uc_tx_callback(), uslcom_control_callback(), uslcom_read_callback(), uslcom_write_callback(), ustorage_fs_t_bbb_command_callback(), ustorage_fs_t_bbb_data_dump_callback(), ustorage_fs_t_bbb_data_read_callback(), ustorage_fs_t_bbb_data_write_callback(), ustorage_fs_t_bbb_status_callback(), uvisor_read_callback(), uvisor_write_callback(), uvscom_intr_callback(), uvscom_read_callback(), uvscom_write_callback(), wmt_intr_callback(), wsp_intr_callback(), zyd_bulk_read_callback(), zyd_bulk_write_callback(), zyd_intr_read_callback(), and zyd_intr_write_callback().

Here is the call graph for this function:

◆ usbd_transfer_unsetup()

void usbd_transfer_unsetup ( struct usb_xfer **  pxfer,
uint16_t  n_setup 
)

Definition at line 1431 of file usb_transfer.c.

References usb_xfer_root::bus, usb_xfer::endpoint, usb_xfer::flags_int, usb_endpoint::refcount_alloc, usb_xfer_root::setup_refcount, usb_xfer::timeout_handle, USB_ASSERT, USB_BUS_LOCK, USB_BUS_UNLOCK, usb_callout_drain, USB_XFER_LOCK, USB_XFER_UNLOCK, usbd_transfer_drain(), usbd_transfer_unsetup_sub(), and usb_xfer::xroot.

Referenced by aue_detach(), axe_detach(), axge_detach(), bbb_detach(), cdce_detach(), cdceem_attach(), cdceem_detach(), cfumass_attach(), cfumass_detach(), cp2112iic_detach(), cue_detach(), g_audio_detach(), g_keyboard_detach(), g_modem_detach(), g_mouse_detach(), ipheth_detach(), kue_detach(), mos_detach(), muge_attach(), muge_detach(), rsu_attach(), rsu_detach(), rue_detach(), rum_detach(), run_detach(), smsc_detach(), u3g_detach(), uark_detach(), uath_attach(), uath_detach(), ubsa_detach(), ubser_detach(), uchcom_detach(), ucycom_detach(), udav_detach(), udbp_detach(), udl_detach(), uep_detach(), ufoma_detach(), uftdi_detach(), ugensa_detach(), ugold_detach(), uhid_detach(), uhid_snes_detach(), uhso_attach_bulkserial(), uhso_detach(), uhub_attach(), uhub_detach(), uipaq_detach(), ukbd_detach(), ulpt_detach(), umass_detach(), umcs7840_detach(), umct_detach(), umodem_detach(), umoscom_detach(), ums_detach(), upgt_attach(), upgt_detach(), uplcom_detach(), ural_detach(), ure_attach(), ure_detach(), urio_detach(), urndis_detach(), urtw_attach(), urtw_detach(), usb_free_device(), usbd_ctrl_transfer_setup(), usbd_transfer_setup(), usbhid_intr_unsetup(), usie_detach(), uslcom_detach(), ustorage_fs_detach(), uvisor_detach(), uvscom_detach(), wmt_detach(), wsp_detach(), and zyd_detach().

Here is the call graph for this function:

◆ usbd_xfer_clr_flag()

void usbd_xfer_clr_flag ( struct usb_xfer xfer,
int  flag 
)

◆ usbd_xfer_frame_data()

void usbd_xfer_frame_data ( struct usb_xfer xfer,
usb_frcount_t  frindex,
void **  ptr,
int *  len 
)

Definition at line 2219 of file usb_transfer.c.

References usb_page_cache::buffer, usb_xfer::frbuffers, usb_xfer::frlengths, and len.

◆ usbd_xfer_frame_len()

usb_frlength_t usbd_xfer_frame_len ( struct usb_xfer xfer,
usb_frcount_t  frindex 
)

◆ usbd_xfer_get_and_clr_zlp()

uint8_t usbd_xfer_get_and_clr_zlp ( struct usb_xfer xfer)

◆ usbd_xfer_get_fps_shift()

uint8_t usbd_xfer_get_fps_shift ( struct usb_xfer xfer)

◆ usbd_xfer_get_frame()

struct usb_page_cache * usbd_xfer_get_frame ( struct usb_xfer xfer,
usb_frcount_t  frindex 
)

Definition at line 2156 of file usb_transfer.c.

References usb_xfer::frbuffers.

Referenced by atp_reset_callback(), aue_bulk_read_callback(), aue_bulk_write_callback(), aue_intr_callback(), axe_bulk_read_callback(), axe_bulk_write_callback(), axge_bulk_read_callback(), axge_bulk_write_callback(), cdce_intr_read_callback(), cdce_intr_write_callback(), cdceem_bulk_read_callback(), cdceem_handle_cmd(), cdceem_handle_data(), cdceem_send_data(), cdceem_send_echo(), cdceem_send_echo_response(), cp2112iic_intr_read_callback(), cp2112iic_intr_write_callback(), cue_bulk_read_callback(), cue_bulk_write_callback(), ipheth_bulk_write_callback(), kue_bulk_read_callback(), kue_bulk_write_callback(), mos_bulk_read_callback(), mos_bulk_write_callback(), mos_intr_callback(), muge_bulk_read_callback(), muge_bulk_write_callback(), rue_bulk_read_callback(), rue_bulk_write_callback(), rue_intr_callback(), rum_bulk_read_callback(), rum_bulk_write_callback(), run_bulk_tx_callbackN(), smsc_bulk_read_callback(), smsc_bulk_write_callback(), u3g_intr_callback(), u3g_read_callback(), u3g_write_callback(), uark_bulk_read_callback(), uark_bulk_write_callback(), uath_intr_rx_callback(), ubsa_intr_callback(), ubsa_read_callback(), ubsa_write_callback(), ubser_read_callback(), ubser_write_callback(), uchcom_intr_callback(), uchcom_read_callback(), uchcom_write_callback(), ucycom_ctrl_write_callback(), ucycom_intr_read_callback(), udav_bulk_read_callback(), udav_bulk_write_callback(), udbp_bulk_read_callback(), udbp_bulk_write_callback(), uep_intr_callback(), ufoma_bulk_read_callback(), ufoma_bulk_write_callback(), ufoma_ctrl_read_callback(), ufoma_ctrl_write_callback(), ufoma_intr_callback(), uftdi_read_callback(), uftdi_write_callback(), ugensa_bulk_read_callback(), ugensa_bulk_write_callback(), ugold_intr_callback(), uhid_intr_read_callback(), uhid_intr_write_callback(), uhid_read_callback(), uhid_snes_read_callback(), uhid_snes_status_callback(), uhid_write_callback(), uhso_bs_intr_callback(), uhso_bs_read_callback(), uhso_bs_write_callback(), uhso_ifnet_read_callback(), uhso_ifnet_write_callback(), uhso_mux_intr_callback(), uhso_mux_read_callback(), uhso_mux_write_callback(), uipaq_read_callback(), uipaq_write_callback(), ukbd_intr_callback(), ukbd_set_leds_callback(), ulpt_read_callback(), ulpt_status_callback(), ulpt_write_callback(), umass_t_bbb_command_callback(), umass_t_bbb_reset1_callback(), umass_t_bbb_status_callback(), umass_t_cbi_command_callback(), umass_t_cbi_reset1_callback(), umass_t_cbi_status_callback(), umcs7840_intr_callback(), umcs7840_read_callbackN(), umcs7840_write_callbackN(), umct_intr_callback_sub(), umct_read_callback_sub(), umct_write_callback(), umodem_intr_read_callback(), umodem_read_callback(), umodem_write_callback(), umoscom_read_callback(), umoscom_write_callback(), ums_intr_callback(), uplcom_intr_callback(), uplcom_read_callback(), uplcom_write_callback(), ural_bulk_read_callback(), ural_bulk_write_callback(), ure_bulk_read_callback(), ure_bulk_write_callback(), urio_read_callback(), urio_write_callback(), urndis_bulk_read_callback(), urndis_bulk_write_callback(), usbhid_ctrl_callback(), usbhid_intr_in_callback(), usbhid_intr_out_callback(), usie_if_status_callback(), usie_if_tx_callback(), usie_uc_rx_callback(), usie_uc_status_callback(), usie_uc_tx_callback(), uslcom_control_callback(), uslcom_read_callback(), uslcom_write_callback(), uvisor_read_callback(), uvisor_write_callback(), uvscom_intr_callback(), uvscom_read_callback(), uvscom_write_callback(), wmt_intr_callback(), wsp_intr_callback(), zyd_bulk_read_callback(), zyd_bulk_write_callback(), zyd_intr_read_callback(), zyd_intr_write_callback(), and zyd_rx_data().

◆ usbd_xfer_get_frame_buffer()

void * usbd_xfer_get_frame_buffer ( struct usb_xfer xfer,
usb_frcount_t  frindex 
)

Definition at line 2164 of file usb_transfer.c.

References usb_page_search::buffer, usb_xfer::frbuffers, and usbd_get_page().

Referenced by bbb_attach(), cfumass_attach(), uath_attach(), upgt_attach(), urtw_attach(), urtw_bulk_tx_status_callback(), and ustorage_fs_attach().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ usbd_xfer_get_priv()

◆ usbd_xfer_get_timestamp()

uint16_t usbd_xfer_get_timestamp ( struct usb_xfer xfer)

Definition at line 3669 of file usb_transfer.c.

References usb_xfer::isoc_time_complete.

◆ usbd_xfer_is_stalled()

◆ usbd_xfer_max_framelen()

usb_frlength_t usbd_xfer_max_framelen ( struct usb_xfer xfer)

Definition at line 2310 of file usb_transfer.c.

References usb_xfer::max_frame_size.

Referenced by umct_attach(), and ums_attach().

Here is the caller graph for this function:

◆ usbd_xfer_max_frames()

usb_frcount_t usbd_xfer_max_frames ( struct usb_xfer xfer)

Definition at line 2298 of file usb_transfer.c.

References usb_xfer::max_frame_count.

◆ usbd_xfer_max_len()

usb_frlength_t usbd_xfer_max_len ( struct usb_xfer xfer)

Definition at line 2304 of file usb_transfer.c.

References usb_xfer::max_data_length.

Referenced by aue_bulk_read_callback(), aue_intr_callback(), axe_bulk_read_callback(), axge_bulk_read_callback(), bbb_attach(), bbb_data_read_callback(), bbb_data_write_callback(), bbb_raw_write_callback(), cdce_intr_read_callback(), cdceem_bulk_read_callback(), cdceem_bulk_write_callback(), cdceem_send_data(), cdceem_send_echo(), cdceem_send_echo_response(), cfumass_t_data_callback(), cp2112iic_intr_read_callback(), cue_bulk_read_callback(), kue_bulk_read_callback(), mos_bulk_read_callback(), muge_bulk_read_callback(), rsu_bulk_rx_callback(), rue_bulk_read_callback(), rue_intr_callback(), rum_bulk_read_callback(), smsc_bulk_read_callback(), u3g_intr_callback(), u3g_read_callback(), uark_bulk_read_callback(), uath_intr_rx_callback(), ubsa_intr_callback(), ubsa_read_callback(), ubser_attach(), ubser_read_callback(), uchcom_intr_callback(), uchcom_read_callback(), uchcom_write_callback(), udav_bulk_read_callback(), udav_intr_callback(), udbp_bulk_read_callback(), uep_intr_callback(), ufoma_bulk_read_callback(), ufoma_intr_callback(), uftdi_read_callback(), ugensa_bulk_read_callback(), ugold_intr_callback(), uhid_intr_write_callback(), uhid_snes_open(), uhid_snes_read_callback(), uhso_bs_read_callback(), uhso_ifnet_read_callback(), uhso_mux_intr_callback(), uhub_intr_callback(), uipaq_read_callback(), ukbd_intr_callback(), ulpt_read_callback(), ulpt_write_callback(), umass_t_bbb_data_read_callback(), umass_t_bbb_data_write_callback(), umass_t_bbb_status_callback(), umass_t_cbi_data_read_callback(), umass_t_cbi_data_write_callback(), umass_t_cbi_status_callback(), umcs7840_intr_callback(), umcs7840_read_callbackN(), umcs7840_write_callbackN(), umct_attach(), umct_intr_callback_sub(), umct_read_callback_sub(), umodem_intr_read_callback(), umodem_read_callback(), umoscom_intr_callback(), umoscom_read_callback(), ums_intr_callback(), unlpt_open(), uplcom_intr_callback(), uplcom_read_callback(), ural_bulk_read_callback(), ure_bulk_read_callback(), urio_open(), urio_read_callback(), urio_write_callback(), urndis_intr_read_callback(), urtw_bulk_rx_callback(), usb_handle_request(), usbd_do_request_flags(), usbhid_intr_start(), usbhid_xfer_check_len(), usbhid_xfer_max_len(), usie_if_status_callback(), usie_uc_rx_callback(), usie_uc_status_callback(), uslcom_read_callback(), ustorage_fs_t_bbb_data_dump_callback(), ustorage_fs_t_bbb_data_read_callback(), ustorage_fs_t_bbb_data_write_callback(), uvisor_read_callback(), uvscom_intr_callback(), uvscom_read_callback(), zyd_bulk_read_callback(), and zyd_intr_read_callback().

◆ usbd_xfer_maxp_was_clamped()

uint8_t usbd_xfer_maxp_was_clamped ( struct usb_xfer xfer)

Definition at line 3679 of file usb_transfer.c.

References usb_xfer::flags_int, and usb_xfer_flags_int::maxp_was_clamped.

◆ usbd_xfer_old_frame_length()

usb_frlength_t usbd_xfer_old_frame_length ( struct usb_xfer xfer,
usb_frcount_t  frindex 
)

Definition at line 2239 of file usb_transfer.c.

References usb_xfer::frlengths, and usb_xfer::max_frame_count.

Referenced by usbpf_xfertap().

Here is the caller graph for this function:

◆ usbd_xfer_set_flag()

void usbd_xfer_set_flag ( struct usb_xfer xfer,
int  flag 
)

◆ usbd_xfer_set_frame_data()

◆ usbd_xfer_set_frame_len()

void usbd_xfer_set_frame_len ( struct usb_xfer xfer,
usb_frcount_t  frindex,
usb_frlength_t  len 
)

Definition at line 2316 of file usb_transfer.c.

References usb_xfer::frlengths, and len.

Referenced by atp_reset_callback(), atp_start_read(), aue_bulk_read_callback(), aue_bulk_write_callback(), aue_intr_callback(), axe_bulk_read_callback(), axe_bulk_write_callback(), axge_bulk_read_callback(), axge_bulk_write_callback(), bbb_command_callback(), bbb_status_callback(), cdce_intr_read_callback(), cdce_intr_write_callback(), cdceem_bulk_read_callback(), cdceem_bulk_write_callback(), cfumass_t_command_callback(), cfumass_t_status_callback(), cp2112iic_intr_read_callback(), cp2112iic_intr_write_callback(), cue_bulk_read_callback(), cue_bulk_write_callback(), ehci_non_isoc_done_sub(), ipheth_bulk_write_callback(), kue_bulk_read_callback(), kue_bulk_write_callback(), mos_bulk_read_callback(), mos_bulk_write_callback(), muge_bulk_read_callback(), muge_bulk_write_callback(), ohci_non_isoc_done_sub(), rue_bulk_read_callback(), rue_bulk_write_callback(), rue_intr_callback(), rum_bulk_read_callback(), rum_bulk_write_callback(), run_bulk_tx_callbackN(), smsc_bulk_read_callback(), smsc_bulk_write_callback(), u3g_intr_callback(), u3g_read_callback(), u3g_write_callback(), uark_bulk_read_callback(), uark_bulk_write_callback(), uath_intr_rx_callback(), ubsa_intr_callback(), ubsa_read_callback(), ubsa_write_callback(), ubser_read_callback(), ubser_write_callback(), uchcom_intr_callback(), uchcom_read_callback(), uchcom_write_callback(), ucycom_ctrl_write_callback(), ucycom_intr_read_callback(), udav_bulk_read_callback(), udav_bulk_write_callback(), udav_intr_callback(), udbp_bulk_read_callback(), udbp_bulk_write_callback(), uep_intr_callback(), ufoma_bulk_read_callback(), ufoma_bulk_write_callback(), ufoma_ctrl_read_callback(), ufoma_ctrl_write_callback(), ufoma_intr_callback(), uftdi_read_callback(), uftdi_write_callback(), ugensa_bulk_read_callback(), ugensa_bulk_write_callback(), ugold_intr_callback(), uhci_non_isoc_done_sub(), uhid_intr_read_callback(), uhid_intr_write_callback(), uhid_read_callback(), uhid_snes_read_callback(), uhid_snes_status_callback(), uhid_write_callback(), uhso_bs_read_callback(), uhso_bs_write_callback(), uhso_ifnet_read_callback(), uhso_ifnet_write_callback(), uhso_mux_intr_callback(), uhso_mux_read_callback(), uhso_mux_write_callback(), uhub_intr_callback(), uipaq_read_callback(), uipaq_write_callback(), ukbd_intr_callback(), ukbd_set_leds_callback(), ulpt_read_callback(), ulpt_status_callback(), ulpt_write_callback(), umass_t_bbb_command_callback(), umass_t_bbb_reset1_callback(), umass_t_bbb_status_callback(), umass_t_cbi_command_callback(), umass_t_cbi_reset1_callback(), umass_t_cbi_status_callback(), umcs7840_intr_callback(), umcs7840_read_callbackN(), umcs7840_write_callbackN(), umct_intr_callback_sub(), umct_read_callback_sub(), umct_write_callback(), umodem_intr_read_callback(), umodem_read_callback(), umodem_write_callback(), umoscom_intr_callback(), umoscom_read_callback(), umoscom_write_callback(), ums_intr_callback(), uplcom_intr_callback(), uplcom_read_callback(), uplcom_write_callback(), ural_bulk_read_callback(), ural_bulk_write_callback(), ure_bulk_read_callback(), ure_bulk_write_callback(), urio_read_callback(), urio_write_callback(), urndis_bulk_read_callback(), urndis_bulk_write_callback(), urndis_intr_read_callback(), urtw_bulk_tx_status_callback(), usb_do_clear_stall_callback(), usb_handle_request(), usb_handle_request_callback(), usbd_callback_wrapper_sub(), usbd_do_request_flags(), usbd_xfer_get_and_clr_zlp(), usbd_xfer_set_frame_data(), usbhid_ctrl_callback(), usbhid_intr_in_callback(), usbhid_intr_out_callback(), usie_if_status_callback(), usie_if_tx_callback(), usie_uc_rx_callback(), usie_uc_status_callback(), usie_uc_tx_callback(), uslcom_control_callback(), uslcom_read_callback(), uslcom_write_callback(), ustorage_fs_t_bbb_command_callback(), ustorage_fs_t_bbb_data_dump_callback(), ustorage_fs_t_bbb_status_callback(), uvisor_read_callback(), uvisor_write_callback(), uvscom_intr_callback(), uvscom_read_callback(), uvscom_write_callback(), wmt_intr_callback(), wsp_intr_callback(), xhci_generic_done_sub(), zyd_bulk_read_callback(), zyd_bulk_write_callback(), zyd_intr_read_callback(), and zyd_intr_write_callback().

◆ usbd_xfer_set_frame_offset()

◆ usbd_xfer_set_frames()

◆ usbd_xfer_set_interval()

void usbd_xfer_set_interval ( struct usb_xfer xfer,
int  i 
)

◆ usbd_xfer_set_priv()

void usbd_xfer_set_priv ( struct usb_xfer xfer,
void *  ptr 
)

◆ usbd_xfer_set_stall()

void usbd_xfer_set_stall ( struct usb_xfer xfer)

Definition at line 2754 of file usb_transfer.c.

References usb_xfer_root::bus, usb_xfer::flags, usb_xfer_flags::stall_pipe, USB_BUS_LOCK, USB_BUS_UNLOCK, USB_XFER_LOCK_ASSERT, and usb_xfer::xroot.

Referenced by aue_bulk_read_callback(), aue_bulk_write_callback(), aue_init(), aue_intr_callback(), axe_bulk_read_callback(), axe_bulk_write_callback(), axe_init(), axge_bulk_read_callback(), axge_bulk_write_callback(), axge_init(), cdce_bulk_read_callback(), cdce_bulk_write_callback(), cdce_init(), cdce_intr_read_callback(), cdce_intr_write_callback(), cdceem_bulk_read_callback(), cdceem_bulk_write_callback(), cdceem_init(), cfumass_t_command_callback(), cfumass_t_status_callback(), cp2112iic_intr_read_callback(), cp2112iic_intr_write_callback(), cue_bulk_read_callback(), cue_bulk_write_callback(), cue_init(), g_audio_isoc_read_callback(), g_audio_isoc_write_callback(), g_keyboard_intr_callback(), g_modem_bulk_read_callback(), g_modem_bulk_write_callback(), g_modem_intr_callback(), g_mouse_intr_callback(), ipheth_bulk_read_callback(), ipheth_bulk_write_callback(), ipheth_init(), kue_bulk_read_callback(), kue_bulk_write_callback(), kue_init(), mos_bulk_read_callback(), mos_bulk_write_callback(), mos_intr_callback(), muge_bulk_read_callback(), muge_bulk_write_callback(), muge_init(), rsu_bulk_rx_callback(), rsu_bulk_tx_callback_sub(), rue_bulk_read_callback(), rue_bulk_write_callback(), rue_init(), rue_intr_callback(), rum_bulk_read_callback(), rum_bulk_write_callback(), rum_init(), run_bulk_rx_callback(), run_bulk_tx_callbackN(), run_init_locked(), smsc_bulk_read_callback(), smsc_bulk_write_callback(), smsc_init(), u3g_attach(), u3g_intr_callback(), u3g_read_callback(), u3g_write_callback(), uark_attach(), uark_bulk_read_callback(), uark_bulk_write_callback(), uath_bulk_rx_callback(), uath_bulk_tx_callback(), uath_intr_rx_callback(), uath_intr_tx_callback(), ubsa_attach(), ubsa_intr_callback(), ubsa_read_callback(), ubsa_write_callback(), ubser_attach(), ubser_read_callback(), ubser_write_callback(), uchcom_attach(), uchcom_intr_callback(), uchcom_read_callback(), uchcom_write_callback(), ucycom_intr_read_callback(), udav_bulk_read_callback(), udav_bulk_write_callback(), udav_init(), udav_intr_callback(), udl_bulk_write_callback(), uep_intr_callback(), ufoma_attach(), ufoma_bulk_read_callback(), ufoma_bulk_write_callback(), ufoma_intr_callback(), uftdi_attach(), uftdi_read_callback(), uftdi_write_callback(), ugensa_attach(), ugensa_bulk_read_callback(), ugensa_bulk_write_callback(), ugold_intr_callback(), uhid_intr_read_callback(), uhid_intr_write_callback(), uhid_snes_open(), uhid_snes_read_callback(), uhso_bs_intr_callback(), uhso_bs_read_callback(), uhso_bs_write_callback(), uhso_ifnet_read_callback(), uhso_ifnet_write_callback(), uhso_mux_intr_callback(), uhso_mux_read_callback(), uhso_mux_write_callback(), uhub_intr_callback(), uipaq_attach(), uipaq_read_callback(), uipaq_write_callback(), ukbd_intr_callback(), ulpt_read_callback(), ulpt_write_callback(), umcs7840_attach(), umcs7840_intr_callback(), umcs7840_read_callbackN(), umcs7840_write_callbackN(), umct_intr_callback_sub(), umct_read_callback_sub(), umct_write_callback(), umodem_attach(), umodem_intr_read_callback(), umodem_intr_write_callback(), umodem_read_callback(), umodem_write_callback(), umoscom_attach(), umoscom_intr_callback(), umoscom_read_callback(), umoscom_write_callback(), ums_intr_callback(), unlpt_open(), upgt_bulk_rx_callback(), upgt_bulk_tx_callback(), uplcom_attach(), uplcom_intr_callback(), uplcom_read_callback(), uplcom_write_callback(), ural_bulk_read_callback(), ural_bulk_write_callback(), ural_init(), ure_bulk_read_callback(), ure_bulk_write_callback(), ure_init(), urndis_bulk_read_callback(), urndis_bulk_write_callback(), urndis_init(), urndis_intr_read_callback(), urtw_bulk_rx_callback(), urtw_bulk_tx_callback(), urtw_bulk_tx_status_callback(), usb_handle_request_callback(), usbhid_intr_in_callback(), usbhid_intr_out_callback(), usie_attach(), usie_if_init(), usie_if_rx_callback(), usie_if_status_callback(), usie_if_tx_callback(), usie_uc_rx_callback(), usie_uc_status_callback(), usie_uc_tx_callback(), uslcom_attach(), uslcom_read_callback(), uslcom_write_callback(), ustorage_fs_t_bbb_command_callback(), ustorage_fs_t_bbb_data_dump_callback(), ustorage_fs_t_bbb_data_read_callback(), ustorage_fs_t_bbb_data_write_callback(), ustorage_fs_t_bbb_status_callback(), uvisor_read_callback(), uvisor_write_callback(), uvscom_attach(), uvscom_intr_callback(), uvscom_read_callback(), uvscom_write_callback(), wmt_intr_callback(), wsp_intr_callback(), zyd_bulk_read_callback(), zyd_bulk_write_callback(), zyd_init_locked(), zyd_intr_read_callback(), and zyd_intr_write_callback().

◆ usbd_xfer_set_timeout()

void usbd_xfer_set_timeout ( struct usb_xfer xfer,
int  timeout 
)

◆ usbd_xfer_set_zlp()

void usbd_xfer_set_zlp ( struct usb_xfer xfer)

◆ usbd_xfer_softc()

void * usbd_xfer_softc ( struct usb_xfer xfer)

Definition at line 3602 of file usb_transfer.c.

References usb_xfer::priv_sc.

Referenced by atp_reset_callback(), aue_bulk_read_callback(), aue_bulk_write_callback(), aue_intr_callback(), axe_bulk_read_callback(), axe_bulk_write_callback(), axge_bulk_read_callback(), axge_bulk_write_callback(), bbb_command_callback(), bbb_data_clear_stall_callback(), bbb_data_read_callback(), bbb_data_write_callback(), bbb_raw_write_callback(), bbb_status_callback(), cdce_bulk_read_callback(), cdce_bulk_write_callback(), cdce_intr_read_callback(), cdce_intr_write_callback(), cdceem_bulk_read_callback(), cdceem_bulk_write_callback(), cdceem_handle_cmd(), cdceem_handle_data(), cdceem_send_data(), cdceem_send_echo(), cdceem_send_echo_response(), cfumass_t_command_callback(), cfumass_t_data_callback(), cfumass_t_status_callback(), cp2112iic_intr_read_callback(), cp2112iic_intr_write_callback(), cue_bulk_read_callback(), cue_bulk_write_callback(), g_audio_isoc_read_callback(), g_audio_isoc_write_callback(), g_keyboard_intr_callback(), g_modem_bulk_read_callback(), g_modem_bulk_write_callback(), g_mouse_intr_callback(), ipheth_bulk_read_callback(), ipheth_bulk_write_callback(), kue_bulk_read_callback(), kue_bulk_write_callback(), mos_bulk_read_callback(), mos_bulk_write_callback(), mos_intr_callback(), muge_bulk_read_callback(), muge_bulk_write_callback(), rsu_bulk_rx_callback(), rsu_bulk_tx_callback_be_bk(), rsu_bulk_tx_callback_h2c(), rsu_bulk_tx_callback_sub(), rsu_bulk_tx_callback_vi_vo(), rsu_txeof(), rue_bulk_read_callback(), rue_bulk_write_callback(), rue_intr_callback(), rum_bulk_read_callback(), rum_bulk_write_callback(), run_bulk_rx_callback(), run_bulk_tx_callbackN(), smsc_bulk_read_callback(), smsc_bulk_write_callback(), u3g_intr_callback(), u3g_read_callback(), u3g_write_callback(), uark_bulk_read_callback(), uark_bulk_write_callback(), uath_bulk_rx_callback(), uath_bulk_tx_callback(), uath_data_rxeof(), uath_data_txeof(), uath_intr_rx_callback(), uath_intr_tx_callback(), ubsa_intr_callback(), ubsa_read_callback(), ubsa_write_callback(), ubser_read_callback(), ubser_write_callback(), uchcom_intr_callback(), uchcom_read_callback(), uchcom_write_callback(), ucycom_ctrl_write_callback(), ucycom_intr_read_callback(), udav_bulk_read_callback(), udav_bulk_write_callback(), udbp_bulk_read_callback(), udbp_bulk_read_clear_stall_callback(), udbp_bulk_write_callback(), udbp_bulk_write_clear_stall_callback(), udl_bulk_write_callback(), uep_intr_callback(), ufoma_bulk_read_callback(), ufoma_bulk_write_callback(), ufoma_ctrl_read_callback(), ufoma_ctrl_write_callback(), ufoma_intr_callback(), uftdi_read_callback(), uftdi_write_callback(), ugensa_bulk_read_callback(), ugensa_bulk_write_callback(), ugold_intr_callback(), uhid_intr_read_callback(), uhid_intr_write_callback(), uhid_read_callback(), uhid_snes_read_callback(), uhid_snes_status_callback(), uhid_write_callback(), uhso_bs_intr_callback(), uhso_bs_read_callback(), uhso_bs_write_callback(), uhso_ifnet_read_callback(), uhso_ifnet_write_callback(), uhso_mux_intr_callback(), uhso_mux_read_callback(), uhso_mux_write_callback(), uhub_intr_callback(), uipaq_read_callback(), uipaq_write_callback(), ukbd_intr_callback(), ukbd_set_leds_callback(), ulpt_read_callback(), ulpt_status_callback(), ulpt_write_callback(), umass_t_bbb_command_callback(), umass_t_bbb_data_clear_stall_callback(), umass_t_bbb_data_read_callback(), umass_t_bbb_data_write_callback(), umass_t_bbb_reset1_callback(), umass_t_bbb_status_callback(), umass_t_cbi_command_callback(), umass_t_cbi_data_clear_stall_callback(), umass_t_cbi_data_read_callback(), umass_t_cbi_data_write_callback(), umass_t_cbi_reset1_callback(), umass_t_cbi_reset3_callback(), umass_t_cbi_status_callback(), umass_tr_error(), umcs7840_intr_callback(), umcs7840_read_callbackN(), umcs7840_write_callbackN(), umct_intr_callback(), umct_intr_callback_sub(), umct_read_callback(), umct_read_callback_sub(), umct_write_callback(), umodem_intr_read_callback(), umodem_read_callback(), umodem_write_callback(), umoscom_intr_callback(), umoscom_read_callback(), umoscom_write_callback(), ums_intr_callback(), upgt_bulk_rx_callback(), upgt_bulk_tx_callback(), upgt_rxeof(), uplcom_intr_callback(), uplcom_read_callback(), uplcom_write_callback(), ural_bulk_read_callback(), ural_bulk_write_callback(), ure_bulk_read_callback(), ure_bulk_write_callback(), urio_read_callback(), urio_read_clear_stall_callback(), urio_write_callback(), urio_write_clear_stall_callback(), urndis_bulk_read_callback(), urndis_bulk_write_callback(), urtw_bulk_rx_callback(), urtw_bulk_tx_callback(), urtw_bulk_tx_status_callback(), urtw_txeof(), urtw_txstatus_eof(), usbhid_ctrl_callback(), usbhid_intr_in_callback(), usbhid_intr_out_callback(), usie_if_rx_callback(), usie_if_status_callback(), usie_if_tx_callback(), usie_uc_rx_callback(), usie_uc_status_callback(), usie_uc_tx_callback(), uslcom_control_callback(), uslcom_read_callback(), uslcom_write_callback(), ustorage_fs_t_bbb_command_callback(), ustorage_fs_t_bbb_data_dump_callback(), ustorage_fs_t_bbb_data_read_callback(), ustorage_fs_t_bbb_data_write_callback(), ustorage_fs_t_bbb_status_callback(), uvisor_read_callback(), uvisor_write_callback(), uvscom_intr_callback(), uvscom_read_callback(), uvscom_write_callback(), wmt_intr_callback(), wsp_intr_callback(), zyd_bulk_read_callback(), zyd_bulk_write_callback(), zyd_intr_read_callback(), zyd_intr_write_callback(), and zyd_rx_data().

◆ usbd_xfer_state()

uint8_t usbd_xfer_state ( struct usb_xfer xfer)

Definition at line 3620 of file usb_transfer.c.

References usb_xfer::usb_state.

◆ usbd_xfer_status()

void usbd_xfer_status ( struct usb_xfer xfer,
int *  actlen,
int *  sumlen,
int *  aframes,
int *  nframes 
)

Definition at line 2247 of file usb_transfer.c.

References usb_xfer::actlen, usb_xfer::aframes, usb_xfer::nframes, and usb_xfer::sumlen.

Referenced by aue_bulk_read_callback(), aue_bulk_write_callback(), aue_intr_callback(), axe_bulk_read_callback(), axge_bulk_read_callback(), bbb_data_read_callback(), bbb_data_write_callback(), bbb_raw_write_callback(), bbb_status_callback(), cdce_bulk_read_callback(), cdce_bulk_write_callback(), cdce_intr_read_callback(), cdce_intr_write_callback(), cdceem_bulk_read_callback(), cdceem_bulk_write_callback(), cdceem_handle_cmd(), cdceem_handle_data(), cfumass_t_data_callback(), cp2112iic_intr_read_callback(), cue_bulk_read_callback(), g_audio_isoc_read_callback(), g_audio_isoc_write_callback(), g_keyboard_intr_callback(), g_modem_bulk_read_callback(), g_modem_bulk_write_callback(), g_modem_intr_callback(), g_mouse_intr_callback(), ipheth_bulk_read_callback(), ipheth_bulk_write_callback(), kue_bulk_read_callback(), mos_bulk_read_callback(), mos_intr_callback(), muge_bulk_read_callback(), rsu_rxeof(), rue_bulk_read_callback(), rue_intr_callback(), rum_bulk_read_callback(), rum_bulk_write_callback(), run_bulk_rx_callback(), run_bulk_tx_callbackN(), smsc_bulk_read_callback(), u3g_intr_callback(), u3g_read_callback(), uark_bulk_read_callback(), uath_data_rxeof(), uath_intr_rx_callback(), ubsa_intr_callback(), ubsa_read_callback(), ubser_read_callback(), uchcom_intr_callback(), uchcom_read_callback(), ucycom_intr_read_callback(), udav_bulk_read_callback(), udbp_bulk_read_callback(), uep_intr_callback(), ufoma_bulk_read_callback(), ufoma_ctrl_read_callback(), ufoma_intr_callback(), uftdi_read_callback(), ugensa_bulk_read_callback(), ugold_intr_callback(), uhid_intr_read_callback(), uhid_snes_read_callback(), uhso_bs_intr_callback(), uhso_bs_read_callback(), uhso_bs_write_callback(), uhso_ifnet_read_callback(), uhso_ifnet_write_callback(), uhso_mux_read_callback(), uhso_mux_write_callback(), uipaq_read_callback(), ukbd_intr_callback(), ulpt_read_callback(), ulpt_write_callback(), umass_t_bbb_data_read_callback(), umass_t_bbb_data_write_callback(), umass_t_bbb_status_callback(), umass_t_cbi_data_read_callback(), umass_t_cbi_data_write_callback(), umass_t_cbi_status_callback(), umcs7840_intr_callback(), umcs7840_read_callbackN(), umct_intr_callback_sub(), umct_read_callback_sub(), umodem_intr_read_callback(), umodem_intr_write_callback(), umodem_read_callback(), umoscom_intr_callback(), umoscom_read_callback(), ums_intr_callback(), upgt_rxeof(), uplcom_intr_callback(), uplcom_read_callback(), ural_bulk_read_callback(), ural_bulk_write_callback(), ure_bulk_read_callback(), urio_read_callback(), urndis_bulk_read_callback(), urndis_bulk_write_callback(), urndis_intr_read_callback(), urtw_rxeof(), urtw_txstatus_eof(), usbhid_intr_in_callback(), usie_if_rx_callback(), usie_if_status_callback(), usie_uc_rx_callback(), usie_uc_status_callback(), uslcom_read_callback(), ustorage_fs_t_bbb_data_dump_callback(), ustorage_fs_t_bbb_data_read_callback(), ustorage_fs_t_bbb_data_write_callback(), uvisor_read_callback(), uvscom_intr_callback(), uvscom_read_callback(), wmt_intr_callback(), wsp_intr_callback(), zyd_bulk_read_callback(), zyd_bulk_write_callback(), and zyd_intr_read_callback().

Variable Documentation

◆ __aligned

struct usbd_lookup_info __aligned

◆ bcdDevice_hi

uint16_t bcdDevice_hi

Definition at line 37 of file usbdi.h.

◆ bcdDevice_lo

uint16_t bcdDevice_lo

Definition at line 36 of file usbdi.h.

◆ bDeviceClass

uint8_t bDeviceClass

Definition at line 40 of file usbdi.h.

◆ bDeviceProtocol

uint8_t bDeviceProtocol

Definition at line 42 of file usbdi.h.

◆ bDeviceSubClass

uint8_t bDeviceSubClass

Definition at line 41 of file usbdi.h.

◆ bInterfaceClass

uint8_t bInterfaceClass

Definition at line 45 of file usbdi.h.

Referenced by bbb_attach().

◆ bInterfaceProtocol

uint8_t bInterfaceProtocol

Definition at line 47 of file usbdi.h.

Referenced by u3g_huawei_is_cdce().

◆ bInterfaceSubClass

uint8_t bInterfaceSubClass

Definition at line 46 of file usbdi.h.

Referenced by u3g_huawei_is_cdce().

◆ driver_info

unsigned long driver_info

Definition at line 65 of file usbdi.h.

◆ idProduct

uint16_t idProduct

Definition at line 35 of file usbdi.h.

◆ idVendor

uint16_t idVendor

Definition at line 34 of file usbdi.h.

Referenced by u3g_huawei_is_cdce().

◆ match_flag_dev_class

uint16_t match_flag_dev_class

Definition at line 8 of file usbdi.h.

◆ match_flag_dev_hi

uint16_t match_flag_dev_hi

Definition at line 6 of file usbdi.h.

◆ match_flag_dev_lo

uint16_t match_flag_dev_lo

Definition at line 5 of file usbdi.h.

◆ match_flag_dev_protocol

uint16_t match_flag_dev_protocol

Definition at line 10 of file usbdi.h.

◆ match_flag_dev_subclass

uint16_t match_flag_dev_subclass

Definition at line 9 of file usbdi.h.

◆ match_flag_int_class

uint16_t match_flag_int_class

Definition at line 11 of file usbdi.h.

◆ match_flag_int_protocol

uint16_t match_flag_int_protocol

Definition at line 14 of file usbdi.h.

◆ match_flag_int_subclass

uint16_t match_flag_int_subclass

Definition at line 13 of file usbdi.h.

◆ match_flag_product

uint16_t match_flag_product

Definition at line 4 of file usbdi.h.

◆ match_flag_unused

uint16_t match_flag_unused

Definition at line 15 of file usbdi.h.

◆ match_flag_vendor

uint16_t match_flag_vendor

Definition at line 3 of file usbdi.h.

◆ usb_device_id_assert

char usb_device_id_assert[(sizeof(struct usb_device_id)==32) ? 1 :-1]
extern