Microchip® Advanced Software Framework

udi_vendor.h File Reference

USB Vendor class interface definitions.

Copyright (c) 2011-2018 Microchip Technology Inc. and its subsidiaries.

#include "conf_usb.h"
#include "usb_protocol.h"
#include "usb_protocol_vendor.h"
#include "udd.h"
#include "udc_desc.h"
#include "udi.h"

Data Structures

struct  udi_vendor_desc_t
 Interface descriptor structure for vendor Class interface. More...
 

Macros

#define UDI_VENDOR_DESC
 Content of vendor interface descriptor for all speeds. More...
 
#define UDI_VENDOR_DESC_FS
 Content of vendor interface descriptor for full speed only. More...
 
#define UDI_VENDOR_DESC_HS
 Content of vendor interface descriptor for high speed only. More...
 
#define UDI_VENDOR_EP_NB   (UDI_VENDOR_EP_NB_INT+UDI_VENDOR_EP_NB_BULK+UDI_VENDOR_EP_NB_ISO)
 
#define UDI_VENDOR_EP_NB_BULK   ((UDI_VENDOR_EPS_SIZE_BULK_FS)?2:0)
 
#define UDI_VENDOR_EP_NB_INT   ((UDI_VENDOR_EPS_SIZE_INT_FS)?2:0)
 Maximum 6 endpoints used by vendor interface. More...
 
#define UDI_VENDOR_EP_NB_ISO   ((UDI_VENDOR_EPS_SIZE_ISO_FS)?2:0)
 
#define UDI_VENDOR_STRING_ID   0
 By default no string associated to this interface. More...
 
Endpoint descriptors
#define UDI_VENDOR_EPS_INT_DESC
 
#define UDI_VENDOR_EPS_INT_DESC_FS
 
#define UDI_VENDOR_EPS_INT_DESC_HS
 
#define UDI_VENDOR_EPS_BULK_DESC
 
#define UDI_VENDOR_EPS_BULK_DESC_FS
 
#define UDI_VENDOR_EPS_BULK_DESC_HS
 
#define UDI_VENDOR_EPS_ISO_DESC
 
#define UDI_VENDOR_EPS_ISO_DESC_FS
 
#define UDI_VENDOR_EPS_ISO_DESC_HS
 

Functions

bool udi_vendor_bulk_in_run (uint8_t *buf, iram_size_t buf_size, udd_callback_trans_t callback)
 Start a transfer on bulk IN. More...
 
bool udi_vendor_bulk_out_run (uint8_t *buf, iram_size_t buf_size, udd_callback_trans_t callback)
 Start a transfer on bulk OUT. More...
 
bool udi_vendor_interrupt_in_run (uint8_t *buf, iram_size_t buf_size, udd_callback_trans_t callback)
 Start a transfer on interrupt IN. More...
 
bool udi_vendor_interrupt_out_run (uint8_t *buf, iram_size_t buf_size, udd_callback_trans_t callback)
 Start a transfer on interrupt OUT. More...
 
bool udi_vendor_iso_in_run (uint8_t *buf, iram_size_t buf_size, udd_callback_trans_t callback)
 Start a transfer on isochronous IN. More...
 
bool udi_vendor_iso_out_run (uint8_t *buf, iram_size_t buf_size, udd_callback_trans_t callback)
 Start a transfer on isochronous OUT. More...
 

Variables

UDC_DESC_STORAGE udi_api_t udi_api_vendor
 Global structure which contains standard UDI interface for UDC. More...