Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
uhc_transfer Struct Reference

UHC endpoint buffer info. More...

#include <uhc.h>

Data Fields

sys_dnode_t node
 dlist node
 
uint8_t setup_pkt [8]
 Control transfer setup packet.
 
struct net_bufbuf
 Transfer data buffer.
 
uint8_t addr
 Device (peripheral) address.
 
uint8_t ep
 Endpoint to which request is associated.
 
uint8_t attrib
 Endpoint attributes (TBD)
 
uint16_t mps
 Maximum packet size.
 
uint16_t timeout
 Timeout in number of frames.
 
unsigned int queued: 1
 Flag marks request buffer is queued.
 
unsigned int stage: 2
 Control stage status, up to the driver to use it or not.
 
void * udev
 Pointer to USB device (opaque for the UHC)
 
void * cb
 Pointer to transfer completion callback (opaque for the UHC)
 
int err
 Transfer result, 0 on success, other values on error.
 

Detailed Description

UHC endpoint buffer info.

This structure is mandatory for all UHC request. It contains the meta data about the request and FIFOs to store net_buf structures for each request.

The members of this structure should not be used directly by a higher layer (host stack).

Field Documentation

◆ addr

uint8_t uhc_transfer::addr

Device (peripheral) address.

◆ attrib

uint8_t uhc_transfer::attrib

Endpoint attributes (TBD)

◆ buf

struct net_buf* uhc_transfer::buf

Transfer data buffer.

◆ cb

void* uhc_transfer::cb

Pointer to transfer completion callback (opaque for the UHC)

◆ ep

uint8_t uhc_transfer::ep

Endpoint to which request is associated.

◆ err

int uhc_transfer::err

Transfer result, 0 on success, other values on error.

◆ mps

uint16_t uhc_transfer::mps

Maximum packet size.

◆ node

sys_dnode_t uhc_transfer::node

dlist node

◆ queued

unsigned int uhc_transfer::queued

Flag marks request buffer is queued.

◆ setup_pkt

uint8_t uhc_transfer::setup_pkt[8]

Control transfer setup packet.

◆ stage

unsigned int uhc_transfer::stage

Control stage status, up to the driver to use it or not.

◆ timeout

uint16_t uhc_transfer::timeout

Timeout in number of frames.

◆ udev

void* uhc_transfer::udev

Pointer to USB device (opaque for the UHC)


The documentation for this struct was generated from the following file: