FreeBSD kernel usb device Code
usb_transfer.c File Reference
#include <sys/stdint.h>
#include <sys/stddef.h>
#include <sys/param.h>
#include <sys/queue.h>
#include <sys/types.h>
#include <sys/systm.h>
#include <sys/kernel.h>
#include <sys/bus.h>
#include <sys/module.h>
#include <sys/lock.h>
#include <sys/mutex.h>
#include <sys/condvar.h>
#include <sys/sysctl.h>
#include <sys/sx.h>
#include <sys/unistd.h>
#include <sys/callout.h>
#include <sys/malloc.h>
#include <sys/priv.h>
#include <dev/usb/usb.h>
#include <dev/usb/usbdi.h>
#include <dev/usb/usbdi_util.h>
#include <dev/usb/usb_core.h>
#include <dev/usb/usb_busdma.h>
#include <dev/usb/usb_process.h>
#include <dev/usb/usb_transfer.h>
#include <dev/usb/usb_device.h>
#include <dev/usb/usb_debug.h>
#include <dev/usb/usb_util.h>
#include <dev/usb/usb_controller.h>
#include <dev/usb/usb_bus.h>
#include <dev/usb/usb_pf.h>
Include dependency graph for usb_transfer.c:

Go to the source code of this file.

Data Structures

struct  usb_std_packet_size
 

Macros

#define USB_DEBUG_VAR   usb_debug
 

Functions

static void usbd_update_max_frame_size (struct usb_xfer *)
 
static void usbd_transfer_unsetup_sub (struct usb_xfer_root *, uint8_t)
 
static void usbd_control_transfer_init (struct usb_xfer *)
 
static int usbd_setup_ctrl_transfer (struct usb_xfer *)
 
static void usb_callback_proc (struct usb_proc_msg *)
 
static void usbd_callback_ss_done_defer (struct usb_xfer *)
 
static void usbd_callback_wrapper (struct usb_xfer_queue *)
 
static void usbd_transfer_start_cb (void *)
 
static uint8_t usbd_callback_wrapper_sub (struct usb_xfer *)
 
static void usbd_get_std_packet_size (struct usb_std_packet_size *ptr, uint8_t type, enum usb_dev_speed speed)
 
static void usb_request_callback (struct usb_xfer *xfer, usb_error_t error)
 
usb_timeout_t usbd_get_dma_delay (struct usb_device *udev)
 
uint32_t usbd_get_max_frame_length (const struct usb_endpoint_descriptor *edesc, const struct usb_endpoint_ss_comp_descriptor *ecomp, enum usb_dev_speed speed)
 
void usbd_transfer_setup_sub (struct usb_setup_params *parm)
 
static uint8_t usbd_transfer_setup_has_bulk (const struct usb_config *setup_start, uint16_t n_setup)
 
usb_error_t usbd_transfer_setup (struct usb_device *udev, const uint8_t *ifaces, struct usb_xfer **ppxfer, const struct usb_config *setup_start, uint16_t n_setup, void *priv_sc, struct mtx *xfer_mtx)
 
void usbd_transfer_unsetup (struct usb_xfer **pxfer, uint16_t n_setup)
 
static uint8_t usbd_control_transfer_did_data (struct usb_xfer *xfer)
 
void usbd_transfer_submit (struct usb_xfer *xfer)
 
void usbd_pipe_enter (struct usb_xfer *xfer)
 
void usbd_transfer_start (struct usb_xfer *xfer)
 
void usbd_transfer_stop (struct usb_xfer *xfer)
 
uint8_t usbd_transfer_pending (struct usb_xfer *xfer)
 
void usbd_transfer_drain (struct usb_xfer *xfer)
 
struct usb_page_cacheusbd_xfer_get_frame (struct usb_xfer *xfer, usb_frcount_t frindex)
 
void * usbd_xfer_get_frame_buffer (struct usb_xfer *xfer, usb_frcount_t frindex)
 
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_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)
 
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)
 
void usbd_xfer_set_frame_offset (struct usb_xfer *xfer, usb_frlength_t offset, usb_frcount_t frindex)
 
void usbd_xfer_set_interval (struct usb_xfer *xfer, int i)
 
void usbd_xfer_set_timeout (struct usb_xfer *xfer, int t)
 
void usbd_xfer_set_frames (struct usb_xfer *xfer, usb_frcount_t n)
 
usb_frcount_t usbd_xfer_max_frames (struct usb_xfer *xfer)
 
usb_frlength_t usbd_xfer_max_len (struct usb_xfer *xfer)
 
usb_frlength_t usbd_xfer_max_framelen (struct usb_xfer *xfer)
 
