usbps
Vitis Drivers API Documentation
xusbps_endpoint.h File Reference

Macros

#define XUSBPS_dTDNLP   0x00
 Endpoint Device Transfer Descriptor. More...
 
#define XUSBPS_dTDTOKEN   0x04
 Descriptor Token. More...
 
#define XUSBPS_dTDBPTR0   0x08
 Buffer Pointer 0. More...
 
#define XUSBPS_dTDBPTR1   0x0C
 Buffer Pointer 1. More...
 
#define XUSBPS_dTDBPTR2   0x10
 Buffer Pointer 2. More...
 
#define XUSBPS_dTDBPTR3   0x14
 Buffer Pointer 3. More...
 
#define XUSBPS_dTDBPTR4   0x18
 Buffer Pointer 4. More...
 
#define XUSBPS_dTDRSRVD   0x1C
 Reserved field. More...
 
#define XUSBPS_dTDUSERDATA   XUSBPS_dTDRSRVD
 Reserved field. More...
 
#define XUsbPs_dTDInvalidateCache(dTDPtr)   Xil_DCacheInvalidateRange((unsigned int)dTDPtr, sizeof(XUsbPs_dTD))
 

IMPORTANT NOTE:

More...
 
#define XUsbPs_dTDSetTransferLen(dTDPtr, Len)
 This macro sets the Transfer Length for the given Transfer Descriptor. More...
 
#define XUsbPs_dTDGetNLP(dTDPtr)
 This macro gets the Next Link pointer of the given Transfer Descriptor. More...
 
#define XUsbPs_dTDSetNLP(dTDPtr, NLP)
 This macro sets the Next Link pointer of the given Transfer Descriptor. More...
 
#define XUsbPs_dTDGetTransferLen(dTDPtr)
 This macro gets the Transfer Length for the given Transfer Descriptor. More...
 
#define XUsbPs_dTDSetIOC(dTDPtr)
 This macro sets the Interrupt On Complete (IOC) bit for the given Transfer Descriptor. More...
 
#define XUsbPs_dTDSetTerminate(dTDPtr)
 This macro sets the Terminate bit for the given Transfer Descriptor. More...
 
#define XUsbPs_dTDClrTerminate(dTDPtr)
 This macro clears the Terminate bit for the given Transfer Descriptor. More...
 
#define XUsbPs_dTDIsActive(dTDPtr)
 This macro checks if the given descriptor is active. More...
 
#define XUsbPs_dTDSetActive(dTDPtr)
 This macro sets the Active bit for the given Transfer Descriptor. More...
 
#define XUsbPs_dTDSetMultO(dTDPtr, val)
 This macro sets the multiplier bit for the Transfer Descriptor. More...
 
#define XUsbPs_ReaddTD(dTDPtr, Id)   (*(u32 *)((u32)(dTDPtr) + (u32)(Id)))
 This macro reads the content of a field in a Transfer Descriptor. More...
 
#define XUsbPs_WritedTD(dTDPtr, Id, Val)   (*(u32 *) ((u32)(dTDPtr) + (u32)(Id)) = (u32)(Val))
 This macro writes a value to a field in a Transfer Descriptor. More...
 
#define XUSBPS_dQHCFG   0x00
 Endpoint Device Queue Head. More...
 
#define XUSBPS_dQHCPTR   0x04
 dQH Current dTD Pointer More...
 
#define XUSBPS_dQHdTDNLP   0x08
 dTD Next Link Ptr in dQH overlay More...
 
#define XUSBPS_dQHdTDTOKEN   0x0C
 dTD Token in dQH overlay More...
 
#define XUSBPS_dQHSUB0   0x28
 USB dQH Setup Buffer 0. More...
 
#define XUSBPS_dQHSUB1   0x2C
 USB dQH Setup Buffer 1. More...
 
#define XUsbPs_dQHSetMaxPacketLen(dQHPtr, Len)
 This macro sets the Maximum Packet Length field of the give Queue Head. More...
 
#define XUsbPs_dQHSetIOS(dQHPtr)
 This macro sets the Interrupt On Setup (IOS) bit for an endpoint. More...
 
#define XUsbPs_dQHClrIOS(dQHPtr)
 This macro clears the Interrupt On Setup (IOS) bit for an endpoint. More...
 
#define XUsbPs_dQHEnableZLT(dQHPtr)
 This macro enables Zero Length Termination for the endpoint. More...
 
#define XUsbPs_dQHDisableZLT(dQHPtr)
 This macro disables Zero Length Termination for the endpoint. More...
 
#define XUsbPs_ReaddQH(dQHPtr, Id)   (*(u32 *)((u32)(dQHPtr) + (u32) (Id)))
 This macro reads the content of a field in a Queue Head. More...
 
#define XUsbPs_WritedQH(dQHPtr, Id, Val)   (*(u32 *) ((u32)(dQHPtr) + (u32)(Id)) = (u32)(Val))
 This macro writes a value to a field in a Queue Head. More...
 
dTD Next Link Pointer (dTDNLP) bit positions.
#define XUSBPS_dTDNLP_T_MASK   0x00000001
 USB dTD Next Link Pointer Terminate Bit. More...
 
#define XUSBPS_dTDNLP_ADDR_MASK   0xFFFFFFE0
 USB dTD Next Link Pointer Address [31:5]. More...
 
dTD Token (dTDTOKEN) bit positions.
#define XUSBPS_dTDTOKEN_XERR_MASK   0x00000008
 dTD Transaction Error More...
 
#define XUSBPS_dTDTOKEN_BUFERR_MASK   0x00000020
 dTD Data Buffer Error More...
 
#define XUSBPS_dTDTOKEN_HALT_MASK   0x00000040
 dTD Halted Flag More...
 
#define XUSBPS_dTDTOKEN_ACTIVE_MASK   0x00000080
 dTD Active Bit More...
 
#define XUSBPS_dTDTOKEN_MULTO_MASK   0x00000C00
 Multiplier Override Field [1:0]. More...
 
#define XUSBPS_dTDTOKEN_IOC_MASK   0x00008000
 Interrupt on Complete Bit. More...
 
#define XUSBPS_dTDTOKEN_LEN_MASK   0x7FFF0000
 Transfer Length Field. More...
 
dQH Configuration (dQHCFG) bit positions.
#define XUSBPS_dQHCFG_IOS_MASK   0x00008000
 USB dQH Interrupt on Setup Bit. More...
 
#define XUSBPS_dQHCFG_MPL_MASK   0x07FF0000
 USB dQH Maximum Packet Length Field [10:0]. More...
 
#define XUSBPS_dQHCFG_MPL_SHIFT   16
 
#define XUSBPS_dQHCFG_ZLT_MASK   0x20000000
 USB dQH Zero Length Termination Select Bit. More...
 
#define XUSBPS_dQHCFG_MULT_MASK   0xC0000000
 
#define XUSBPS_dQHCFG_MULT_SHIFT   30