Open FFBoard
Open source force feedback firmware
dcd_ft9xx.c File Reference

Go to the source code of this file.

Classes

struct  ft9xx_xfer_state
 

Functions

int8_t board_ft9xx_vbus (void)
 
int board_uart_write (void const *buf, int len)
 
void _ft9xx_usbd_ISR (void)
 
void ft9xx_usbd_pm_ISR (void)
 
static uint16_t _ft9xx_edpt_xfer_out (uint8_t ep_number, uint8_t *buffer, uint16_t xfer_bytes)
 
static uint16_t _ft9xx_edpt_xfer_in (uint8_t ep_number, uint8_t *buffer, uint16_t xfer_bytes)
 
static void _ft9xx_reset_edpts (void)
 
static void _ft9xx_phy_enable (bool en)
 
static void _ft9xx_usb_speed (void)
 
static void _dcd_ft9xx_attach (void)
 
static void _dcd_ft9xx_detach (void)
 
static uint16_t _ft9xx_dusb_in (uint8_t ep_number, const uint8_t *buffer, uint16_t length)
 
static uint16_t _ft9xx_dusb_out (uint8_t ep_number, uint8_t *buffer, uint16_t length)
 
bool dcd_init (uint8_t rhport, const tusb_rhport_init_t *rh_init)
 
void dcd_int_enable (uint8_t rhport)
 
void dcd_int_disable (uint8_t rhport)
 
void dcd_set_address (uint8_t rhport, uint8_t dev_addr)
 
void dcd_edpt0_status_complete (uint8_t rhport, tusb_control_request_t const *request)
 
void dcd_remote_wakeup (uint8_t rhport)
 
void dcd_connect (uint8_t rhport)
 
void dcd_disconnect (uint8_t rhport)
 
void dcd_sof_enable (uint8_t rhport, bool en)
 
bool dcd_edpt_open (uint8_t rhport, tusb_desc_endpoint_t const *ep_desc)
 
void dcd_edpt_close_all (uint8_t rhport)
 
bool dcd_edpt_xfer (uint8_t rhport, uint8_t ep_addr, uint8_t *buffer, uint16_t total_bytes)
 
bool dcd_edpt_xfer_fifo (uint8_t rhport, uint8_t ep_addr, tu_fifo_t *ff, uint16_t total_bytes)
 
void dcd_edpt_stall (uint8_t rhport, uint8_t ep_addr)
 
void dcd_edpt_clear_stall (uint8_t rhport, uint8_t ep_addr)
 
void dcd_int_handler (uint8_t rhport)
 

Variables

CFG_TUD_MEM_SECTION static CFG_TUSB_MEM_ALIGN uint8_t _ft9xx_setup_packet [8]
 
static struct ft9xx_xfer_state ep_xfer [USBD_MAX_ENDPOINT_COUNT]
 
static tusb_speed_t _speed
 

Function Documentation

◆ _dcd_ft9xx_attach()

static void _dcd_ft9xx_attach ( void  )
static

Definition at line 226 of file dcd_ft9xx.c.

◆ _dcd_ft9xx_detach()

static void _dcd_ft9xx_detach ( void  )
static

Definition at line 87 of file dcd_ft9xx.c.

◆ _ft9xx_dusb_in()

static uint16_t _ft9xx_dusb_in ( uint8_t  ep_number,
const uint8_t *  buffer,
uint16_t  length 
)
static

Definition at line 387 of file dcd_ft9xx.c.

◆ _ft9xx_dusb_out()

static uint16_t _ft9xx_dusb_out ( uint8_t  ep_number,
uint8_t *  buffer,
uint16_t  length 
)
static

Definition at line 444 of file dcd_ft9xx.c.

◆ _ft9xx_edpt_xfer_in()

static uint16_t _ft9xx_edpt_xfer_in ( uint8_t  ep_number,
uint8_t *  buffer,
uint16_t  xfer_bytes 
)
static

Definition at line 130 of file dcd_ft9xx.c.

◆ _ft9xx_edpt_xfer_out()

static uint16_t _ft9xx_edpt_xfer_out ( uint8_t  ep_number,
uint8_t *  buffer,
uint16_t  xfer_bytes 
)
static

◆ _ft9xx_phy_enable()

static void _ft9xx_phy_enable ( bool  en)
inlinestatic

Definition at line 217 of file dcd_ft9xx.c.

