VSF Documented
Data Structures | Macros | Typedefs | Enumerations | Variables
usbhd_hcd.c File Reference
#include "hal/vsf_hal_cfg.h"
#include "./usbhd_hcd.h"

Data Structures

struct  hc32f10x_usbhd_reg_t
 
struct  hc32f10x_usbhd_urb_t
 

Macros

#define __VSF_EDA_CLASS_INHERIT__
 
#define __VSF_USBH_CLASS_IMPLEMENT_HCD__
 
#define __VSF_USBH_CLASS_IMPLEMENT_HUB__
 
#define __VSF_USBH_CLASS_IMPLEMENT_CLASS__
 
#define CH32F10X_USBHD_HCD_CLASS_IMPLEMENT
 
#define __IO   volatile
 
#define RB_UC_HOST_MODE   0x80
 
#define RB_UC_LOW_SPEED   0x40
 
#define RB_UC_INT_BUSY   0x08
 
#define RB_UC_RESET_SIE   0x04
 
#define RB_UC_CLR_ALL   0x02
 
#define RB_UC_DMA_EN   0x01
 
#define RB_UH_LOW_SPEED   0x04
 
#define RB_UH_BUS_RESET   0x02
 
#define RB_UH_PORT_EN   0x01
 
#define RB_UH_EP_TX_EN   0x40
 
#define RB_UH_EP_TBUF_MOD   0x10
 
#define RB_UH_EP_RX_EN   0x08
 
#define RB_UH_EP_RBUF_MOD   0x01
 
#define RB_UH_PRE_PID_EN   0x80
 
#define RB_UH_SOF_EN   0x40
 
#define RB_UIE_FIFO_OV   0x10
 
#define RB_UIE_HST_SOF   0x08
 
#define RB_UIE_SUSPEND   0x04
 
#define RB_UIE_TRANSFER   0x02
 
#define RB_UIE_DETECT   0x01
 
#define RB_U_IS_NAK   0x80
 
#define RB_U_TOG_OK   0x40
 
#define RB_U_SIE_FREE   0x20
 
#define RB_UIF_FIFO_OV   0x10
 
#define RB_UIF_HST_SOF   0x08
 
#define RB_UIF_SUSPEND   0x04
 
#define RB_UIF_TRANSFER   0x02
 
#define RB_UIF_DETECT   0x01
 
#define RB_UIS_TOG_OK   0x40
 
#define MASK_UIS_H_RES   0x0F
 
#define RB_UH_R_TOG   0x80
 
#define RB_UH_R_AUTO_TOG   0x10
 
#define RB_UH_T_TOG   0x40
 
#define RB_UH_T_AUTO_TOG   0x10
 
#define RB_UMS_DM_LEVEL   0x02
 
#define RB_UMS_DEV_ATTACH   0x01
 

Typedefs

typedef struct hc32f10x_usbhd_reg_t hc32f10x_usbhd_reg_t
 
typedef struct hc32f10x_usbhd_urb_t hc32f10x_usbhd_urb_t
 

Enumerations

enum  {
  VSF_HC32F10X_HCD_EVT_CONN_CHANGE = VSF_EVT_USER + 0 ,
  VSF_HC32F10X_HCD_EVT_TRANSFER = VSF_EVT_USER + 1
}
 
enum  { USB_ERR_HCD_NAK = VSF_ERR_NOT_READY + 1 }
 

Variables

const vk_usbh_hcd_drv_t hc32f10x_usbhd_hcd_drv
 

Macro Definition Documentation

◆ __VSF_EDA_CLASS_INHERIT__

#define __VSF_EDA_CLASS_INHERIT__

◆ __VSF_USBH_CLASS_IMPLEMENT_HCD__

#define __VSF_USBH_CLASS_IMPLEMENT_HCD__

◆ __VSF_USBH_CLASS_IMPLEMENT_HUB__

#define __VSF_USBH_CLASS_IMPLEMENT_HUB__

◆ __VSF_USBH_CLASS_IMPLEMENT_CLASS__

#define __VSF_USBH_CLASS_IMPLEMENT_CLASS__

◆ CH32F10X_USBHD_HCD_CLASS_IMPLEMENT

#define CH32F10X_USBHD_HCD_CLASS_IMPLEMENT

◆ __IO

#define __IO   volatile

◆ RB_UC_HOST_MODE

#define RB_UC_HOST_MODE   0x80

◆ RB_UC_LOW_SPEED

#define RB_UC_LOW_SPEED   0x40

◆ RB_UC_INT_BUSY

#define RB_UC_INT_BUSY   0x08

◆ RB_UC_RESET_SIE

#define RB_UC_RESET_SIE   0x04

◆ RB_UC_CLR_ALL

#define RB_UC_CLR_ALL   0x02

◆ RB_UC_DMA_EN

#define RB_UC_DMA_EN   0x01

◆ RB_UH_LOW_SPEED

#define RB_UH_LOW_SPEED   0x04

◆ RB_UH_BUS_RESET

#define RB_UH_BUS_RESET   0x02

◆ RB_UH_PORT_EN

#define RB_UH_PORT_EN   0x01

◆ RB_UH_EP_TX_EN

#define RB_UH_EP_TX_EN   0x40

◆ RB_UH_EP_TBUF_MOD

#define RB_UH_EP_TBUF_MOD   0x10

◆ RB_UH_EP_RX_EN

#define RB_UH_EP_RX_EN   0x08

◆ RB_UH_EP_RBUF_MOD

#define RB_UH_EP_RBUF_MOD   0x01

◆ RB_UH_PRE_PID_EN

#define RB_UH_PRE_PID_EN   0x80

◆ RB_UH_SOF_EN

#define RB_UH_SOF_EN   0x40

◆ RB_UIE_FIFO_OV

#define RB_UIE_FIFO_OV   0x10

◆ RB_UIE_HST_SOF

#define RB_UIE_HST_SOF   0x08

◆ RB_UIE_SUSPEND

#define RB_UIE_SUSPEND   0x04

◆ RB_UIE_TRANSFER

#define RB_UIE_TRANSFER   0x02

◆ RB_UIE_DETECT

#define RB_UIE_DETECT   0x01

◆ RB_U_IS_NAK

#define RB_U_IS_NAK   0x80

◆ RB_U_TOG_OK

#define RB_U_TOG_OK   0x40

◆ RB_U_SIE_FREE

#define RB_U_SIE_FREE   0x20

◆ RB_UIF_FIFO_OV

#define RB_UIF_FIFO_OV   0x10

◆ RB_UIF_HST_SOF

#define RB_UIF_HST_SOF   0x08

◆ RB_UIF_SUSPEND

#define RB_UIF_SUSPEND   0x04

◆ RB_UIF_TRANSFER

#define RB_UIF_TRANSFER   0x02

◆ RB_UIF_DETECT

#define RB_UIF_DETECT   0x01

◆ RB_UIS_TOG_OK

#define RB_UIS_TOG_OK   0x40

◆ MASK_UIS_H_RES

#define MASK_UIS_H_RES   0x0F

◆ RB_UH_R_TOG

#define RB_UH_R_TOG   0x80

◆ RB_UH_R_AUTO_TOG

#define RB_UH_R_AUTO_TOG   0x10

◆ RB_UH_T_TOG

#define RB_UH_T_TOG   0x40

◆ RB_UH_T_AUTO_TOG

#define RB_UH_T_AUTO_TOG   0x10

◆ RB_UMS_DM_LEVEL

#define RB_UMS_DM_LEVEL   0x02

◆ RB_UMS_DEV_ATTACH

#define RB_UMS_DEV_ATTACH   0x01

Typedef Documentation

◆ hc32f10x_usbhd_reg_t

◆ hc32f10x_usbhd_urb_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
VSF_HC32F10X_HCD_EVT_CONN_CHANGE 
VSF_HC32F10X_HCD_EVT_TRANSFER 

◆ anonymous enum

anonymous enum
Enumerator
USB_ERR_HCD_NAK 

Variable Documentation

◆ hc32f10x_usbhd_hcd_drv

const vk_usbh_hcd_drv_t hc32f10x_usbhd_hcd_drv
Initial value:
= {
.init_evthandler = __hc32f10x_usbhd_hcd_init_evthandler,
.fini = __hc32f10x_usbhd_hcd_fini,
.suspend = __hc32f10x_usbhd_hcd_suspend,
.resume = __hc32f10x_usbhd_hcd_resume,
.alloc_urb = __hc32f10x_usbhd_hcd_alloc_urb,
.free_urb = __hc32f10x_usbhd_hcd_free_urb,
.submit_urb = __hc32f10x_usbhd_hcd_submit_urb,
.relink_urb = __hc32f10x_usbhd_hcd_relink_urb,
.reset_dev = __hc32f10x_usbhd_hcd_reset_dev,
.is_dev_reset = __hc32f10x_usbhd_hcd_is_dev_reset,
}