VSF Documented
Macros | Functions
usb_lv0.c File Reference
#include "../__common.h"
#include "./usb.h"

Macros

#define __USB_OTG_IMPLEMENT_IRQHANDLER(__N)
 
#define ____USB_OTG_IMPLEMENT(__N, __VALUE)
 
#define __USB_OTG_IMPLEMENT(__N, __VALUE)   ____USB_OTG_IMPLEMENT(__N, __VALUE)
 
#define USB_OTG_IMPLEMENT(__N, __VALUE)   __USB_OTG_IMPLEMENT(__N, __VALUE)
 

Functions

void vsf_hw_usbd_irq (vsf_hw_usb_t *dc)
 
void vsf_hw_usbh_irq (vsf_hw_usb_t *dc)
 

Macro Definition Documentation

◆ __USB_OTG_IMPLEMENT_IRQHANDLER

#define __USB_OTG_IMPLEMENT_IRQHANDLER (   __N)
Value:
if (USB_OTG##__N##_IP.is_host) { \
vsf_hw_usbh_irq(&USB_OTG##__N##_IP); \
} else { \
vsf_hw_usbd_irq(&USB_OTG##__N##_IP); \
}

◆ ____USB_OTG_IMPLEMENT

#define ____USB_OTG_IMPLEMENT (   __N,
  __VALUE 
)
Value:
extern vsf_err_t USB_OTG##__N##_set_ep_fifo(vsf_hw_usb_t *usb, uint8_t ep, uint8_t *buffer, uint_fast16_t size);\
extern vsf_err_t USB_OTG##__N##_write_ep_fifo(vsf_hw_usb_t *usb, uint8_t ep, uint_fast16_t size);\
extern void * USB_OTG##__N##_get_ep_reg(void); \
void USB_OTG##__N##_IRQHandler(void) \
{ \
__USB_OTG_IMPLEMENT_IRQHANDLER(__N) \
} \
static const vsf_hw_usb_const_t __USB_OTG##__N##_const = { \
USB_OTG##__N##_CONFIG \
}; \
vsf_hw_usb_t USB_OTG##__N##_IP = { \
.param = &__USB_OTG##__N##_const, \
};
vsf_err_t
Definition __type.h:42
unsigned short uint_fast16_t
Definition stdint.h:25
unsigned char uint8_t
Definition stdint.h:5
Definition usb.h:44
Definition usb.h:53
void * param
Definition usb.h:57
uint32_t size
Definition vsf_memfs.h:50

◆ __USB_OTG_IMPLEMENT

#define __USB_OTG_IMPLEMENT (   __N,
  __VALUE 
)    ____USB_OTG_IMPLEMENT(__N, __VALUE)

◆ USB_OTG_IMPLEMENT

#define USB_OTG_IMPLEMENT (   __N,
  __VALUE 
)    __USB_OTG_IMPLEMENT(__N, __VALUE)

Function Documentation

◆ vsf_hw_usbd_irq()

void vsf_hw_usbd_irq ( vsf_hw_usb_t dc)

◆ vsf_hw_usbh_irq()

void vsf_hw_usbh_irq ( vsf_hw_usb_t dc)