ChibiOS 21.11.4
hal_usb.c File Reference

USB Driver code. More...

#include <string.h>
#include "hal.h"

Go to the source code of this file.

Functions

static uint16_t get_hword (uint8_t *p)
static void set_address (USBDriver *usbp)
 SET ADDRESS transaction callback.
static bool default_handler (USBDriver *usbp)
 Standard requests handler.
void usbInit (void)
 USB Driver initialization.
void usbObjectInit (USBDriver *usbp)
 Initializes the standard part of a USBDriver structure.
msg_t usbStart (USBDriver *usbp, const USBConfig *config)
 Configures and activates the USB peripheral.
void usbStop (USBDriver *usbp)
 Deactivates the USB peripheral.
void usbInitEndpointI (USBDriver *usbp, usbep_t ep, const USBEndpointConfig *epcp)
 Enables an endpoint.
void usbDisableEndpointsI (USBDriver *usbp)
 Disables all the active endpoints.
void usbStartReceiveI (USBDriver *usbp, usbep_t ep, uint8_t *buf, size_t n)
 Starts a receive transaction on an OUT endpoint.
void usbStartTransmitI (USBDriver *usbp, usbep_t ep, const uint8_t *buf, size_t n)
 Starts a transmit transaction on an IN endpoint.
msg_t usbReceive (USBDriver *usbp, usbep_t ep, uint8_t *buf, size_t n)
 Performs a receive transaction on an OUT endpoint.
msg_t usbTransmit (USBDriver *usbp, usbep_t ep, const uint8_t *buf, size_t n)
 Performs a transmit transaction on an IN endpoint.
bool usbStallReceiveI (USBDriver *usbp, usbep_t ep)
 Stalls an OUT endpoint.
bool usbStallTransmitI (USBDriver *usbp, usbep_t ep)
 Stalls an IN endpoint.
void usbWakeupHost (USBDriver *usbp)
 Host wake-up procedure.
void _usb_reset (USBDriver *usbp)
 USB reset routine.
void _usb_suspend (USBDriver *usbp)
 USB suspend routine.
void _usb_wakeup (USBDriver *usbp)
 USB wake-up routine.
void _usb_ep0setup (USBDriver *usbp, usbep_t ep)
 Default EP0 SETUP callback.
void _usb_ep0in (USBDriver *usbp, usbep_t ep)
 Default EP0 IN callback.
void _usb_ep0out (USBDriver *usbp, usbep_t ep)
 Default EP0 OUT callback.

Variables

static const uint8_t zero_status [] = {0x00, 0x00}
static const uint8_t active_status [] = {0x00, 0x00}
static const uint8_t halted_status [] = {0x01, 0x00}

Detailed Description

USB Driver code.

Definition in file hal_usb.c.