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