#include <libopencm3/cm3/common.h>
#include <libopencm3/stm32/rcc.h>
#include <libopencm3/stm32/tools.h>
#include <libopencm3/stm32/st_usbfs.h>
#include <libopencm3/usb/usbd.h>
#include "../../usb/usb_private.h"
#include "st_usbfs_core.h"
Go to the source code of this file.
|
void | st_usbfs_set_address (usbd_device *dev, uint8_t addr) |
|
uint16_t | st_usbfs_set_ep_rx_bufsize (usbd_device *dev, uint8_t ep, uint32_t size) |
| Set the receive buffer size for a given USB endpoint. More...
|
|
void | st_usbfs_ep_setup (usbd_device *dev, uint8_t addr, uint8_t type, uint16_t max_size, void(*callback)(usbd_device *usbd_dev, uint8_t ep)) |
|
void | st_usbfs_endpoints_reset (usbd_device *dev) |
|
void | st_usbfs_ep_stall_set (usbd_device *dev, uint8_t addr, uint8_t stall) |
|
uint8_t | st_usbfs_ep_stall_get (usbd_device *dev, uint8_t addr) |
|
void | st_usbfs_ep_nak_set (usbd_device *dev, uint8_t addr, uint8_t nak) |
|
uint16_t | st_usbfs_ep_write_packet (usbd_device *dev, uint8_t addr, const void *buf, uint16_t len) |
|
uint16_t | st_usbfs_ep_read_packet (usbd_device *dev, uint8_t addr, void *buf, uint16_t len) |
|
void | st_usbfs_poll (usbd_device *dev) |
|
◆ st_usbfs_endpoints_reset()
◆ st_usbfs_ep_nak_set()
void st_usbfs_ep_nak_set |
( |
usbd_device * |
dev, |
|
|
uint8_t |
addr, |
|
|
uint8_t |
nak |
|
) |
| |
◆ st_usbfs_ep_read_packet()
uint16_t st_usbfs_ep_read_packet |
( |
usbd_device * |
dev, |
|
|
uint8_t |
addr, |
|
|
void * |
buf, |
|
|
uint16_t |
len |
|
) |
| |
◆ st_usbfs_ep_setup()
Definition at line 80 of file st_usbfs_core.c.
References st_usbfs_set_ep_rx_bufsize(), USB_CLR_EP_RX_DTOG, USB_CLR_EP_TX_DTOG, USB_ENDPOINT_ATTR_BULK, USB_ENDPOINT_ATTR_CONTROL, USB_ENDPOINT_ATTR_INTERRUPT, USB_ENDPOINT_ATTR_ISOCHRONOUS, USB_EP_RX_STAT_VALID, USB_EP_TX_STAT_NAK, USB_EP_TYPE_BULK, USB_EP_TYPE_CONTROL, USB_EP_TYPE_INTERRUPT, USB_EP_TYPE_ISO, USB_SET_EP_ADDR, USB_SET_EP_RX_ADDR, USB_SET_EP_RX_STAT, USB_SET_EP_TX_ADDR, USB_SET_EP_TX_STAT, and USB_SET_EP_TYPE.
◆ st_usbfs_ep_stall_get()
uint8_t st_usbfs_ep_stall_get |
( |
usbd_device * |
dev, |
|
|
uint8_t |
addr |
|
) |
| |
◆ st_usbfs_ep_stall_set()
void st_usbfs_ep_stall_set |
( |
usbd_device * |
dev, |
|
|
uint8_t |
addr, |
|
|
uint8_t |
stall |
|
) |
| |
◆ st_usbfs_ep_write_packet()
uint16_t st_usbfs_ep_write_packet |
( |
usbd_device * |
dev, |
|
|
uint8_t |
addr, |
|
|
const void * |
buf, |
|
|
uint16_t |
len |
|
) |
| |
◆ st_usbfs_poll()
Definition at line 236 of file st_usbfs_core.c.
References _usbd_reset(), st_usbfs_ep_read_packet(), USB_CLR_EP_RX_CTR, USB_CLR_EP_TX_CTR, USB_CLR_ISTR_RESET, USB_CLR_ISTR_SOF, USB_CLR_ISTR_SUSP, USB_CLR_ISTR_WKUP, USB_CNTR_REG, USB_CNTR_SOFM, USB_EP_REG, USB_EP_SETUP, USB_ISTR_CTR, USB_ISTR_DIR, USB_ISTR_EP_ID, USB_ISTR_REG, USB_ISTR_RESET, USB_ISTR_SOF, USB_ISTR_SUSP, and USB_ISTR_WKUP.
◆ st_usbfs_set_address()
void st_usbfs_set_address |
( |
usbd_device * |
dev, |
|
|
uint8_t |
addr |
|
) |
| |
◆ st_usbfs_set_ep_rx_bufsize()
uint16_t st_usbfs_set_ep_rx_bufsize |
( |
usbd_device * |
dev, |
|
|
uint8_t |
ep, |
|
|
uint32_t |
size |
|
) |
| |
Set the receive buffer size for a given USB endpoint.
- Parameters
-
dev | the usb device handle returned from usbd_init |
ep | Index of endpoint to configure. |
size | Size in bytes of the RX buffer. Legal sizes : {2,4,6...62}; {64,96,128...992}. |
- Returns
- (uint16) Actual size set
Definition at line 48 of file st_usbfs_core.c.
References USB_SET_EP_RX_COUNT.
Referenced by st_usbfs_ep_setup().
◆ st_usbfs_dev
struct _usbd_device st_usbfs_dev |
◆ st_usbfs_force_nak
uint8_t st_usbfs_force_nak[8] |