ChibiOS/HAL  6.1.0
USBEndpointConfig Struct Reference

Type of an USB endpoint configuration structure. More...

#include <hal_usb_lld.h>

Collaboration diagram for USBEndpointConfig:
Collaboration graph

Data Fields

uint32_t ep_mode
 Type and mode of the endpoint. More...
 
usbepcallback_t setup_cb
 Setup packet notification callback. More...
 
usbepcallback_t in_cb
 IN endpoint notification callback. More...
 
usbepcallback_t out_cb
 OUT endpoint notification callback. More...
 
uint16_t in_maxsize
 IN endpoint maximum packet size. More...
 
uint16_t out_maxsize
 OUT endpoint maximum packet size. More...
 
USBInEndpointStatein_state
 USBEndpointState associated to the IN endpoint. More...
 
USBOutEndpointStateout_state
 USBEndpointState associated to the OUT endpoint. More...
 

Detailed Description

Type of an USB endpoint configuration structure.

Note
Platform specific restrictions may apply to endpoints.

Definition at line 134 of file hal_usb_lld.h.

Field Documentation

uint32_t USBEndpointConfig::ep_mode

Type and mode of the endpoint.

Definition at line 138 of file hal_usb_lld.h.

usbepcallback_t USBEndpointConfig::setup_cb

Setup packet notification callback.

This callback is invoked when a setup packet has been received.

Postcondition
The application must immediately call usbReadPacket() in order to access the received packet.
Note
This field is only valid for USB_EP_MODE_TYPE_CTRL endpoints, it should be set to NULL for other endpoint types.

Definition at line 149 of file hal_usb_lld.h.

usbepcallback_t USBEndpointConfig::in_cb

IN endpoint notification callback.

This field must be set to NULL if the IN endpoint is not used.

Definition at line 155 of file hal_usb_lld.h.

usbepcallback_t USBEndpointConfig::out_cb

OUT endpoint notification callback.

This field must be set to NULL if the OUT endpoint is not used.

Definition at line 161 of file hal_usb_lld.h.

uint16_t USBEndpointConfig::in_maxsize

IN endpoint maximum packet size.

This field must be set to zero if the IN endpoint is not used.

Definition at line 167 of file hal_usb_lld.h.

Referenced by _usb_ep0in(), and sduDataTransmitted().

uint16_t USBEndpointConfig::out_maxsize

OUT endpoint maximum packet size.

This field must be set to zero if the OUT endpoint is not used.

Definition at line 173 of file hal_usb_lld.h.

USBInEndpointState* USBEndpointConfig::in_state

USBEndpointState associated to the IN endpoint.

This structure maintains the state of the IN endpoint.

Definition at line 178 of file hal_usb_lld.h.

Referenced by _usb_reset(), _usb_suspend(), sduDataTransmitted(), usbDisableEndpointsI(), usbInitEndpointI(), usbStartTransmitI(), usbStop(), and usbTransmit().

USBOutEndpointState* USBEndpointConfig::out_state

USBEndpointState associated to the OUT endpoint.

This structure maintains the state of the OUT endpoint.

Definition at line 183 of file hal_usb_lld.h.

Referenced by _usb_reset(), _usb_suspend(), usbDisableEndpointsI(), usbInitEndpointI(), usbReceive(), usbStartReceiveI(), and usbStop().