void usbd_xfer_set_frame_len (struct usb_xfer *xfer, usb_frcount_t frindex, usb_frlength_t len)
 
void usb_dma_delay_done_cb (struct usb_xfer *xfer)
 
void usbd_transfer_dequeue (struct usb_xfer *xfer)
 
void usbd_transfer_enqueue (struct usb_xfer_queue *pq, struct usb_xfer *xfer)
 
void usbd_transfer_done (struct usb_xfer *xfer, usb_error_t error)
 
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_transfer_clear_stall (struct usb_xfer *xfer)
 
void usbd_pipe_start (struct usb_xfer_queue *pq)
 
void usbd_transfer_timeout_ms (struct usb_xfer *xfer, void(*cb)(void *arg), usb_timeout_t ms)
 
void usb_command_wrapper (struct usb_xfer_queue *pq, struct usb_xfer *xfer)
 
void usbd_ctrl_transfer_setup (struct usb_device *udev)
 
void usbd_clear_stall_locked (struct usb_device *udev, struct usb_endpoint *ep)
 
void usbd_clear_data_toggle (struct usb_device *udev, struct usb_endpoint *ep)
 
uint8_t usbd_clear_stall_callback (struct usb_xfer *xfer1, struct usb_xfer *xfer2)
 
void usbd_transfer_poll (struct usb_xfer **ppxfer, uint16_t max)
 
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 *ptr)
 
uint8_t usbd_xfer_state (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)
 
uint8_t usbd_xfer_get_isochronous_start_frame (struct usb_xfer *xfer, uint32_t frame_curr, uint32_t frame_min, uint32_t frame_ms, uint32_t frame_mask, uint32_t *p_frame_start)
 

Variables

static usb_callback_t usb_request_callback
 
static const struct usb_config usb_control_ep_cfg [USB_CTRL_XFER_MAX]
 
static const struct usb_config usb_control_ep_quirk_cfg [USB_CTRL_XFER_MAX]
 

Macro Definition Documentation

◆ USB_DEBUG_VAR

#define USB_DEBUG_VAR   usb_debug

Definition at line 55 of file usb_transfer.c.

Function Documentation

◆ usb_callback_proc()

static void usb_callback_proc ( struct usb_proc_msg _pm)
static

Definition at line 2330 of file usb_transfer.c.

References usb_xfer_root::bus, usb_xfer_queue::curr, usb_xfer_root::done_q, USB_BUS_LOCK, USB_BUS_UNLOCK, usb_command_wrapper(), USB_MTX_LOCK, USB_MTX_UNLOCK, usb_xfer_root::xfer_mtx, and usb_done_msg::xroot.

Referenced by usbd_transfer_setup().

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

◆ usb_command_wrapper()

◆ usb_dma_delay_done_cb()

void usb_dma_delay_done_cb ( struct usb_xfer xfer)

Definition at line 2530 of file usb_transfer.c.

References usb_xfer_root::bus, USB_BUS_LOCK_ASSERT, usbd_transfer_done(), and usb_xfer::xroot.

Referenced by ehci_start_dma_delay_second(), usbd_callback_wrapper_sub(), and xhci_configure_msg().

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

◆ usb_request_callback()

static void usb_request_callback ( struct usb_xfer xfer,
usb_error_t  error 
)
static

◆ usbd_callback_ss_done_defer()

static void usbd_callback_ss_done_defer ( struct usb_xfer xfer)
static

◆ usbd_callback_wrapper()

◆ usbd_callback_wrapper_sub()

◆ usbd_clear_data_toggle()

void usbd_clear_data_toggle ( struct usb_device udev,
struct usb_endpoint ep 
)

Definition at line 3315 of file usb_transfer.c.

References usb_device::bus, usb_endpoint::toggle_next, USB_BUS_LOCK, USB_BUS_UNLOCK, and usbd_clear_stall_locked().

Referenced by usbd_clear_stall_callback().

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

◆ usbd_clear_stall_callback()

◆ usbd_clear_stall_locked()

void usbd_clear_stall_locked ( struct usb_device udev,
struct usb_endpoint ep 
)

◆ usbd_control_transfer_did_data()

static uint8_t usbd_control_transfer_did_data ( struct usb_xfer xfer)
static

Definition at line 1543 of file usb_transfer.c.

References usb_xfer_flags_int::control_hdr, usb_xfer_flags_int::control_rem, usb_xfer::flags_int, usb_xfer::frbuffers, req, UGETW, and usbd_copy_out().

Referenced by usbd_setup_ctrl_transfer().

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

◆ usbd_control_transfer_init()

static void usbd_control_transfer_init ( struct usb_xfer xfer)
static

Definition at line 1516 of file usb_transfer.c.

References usb_xfer_flags_int::control_rem, usb_xfer::endpointno, usb_xfer::flags_int, usb_xfer::frbuffers, req, UE_DIR_IN, UE_DIR_OUT, UGETW, usbd_copy_out(), and UT_READ.

Referenced by usbd_setup_ctrl_transfer().

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

◆ usbd_ctrl_transfer_setup()

◆ usbd_get_dma_delay()

usb_timeout_t usbd_get_dma_delay ( struct usb_device udev)

Definition at line 187 of file usb_transfer.c.

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

Referenced by usb_dev_suspend_peer(), usbd_callback_wrapper_sub(), and usbd_transfer_unsetup_sub().

Here is the caller graph for this function:

◆ usbd_get_max_frame_length()

◆ usbd_get_std_packet_size()

static void usbd_get_std_packet_size ( struct usb_std_packet_size ptr,
uint8_t  type,
enum usb_dev_speed  speed 
)
static

◆ usbd_pipe_enter()

◆ usbd_pipe_start()

◆ usbd_setup_ctrl_transfer()

◆ usbd_transfer_clear_stall()

void usbd_transfer_clear_stall ( struct usb_xfer xfer)

◆ usbd_transfer_dequeue()

void usbd_transfer_dequeue ( struct usb_xfer xfer)

Definition at line 2549 of file usb_transfer.c.

References usb_xfer::wait_queue.

Referenced by usbd_transfer_done(), usbd_transfer_submit(), and xhci_configure_msg().

Here is the caller graph for this function:

◆ usbd_transfer_done()

◆ usbd_transfer_drain()

◆ usbd_transfer_enqueue()

◆ 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 **  ppxfer,
const struct usb_config setup_start,
uint16_t  n_setup,
void *  priv_sc,
struct mtx *  xfer_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_setup_has_bulk()

static uint8_t usbd_transfer_setup_has_bulk ( const struct usb_config setup_start,
uint16_t  n_setup 
)
static

Definition at line 961 of file usb_transfer.c.

References usb_config::type, type, UE_BULK, UE_BULK_INTR, and UE_TYPE_ANY.

Referenced by usbd_transfer_setup().

Here is the caller graph for this function:

◆ usbd_transfer_setup_sub()

void usbd_transfer_setup_sub ( struct usb_setup_params parm)

Definition at line 457 of file usb_transfer.c.

References usb_endpoint_descriptor::bEndpointAddress, usb_endpoint_descriptor::bInterval, usb_endpoint_descriptor::bmAttributes, usb_endpoint_ss_comp_descriptor::bmAttributes, usb_endpoint_ss_comp_descriptor::bMaxBurst, usb_setup_params::buf, usb_page_search::buffer, usb_setup_params::bufsize, usb_config::bufsize, usb_setup_params::bufsize_max, usb_xfer::callback, usb_config::callback, usb_xfer_flags_int::control_xfr, usb_setup_params::curr_setup, usb_setup_params::curr_xfer, usb_xfer::dma_page_ptr, usb_setup_params::dma_page_ptr, usb_xfer_root::dma_parent_tag, usb_endpoint::ecomp, usb_endpoint::edesc, usb_xfer::endpoint, usb_xfer::endpointno, usb_setup_params::err, usb_xfer_flags::ext_buffer, usb_std_packet_size::fixed, usb_xfer::flags, usb_device::flags, usb_config::flags, usb_xfer::flags_int, usb_xfer::fps_shift, usb_config::frames, usb_xfer::frbuffers, usb_xfer::frlengths, usb_setup_params::hc_max_frame_size, usb_setup_params::hc_max_packet_count, usb_setup_params::hc_max_packet_size, usb_xfer::interval, usb_config::interval, usb_xfer_flags_int::isochronous_xfr, usb_xfer::local_buffer, usb_std_packet_size::max, usb_xfer::max_data_length, usb_xfer::max_frame_count, usb_xfer::max_frame_size, usb_xfer::max_hc_frame_size, usb_xfer::max_packet_count, usb_xfer::max_packet_size, usb_xfer_flags_int::maxp_was_clamped, usb_std_packet_size::min, usb_xfer::nframes, usb_xfer_flags::pre_scale_frames, usb_xfer_flags::proxy_buffer, usb_std_packet_size::range, usb_setup_params::size, usb_setup_params::speed, usb_page_cache::tag_parent, usb_xfer::timeout, usb_config::timeout, type, usb_setup_params::udev, UE_BULK, UE_CONTROL, UE_GET_SS_ISO_MULT, UE_INTERRUPT, UE_ISOCHRONOUS, UE_XFERTYPE, UGETW, USB_ADD_BYTES, USB_ERR_INVAL, USB_ERR_NOMEM, USB_ERR_ZERO_MAXP, USB_ERR_ZERO_NFRAMES, USB_HOST_ALIGN, USB_MAX_FS_ISOC_FRAMES_PER_XFER, USB_MAX_HS_ISOC_FRAMES_PER_XFER, usb_xfer_flags_int::usb_mode, usb_device_flags::usb_mode, USB_PAGE_SIZE, usb_pc_dmamap_create(), USB_SPEED_FULL, USB_SPEED_HIGH, USB_SPEED_LOW, USB_SPEED_SUPER, usbd_get_page(), usbd_get_std_packet_size(), usbd_transfer_setup_sub_malloc(), usbd_update_max_frame_size(), usbd_xfer_set_frame_offset(), usb_endpoint_descriptor::wMaxPacketSize, usb_setup_params::xfer_length_ptr, usb_setup_params::xfer_page_cache_ptr, and usb_xfer::xroot.

