VSF Documented
|
#include "hal/arch/vsf_arch.h"
Go to the source code of this file.
Data Structures | |
struct | usb_dc_cfg_t |
struct | usb_dc_ip_info_t |
struct | usb_hc_ip_info_t |
Macros | |
#define | USB_DC_SPEED_UNKNOWN 0 |
#define | USB_DC_SPEED_LOW 1 |
#define | USB_DC_SPEED_FULL 2 |
#define | USB_DC_SPEED_HIGH 3 |
#define | USB_DC_SPEED_SUPER 4 |
#define | __USB_HC_IP_FUNC_DEF(__N, __VALUE) |
#define | __USB_HC_IP_INTERFACE_FUNC_DEF(__N, __VALUE) |
#define | __USB_HC_IP_BODY_EX(__N, __OBJ, __HEADER) |
#define | __USB_HC_IP_BODY(__N, __HEADER) __USB_HC_IP_BODY_EX(__N, USB_HC##__N##_IP, __HEADER) |
#define | __USB_OTG_HC_IP_BODY(__N, __HEADER) __USB_HC_IP_BODY_EX(__N, USB_OTG##__N##_IP, __HEADER) |
#define | __USB_DC_IP_FUNC_DEF(__N, __VALUE) |
#define | __USB_DC_IP_INTERFACE_FUNC_DEF(__N, __VALUE) |
#define | __USB_DC_IP_BODY_EX(__N, __OBJ, __HEADER) |
#define | __USB_DC_IP_BODY(__N, __HEADER) __USB_DC_IP_BODY_EX(__N, USB_DC##__N##_IP, __HEADER) |
#define | __USB_OTG_DC_IP_BODY(__N, __HEADER) __USB_DC_IP_BODY_EX(__N, USB_OTG##__N##_IP, __HEADER) |
#define | __USB_DC_FROM_IP(__N, __OBJ, __DRV_NAME, __HEADER) |
#define | __USB_DC_FUNC_DEF(__N, __VALUE) |
#define | __USB_DC_INTERFACE_FUNC_DEF(__N, __VALUE) |
#define | __USB_DC_BODY_EX(__N, __HEADER, __OBJ) |
#define | __USB_DC_BODY(__N, __HEADER) __USB_DC_BODY_EX(__N, __HEADER, USB_DC##__N) |
Typedefs | |
typedef void(* | usb_ip_irqhandler_t) (void *param) |
typedef void(* | usb_dc_evthandler_t) (void *param, usb_evt_t evt, uint_fast8_t value) |
typedef uint8_t | usb_dc_speed_t |
usb_dc configuration structure | |
typedef struct usb_dc_cfg_t | usb_dc_cfg_t |
usb_dc_ip information structure | |
typedef struct usb_dc_ip_info_t | usb_dc_ip_info_t |
usb_hc_ip information structure | |
typedef struct usb_hc_ip_info_t | usb_hc_ip_info_t |
Enumerations | |
enum | usb_dc_feature_t { USB_DC_FEATURE_TRANSFER = 1 << 0 } |
enum | usb_ep_type_t { USB_EP_TYPE_CONTROL = 0 , USB_EP_TYPE_INTERRUPT = 3 , USB_EP_TYPE_BULK = 2 , USB_EP_TYPE_ISO = 1 } |
enum | usb_evt_t { USB_ON_ATTACH , USB_ON_DETACH , USB_ON_RESET , USB_ON_SETUP , USB_ON_ERROR , USB_ON_SUSPEND , USB_ON_RESUME , USB_ON_SOF , USB_ON_IN , USB_ON_NAK , USB_ON_OUT , USB_ON_STATUS , USB_ON_UNDERFLOW , USB_ON_OVERFLOW , USB_USR_EVT } |
enum | usb_dc_err_t { USB_DC_ERR_ERROR , USB_DC_ERR_INVALID_CRC , USB_DC_ERR_SOF_TO } |
Functions | |
usb_hc_ip control interface, IMPORTANT: i_usb_hc_ip_t belongs to lv0 | |
def_interface (i_usb_hc_ip_t) vsf_err_t(*Init)(usb_hc_ip_cfg_t *cfg) | |
initialize | |
Variables | |
usb_dc_ip configuration structure | |
usb_dc_ip_cfg_t | |
usb_hc_ip configuration structure | |
usb_hc_ip_cfg_t | |
usb_dc_ip control interface | |
void(* | GetInfo )(usb_dc_ip_info_t *info) |
get register base | |
void(* | IrqEnable )(void) |
irq handler | |
void(* | IrqDisable )(void) |
def_interface (i_usb_dc_ip_t) vsf_err_t(*Init)(usb_dc_ip_cfg_t *cfg) | |
initialize | |
#define USB_DC_SPEED_UNKNOWN 0 |
#define USB_DC_SPEED_LOW 1 |
#define USB_DC_SPEED_FULL 2 |
#define USB_DC_SPEED_HIGH 3 |
#define USB_DC_SPEED_SUPER 4 |
#define __USB_HC_IP_FUNC_DEF | ( | __N, | |
__VALUE | |||
) |
#define __USB_HC_IP_INTERFACE_FUNC_DEF | ( | __N, | |
__VALUE | |||
) |
#define __USB_HC_IP_BODY_EX | ( | __N, | |
__OBJ, | |||
__HEADER | |||
) |
#define __USB_HC_IP_BODY | ( | __N, | |
__HEADER | |||
) | __USB_HC_IP_BODY_EX(__N, USB_HC##__N##_IP, __HEADER) |
#define __USB_OTG_HC_IP_BODY | ( | __N, | |
__HEADER | |||
) | __USB_HC_IP_BODY_EX(__N, USB_OTG##__N##_IP, __HEADER) |
#define __USB_DC_IP_FUNC_DEF | ( | __N, | |
__VALUE | |||
) |
#define __USB_DC_IP_INTERFACE_FUNC_DEF | ( | __N, | |
__VALUE | |||
) |
#define __USB_DC_IP_BODY_EX | ( | __N, | |
__OBJ, | |||
__HEADER | |||
) |
#define __USB_DC_IP_BODY | ( | __N, | |
__HEADER | |||
) | __USB_DC_IP_BODY_EX(__N, USB_DC##__N##_IP, __HEADER) |
#define __USB_OTG_DC_IP_BODY | ( | __N, | |
__HEADER | |||
) | __USB_DC_IP_BODY_EX(__N, USB_OTG##__N##_IP, __HEADER) |
#define __USB_DC_FROM_IP | ( | __N, | |
__OBJ, | |||
__DRV_NAME, | |||
__HEADER | |||
) |
#define __USB_DC_FUNC_DEF | ( | __N, | |
__VALUE | |||
) |
#define __USB_DC_INTERFACE_FUNC_DEF | ( | __N, | |
__VALUE | |||
) |
#define __USB_DC_BODY_EX | ( | __N, | |
__HEADER, | |||
__OBJ | |||
) |
#define __USB_DC_BODY | ( | __N, | |
__HEADER | |||
) | __USB_DC_BODY_EX(__N, __HEADER, USB_DC##__N) |
typedef void(* usb_ip_irqhandler_t) (void *param) |
typedef void(* usb_dc_evthandler_t) (void *param, usb_evt_t evt, uint_fast8_t value) |
typedef uint8_t usb_dc_speed_t |
typedef struct usb_dc_cfg_t usb_dc_cfg_t |
typedef struct usb_dc_ip_info_t usb_dc_ip_info_t |
typedef struct usb_hc_ip_info_t usb_hc_ip_info_t |
enum usb_dc_feature_t |
enum usb_ep_type_t |
enum usb_evt_t |
enum usb_dc_err_t |
def_interface | ( | i_usb_dc_t | ) |
def_interface | ( | i_usb_dc_ip_t | ) |
initialize
def_interface | ( | i_usb_hc_ip_t | ) |
initialize
void(* Fini)(void) | ( | void | ) |
void(* Reset) (usb_dc_cfg_t *cfg) | ( | usb_dc_cfg_t * | cfg | ) |
void(* Connect)(void) | ( | void | ) |
void(* Disconnect)(void) | ( | void | ) |
void(* Wakeup) (void) | ( | void | ) |
void(* SetAddress) (uint_fast8_t addr) | ( | uint_fast8_t | addr | ) |
uint_fast8_t(* GetAddress) (void) | ( | void | ) |
uint_fast16_t(* GetFrameNo) (void) | ( | void | ) |
uint_fast8_t(* GetMicroFrameNo) (void) | ( | void | ) |
uint_fast8_t(* GetFeature) (uint_fast8_t ep, uint_fast8_t feature) | ( | uint_fast8_t | ep, |
uint_fast8_t | feature | ||
) |
vsf_err_t(* Add) (uint_fast8_t ep, usb_ep_type_t type, uint_fast16_t size) | ( | uint_fast8_t | ep, |
usb_ep_type_t | type, | ||
uint_fast16_t | size | ||
) |
uint_fast16_t(* GetSize) (uint_fast8_t ep) | ( | uint_fast8_t | ep | ) |
vsf_err_t(* SetStall) (uint_fast8_t ep) | ( | uint_fast8_t | ep | ) |
bool(* IsStalled) (uint_fast8_t ep) | ( | uint_fast8_t | ep | ) |
vsf_err_t(* ClearStall) (uint_fast8_t ep) | ( | uint_fast8_t | ep | ) |
uint_fast32_t(* GetDataSize) (uint_fast8_t ep) | ( | uint_fast8_t | ep | ) |
get the data size in hw-buffer in transaction mode get the all transferred data size in transfer mode
vsf_err_t(* ReadBuffer) (uint_fast8_t ep, uint8_t *buffer, uint_fast16_t size) | ( | uint_fast8_t | ep, |
uint8_t * | buffer, | ||
uint_fast16_t | size | ||
) |
vsf_err_t(* EnableOut) (uint_fast8_t ep) | ( | uint_fast8_t | ep | ) |
vsf_err_t(* SetDataSize) (uint_fast8_t ep, uint_fast16_t size) | ( | uint_fast8_t | ep, |
uint_fast16_t | size | ||
) |
vsf_err_t(* WriteBuffer) (uint_fast8_t ep, uint8_t *buffer, uint_fast16_t size) | ( | uint_fast8_t | ep, |
uint8_t * | buffer, | ||
uint_fast16_t | size | ||
) |
struct { ... } Transaction |
vsf_err_t(* Recv) (uint_fast8_t ep, uint8_t *buffer, uint_fast32_t size) | ( | uint_fast8_t | ep, |
uint8_t * | buffer, | ||
uint_fast32_t | size | ||
) |
vsf_err_t(* Send) (uint_fast8_t ep, uint8_t *buffer, uint_fast32_t size, bool zlp) | ( | uint_fast8_t | ep, |
uint8_t * | buffer, | ||
uint_fast32_t | size, | ||
bool | zlp | ||
) |
struct { ... } Transfer |
struct { ... } Ep |
void(* Irq) (void) | ( | void | ) |
irq handler
typedef struct usb_dc_ip_cfg_t |
< interrupt priority
< irqhandler function
< dcd related parameters
void(* GetInfo)(usb_hc_ip_info_t *info) | ( | usb_dc_ip_info_t * | info | ) |
get register base
void(* IrqEnable)(void) | ( | void | ) |
irq handler
void(* IrqDisable)(void) | ( | void | ) |
typedef struct usb_hc_ip_cfg_t |
< interrupt priority
< irqhandler function
< hcd related parameters