![]() |
usbps
Vitis Drivers API Documentation
|
This file contains the implementation of the chapter 9 code for the example.
MODIFICATION HISTORY:
Ver Who Date Changes
1.00a jz 10/10/10 First release 1.04a nm 02/05/13 Fixed CR# 696550. Added template code for Vendor request. 1.04a nm 03/04/13 Fixed CR# 704022. Implemented TEST_MODE Feature. 1.06a kpc 11/11/13 Always use global memory for dma operations 2.1 kpc 4/29/14 Align dma buffers to cache line boundary 2.4 vak 4/01/19 Fixed IAR data_alignment warnings 2.9 nd 3/18/24 Fixed failures reported by CV test suite. *
Functions | |
void | XUsbPs_ClassReq (XUsbPs *InstancePtr, XUsbPs_SetupData *SetupData) |
This function is called by Chapter9 handler when class request is received from Host. More... | |
u32 | XUsbPs_Ch9SetupDevDescReply (u8 *BufPtr, u32 BufLen) |
This function returns the device descriptor for the device. More... | |
u32 | XUsbPs_Ch9SetupCfgDescReply (u8 *BufPtr, u32 BufLen) |
This function returns the configuration descriptor for the device. More... | |
u32 | XUsbPs_Ch9SetupStrDescReply (u8 *BufPtr, u32 BufLen, u8 Index) |
This function returns a string descriptor for the given index. More... | |
void | XUsbPs_SetConfiguration (XUsbPs *InstancePtr, int ConfigIdx) |
Changes State of Core to USB configured State. More... | |
void | XUsbPs_SetConfigurationApp (XUsbPs *InstancePtr, XUsbPs_SetupData *SetupData) |
This function is called by Chapter9 handler when SET_CONFIGURATION command is received from Host. More... | |
void | XUsbPs_SetInterfaceHandler (XUsbPs *InstancePtr, XUsbPs_SetupData *SetupData) |
This function is called by Chapter9 handler when SET_CONFIGURATION command or SET_INTERFACE command is received from Host. More... | |
int | XUsbPs_Ch9HandleSetupPacket (XUsbPs *InstancePtr, XUsbPs_SetupData *SetupData) |
This function handles a Setup Data packet from the host. More... | |
void | XUsbPs_SetConfigDone (void *InstancePtr, u8 Flag) |
Set the Config state. More... | |
u8 | XUsbPs_GetConfigDone (void *InstancePtr) |
Get the Config state. More... | |
int XUsbPs_Ch9HandleSetupPacket | ( | XUsbPs * | InstancePtr, |
XUsbPs_SetupData * | SetupData | ||
) |
This function handles a Setup Data packet from the host.
InstancePtr | is a pointer to XUsbPs instance of the controller. |
SetupData | is the structure containing the setup request. |
References XUsbPs_SetupData::bmRequestType, XUsbPs_SetupData::bRequest, XUsbPs_ClassReq(), XUSBPS_EP_DIRECTION_IN, XUSBPS_EP_DIRECTION_OUT, XUsbPs_EpStall, and XUSBPS_REQ_TYPE_MASK.
u32 XUsbPs_Ch9SetupCfgDescReply | ( | u8 * | BufPtr, |
u32 | BufLen | ||
) |
This function returns the configuration descriptor for the device.
InstancePtr | is a pointer to the Usb_DevData instance. |
BufPtr | is the pointer to the buffer that is to be filled with the descriptor. |
BufLen | is the size of the provided buffer. |
BufPtr | is the pointer to the buffer that is to be filled with the descriptor. |
BufLen | is the size of the provided buffer. |
u32 XUsbPs_Ch9SetupDevDescReply | ( | u8 * | BufPtr, |
u32 | BufLen | ||
) |
This function returns the device descriptor for the device.
InstancePtr | is a pointer to the Usb_DevData instance. |
BufPtr | is pointer to the buffer that is to be filled with the descriptor. |
BufLen | is the size of the provided buffer. |
BufPtr | is pointer to the buffer that is to be filled with the descriptor. |
BufLen | is the size of the provided buffer. |
u32 XUsbPs_Ch9SetupStrDescReply | ( | u8 * | BufPtr, |
u32 | BufLen, | ||
u8 | Index | ||
) |
This function returns a string descriptor for the given index.
InstancePtr | is a pointer to the Usb_DevData instance. |
BufPtr | is a pointer to the buffer that is to be filled with the descriptor. |
BufLen | is the size of the provided buffer. |
Index | is the index of the string for which the descriptor is requested. |
BufPtr | is a pointer to the buffer that is to be filled with the descriptor. |
BufLen | is the size of the provided buffer. |
Index | is the index of the string for which the descriptor is requested. |
void XUsbPs_ClassReq | ( | XUsbPs * | InstancePtr, |
XUsbPs_SetupData * | SetupData | ||
) |
This function is called by Chapter9 handler when class request is received from Host.
InstancePtr | is pointer to Usb_DevData instance. |
SetupData | is the setup packet received from Host. |
This function is called by Chapter9 handler when class request is received from Host.
InstancePtr | is a pointer to XUsbPs instance of the controller. |
SetupData | is the setup data structure containing the setup request. |
Referenced by XUsbPs_Ch9HandleSetupPacket().
u8 XUsbPs_GetConfigDone | ( | void * | InstancePtr | ) |
Get the Config state.
InstancePtr | is a private member of Usb_DevData instance. |
void XUsbPs_SetConfigDone | ( | void * | InstancePtr, |
u8 | Flag | ||
) |
Set the Config state.
InstancePtr | is a private member of Usb_DevData instance. |
Flag | is the config value. |
Referenced by XUsbPs_SetConfiguration(), and XUsbPs_SetConfigurationApp().
void XUsbPs_SetConfiguration | ( | XUsbPs * | InstancePtr, |
int | ConfigIdx | ||
) |
Changes State of Core to USB configured State.
InstancePtr | is a pointer to the Usb_DevData instance. |
Ctrl | is a pointer to the Setup packet data. |
Changes State of Core to USB configured State.
InstancePtr | is a pointer to XUsbPs instance of the controller. |
ConfigIdx | is the Index of the desired configuration. |
void XUsbPs_SetConfigurationApp | ( | XUsbPs * | InstancePtr, |
XUsbPs_SetupData * | SetupData | ||
) |
This function is called by Chapter9 handler when SET_CONFIGURATION command is received from Host.
InstancePtr | is pointer to Usb_DevData instance. |
SetupData | is the setup packet received from Host. |
InstancePtr | is pointer to XUsbPs instance of the controller. |
SetupData | is the setup packet received from Host. |
void XUsbPs_SetInterfaceHandler | ( | XUsbPs * | InstancePtr, |
XUsbPs_SetupData * | SetupData | ||
) |
This function is called by Chapter9 handler when SET_CONFIGURATION command or SET_INTERFACE command is received from Host.
InstancePtr | is pointer to Usb_DevData instance. |
SetupData | is the setup packet received from Host. |
InstancePtr | is pointer to XUsbPs instance of the controller. |
SetupData | is the setup packet received from Host. |