| usbps Vitis Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List
- Examples

- Data Structures
- Data Fields

Data Fields
XUsbPs_DeviceConfig Struct Reference

The XUsbPs_DeviceConfig structure contains the configuration information to configure the USB controller for DEVICE mode. More...

## Data Fields
u8 | NumEndpoints
| Number of Endpoints for the controller. More...
XUsbPs_EpConfig | EpCfg [XUSBPS_MAX_ENDPOINTS]
| List of endpoint configurations. More...
u32 | DMAMemPhys
| Physical base address of DMAable memory allocated for the driver. More...
XUsbPs_Endpoint | Ep [XUSBPS_MAX_ENDPOINTS]
| List of endpoint metadata structures. More...
u32 | PhysAligned
| 64 byte aligned base address of the DMA memory block. More...

## Detailed Description

The XUsbPs_DeviceConfig structure contains the configuration information to configure the USB controller for DEVICE mode.

This data structure is used with the XUsbPs_ConfigureDevice() function call.

## Field Documentation

u32 XUsbPs_DeviceConfig::DMAMemPhys

Physical base address of DMAable memory allocated for the driver.

Referenced by main(), and XUsbPs_ConfigureDevice().

XUsbPs_Endpoint XUsbPs_DeviceConfig::Ep[XUSBPS_MAX_ENDPOINTS]

List of endpoint metadata structures.

Referenced by XUsbPs_EpBufferReceive(), XUsbPs_EpDataBufferReceive(), XUsbPs_EpGetData(), XUsbPs_EpGetSetupData(), XUsbPs_EpSetHandler(), XUsbPs_EpSetIsoHandler(), and XUsbPs_ReconfigureEp().

XUsbPs_EpConfig XUsbPs_DeviceConfig::EpCfg[XUSBPS_MAX_ENDPOINTS]

List of endpoint configurations.

Referenced by main(), XUsbPs_EpBufferReceive(), XUsbPs_EpBufferSendWithZLT(), XUsbPs_EpGetData(), and XUsbPs_ReconfigureEp().

u8 XUsbPs_DeviceConfig::NumEndpoints

Number of Endpoints for the controller.

This number depends on the runtime configuration of driver. The driver may configure fewer endpoints than are available in the core.

Referenced by main(), XUsbPs_EpBufferReceive(), XUsbPs_EpBufferSend(), XUsbPs_EpBufferSendWithZLT(), XUsbPs_EpDataBufferReceive(), XUsbPs_EpGetSetupData(), XUsbPs_EpPrime(), XUsbPs_EpSetHandler(), and XUsbPs_EpSetIsoHandler().

u32 XUsbPs_DeviceConfig::PhysAligned

64 byte aligned base address of the DMA memory block.

Will be computed and set by the L0/L1 driver.

Referenced by XUsbPs_ConfigureDevice().