ChibiOS/HAL
6.1.0
|
PLATFORM USB subsystem low level driver header. More...
Go to the source code of this file.
Data Structures | |
struct | USBInEndpointState |
Type of an IN endpoint state structure. More... | |
struct | USBOutEndpointState |
Type of an OUT endpoint state structure. More... | |
struct | USBEndpointConfig |
Type of an USB endpoint configuration structure. More... | |
struct | USBConfig |
Type of an USB driver configuration structure. More... | |
struct | USBDriver |
Structure representing an USB driver. More... | |
Macros | |
#define | USB_MAX_ENDPOINTS 4 |
Maximum endpoint address. More... | |
#define | USB_EP0_STATUS_STAGE USB_EP0_STATUS_STAGE_SW |
Status stage handling method. More... | |
#define | USB_SET_ADDRESS_MODE USB_LATE_SET_ADDRESS |
The address can be changed immediately upon packet reception. More... | |
#define | USB_SET_ADDRESS_ACK_HANDLING USB_SET_ADDRESS_ACK_SW |
Method for set address acknowledge. More... | |
#define | usb_lld_get_frame_number(usbp) 0 |
Returns the current frame number. More... | |
#define | usb_lld_get_transaction_size(usbp, ep) ((usbp)->epc[ep]->out_state->rxcnt) |
Returns the exact size of a receive transaction. More... | |
#define | usb_lld_connect_bus(usbp) |
Connects the USB device. More... | |
#define | usb_lld_disconnect_bus(usbp) |
Disconnect the USB device. More... | |
#define | usb_lld_wakeup_host(usbp) |
Start of host wake-up procedure. More... | |
PLATFORM configuration options | |
#define | PLATFORM_USB_USE_USB1 FALSE |
USB driver enable switch. More... | |
Functions | |
void | usb_lld_init (void) |
Low level USB driver initialization. More... | |
void | usb_lld_start (USBDriver *usbp) |
Configures and activates the USB peripheral. More... | |
void | usb_lld_stop (USBDriver *usbp) |
Deactivates the USB peripheral. More... | |
void | usb_lld_reset (USBDriver *usbp) |
USB low level reset routine. More... | |
void | usb_lld_set_address (USBDriver *usbp) |
Sets the USB address. More... | |
void | usb_lld_init_endpoint (USBDriver *usbp, usbep_t ep) |
Enables an endpoint. More... | |
void | usb_lld_disable_endpoints (USBDriver *usbp) |
Disables all the active endpoints except the endpoint zero. More... | |
usbepstatus_t | usb_lld_get_status_in (USBDriver *usbp, usbep_t ep) |
Returns the status of an IN endpoint. More... | |
usbepstatus_t | usb_lld_get_status_out (USBDriver *usbp, usbep_t ep) |
Returns the status of an OUT endpoint. More... | |
void | usb_lld_read_setup (USBDriver *usbp, usbep_t ep, uint8_t *buf) |
Reads a setup packet from the dedicated packet buffer. More... | |
void | usb_lld_prepare_receive (USBDriver *usbp, usbep_t ep) |
Prepares for a receive operation. More... | |
void | usb_lld_prepare_transmit (USBDriver *usbp, usbep_t ep) |
Prepares for a transmit operation. More... | |
void | usb_lld_start_out (USBDriver *usbp, usbep_t ep) |
Starts a receive operation on an OUT endpoint. More... | |
void | usb_lld_start_in (USBDriver *usbp, usbep_t ep) |
Starts a transmit operation on an IN endpoint. More... | |
void | usb_lld_stall_out (USBDriver *usbp, usbep_t ep) |
Brings an OUT endpoint in the stalled state. More... | |
void | usb_lld_stall_in (USBDriver *usbp, usbep_t ep) |
Brings an IN endpoint in the stalled state. More... | |
void | usb_lld_clear_out (USBDriver *usbp, usbep_t ep) |
Brings an OUT endpoint in the active state. More... | |
void | usb_lld_clear_in (USBDriver *usbp, usbep_t ep) |
Brings an IN endpoint in the active state. More... | |
PLATFORM USB subsystem low level driver header.
Definition in file hal_usb_lld.h.