Referenced by atmegadci_xfer_setup(), avr32dci_xfer_setup(), dwc_otg_xfer_setup(), ehci_xfer_setup(), musbotg_xfer_setup(), ohci_xfer_setup(), uhci_xfer_setup(), uss820dci_xfer_setup(), and xhci_xfer_setup().

Here is the call graph for this function:
Here is the caller 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_start_cb()

static void usbd_transfer_start_cb ( void *  arg)
static

◆ 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_timeout_ms()

◆ 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_transfer_unsetup_sub()

◆ usbd_update_max_frame_size()

static void usbd_update_max_frame_size ( struct usb_xfer xfer)
static

Definition at line 167 of file usb_transfer.c.

References usb_xfer::max_frame_size, usb_xfer::max_packet_count, and usb_xfer::max_packet_size.

Referenced by usbd_transfer_setup_sub().

Here is the caller 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_isochronous_start_frame()

uint8_t usbd_xfer_get_isochronous_start_frame ( struct usb_xfer xfer,
uint32_t  frame_curr,
uint32_t  frame_min,
uint32_t  frame_ms,
uint32_t  frame_mask,
uint32_t *  p_frame_start 
)

◆ 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  t 
)

◆ 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

◆ usb_control_ep_cfg

const struct usb_config usb_control_ep_cfg[USB_CTRL_XFER_MAX]
static
Initial value:
= {
[0] = {
.type = UE_CONTROL,
.endpoint = 0x00,
.direction = UE_DIR_ANY,
.bufsize = USB_EP0_BUFSIZE,
.flags = {.proxy_buffer = 1,},
.callback = &usb_request_callback,
.usb_mode = USB_MODE_DUAL,
},
[1] = {
.type = UE_CONTROL,
.endpoint = 0x00,
.direction = UE_DIR_ANY,
.bufsize = sizeof(struct usb_device_request),
.timeout = 1000,
.interval = 50,
.usb_mode = USB_MODE_HOST,
},
}
#define UE_DIR_ANY
Definition: usb.h:535
@ USB_MODE_DUAL
Definition: usb.h:780
@ USB_MODE_HOST
Definition: usb.h:778
#define UE_CONTROL
Definition: usb.h:541
#define USB_EP0_BUFSIZE
Definition: usb_freebsd.h:91
static usb_callback_t usb_request_callback
Definition: usb_transfer.c:79
usb_callback_t usb_do_clear_stall_callback
Definition: usb_transfer.h:145

Definition at line 81 of file usb_transfer.c.

Referenced by usbd_ctrl_transfer_setup(), and usbd_transfer_setup().

◆ usb_control_ep_quirk_cfg

const struct usb_config usb_control_ep_quirk_cfg[USB_CTRL_XFER_MAX]
static
Initial value:
= {
[0] = {
.type = UE_CONTROL,
.endpoint = 0x00,
.direction = UE_DIR_ANY,
.bufsize = 65535,
.callback = &usb_request_callback,
.usb_mode = USB_MODE_DUAL,
},
[1] = {
.type = UE_CONTROL,
.endpoint = 0x00,
.direction = UE_DIR_ANY,
.bufsize = sizeof(struct usb_device_request),
.timeout = 1000,
.interval = 50,
.usb_mode = USB_MODE_HOST,
},
}

Definition at line 108 of file usb_transfer.c.

Referenced by usbd_ctrl_transfer_setup(), and usbd_transfer_setup().

◆ usb_request_callback

usb_callback_t usb_request_callback
static

Definition at line 79 of file usb_transfer.c.