◆ _ft9xx_reset_edpts()

static void _ft9xx_reset_edpts ( void  )
static

Definition at line 201 of file dcd_ft9xx.c.

◆ _ft9xx_usb_speed()

static void _ft9xx_usb_speed ( void  )
static

Definition at line 324 of file dcd_ft9xx.c.

◆ _ft9xx_usbd_ISR()

void _ft9xx_usbd_ISR ( void  )

Definition at line 949 of file dcd_ft9xx.c.

◆ board_ft9xx_vbus()

int8_t board_ft9xx_vbus ( void  )

◆ board_uart_write()

int board_uart_write ( void const *  buf,
int  len 
)

◆ dcd_connect()

void dcd_connect ( uint8_t  rhport)

Definition at line 609 of file dcd_ft9xx.c.

◆ dcd_disconnect()

void dcd_disconnect ( uint8_t  rhport)

Definition at line 652 of file dcd_ft9xx.c.

◆ dcd_edpt0_status_complete()

void dcd_edpt0_status_complete ( uint8_t  rhport,
tusb_control_request_t const *  request 
)

Definition at line 575 of file dcd_ft9xx.c.

◆ dcd_edpt_clear_stall()

void dcd_edpt_clear_stall ( uint8_t  rhport,
uint8_t  ep_addr 
)

Definition at line 927 of file dcd_ft9xx.c.

◆ dcd_edpt_close_all()

void dcd_edpt_close_all ( uint8_t  rhport)

Definition at line 802 of file dcd_ft9xx.c.

◆ dcd_edpt_open()

bool dcd_edpt_open ( uint8_t  rhport,
tusb_desc_endpoint_t const *  ep_desc 
)

Definition at line 674 of file dcd_ft9xx.c.

◆ dcd_edpt_stall()

void dcd_edpt_stall ( uint8_t  rhport,
uint8_t  ep_addr 
)

Definition at line 905 of file dcd_ft9xx.c.

◆ dcd_edpt_xfer()

bool dcd_edpt_xfer ( uint8_t  rhport,
uint8_t  ep_addr,
uint8_t *  buffer,
uint16_t  total_bytes 
)

Definition at line 810 of file dcd_ft9xx.c.

◆ dcd_edpt_xfer_fifo()

bool dcd_edpt_xfer_fifo ( uint8_t  rhport,
uint8_t  ep_addr,
tu_fifo_t ff,
uint16_t  total_bytes 
)

Definition at line 894 of file dcd_ft9xx.c.

◆ dcd_init()

bool dcd_init ( uint8_t  rhport,
const tusb_rhport_init_t rh_init 
)

Definition at line 520 of file dcd_ft9xx.c.

◆ dcd_int_disable()

void dcd_int_disable ( uint8_t  rhport)

Definition at line 543 of file dcd_ft9xx.c.

◆ dcd_int_enable()

void dcd_int_enable ( uint8_t  rhport)

Definition at line 533 of file dcd_ft9xx.c.

◆ dcd_int_handler()

void dcd_int_handler ( uint8_t  rhport)

Definition at line 954 of file dcd_ft9xx.c.

◆ dcd_remote_wakeup()

void dcd_remote_wakeup ( uint8_t  rhport)

Definition at line 593 of file dcd_ft9xx.c.

◆ dcd_set_address()

void dcd_set_address ( uint8_t  rhport,
uint8_t  dev_addr 
)

Definition at line 553 of file dcd_ft9xx.c.

◆ dcd_sof_enable()

void dcd_sof_enable ( uint8_t  rhport,
bool  en 
)

Definition at line 661 of file dcd_ft9xx.c.

◆ ft9xx_usbd_pm_ISR()

void ft9xx_usbd_pm_ISR ( void  )

Definition at line 1165 of file dcd_ft9xx.c.

Variable Documentation

◆ _ft9xx_setup_packet

CFG_TUD_MEM_SECTION static CFG_TUSB_MEM_ALIGN uint8_t _ft9xx_setup_packet[8]
static

Definition at line 55 of file dcd_ft9xx.c.

◆ _speed

tusb_speed_t _speed
static

Definition at line 74 of file dcd_ft9xx.c.

◆ ep_xfer

struct ft9xx_xfer_state ep_xfer[USBD_MAX_ENDPOINT_COUNT]
static

Definition at line 72 of file dcd_ft9xx.c.