USB Controller
ROM Location:
ROM_APITABLE is an array of pointers located at 0x0100.0010.
ROM_USBTABLE is an array of pointers located at ROM_APITABLE[16].
ROM_USBDevEndpointConfigGet is a function pointer located at ROM_USBTABLE[41].
Parameters:
ui32Base specifies the USB module base address.
ui32Endpoint is the endpoint to access.
pui32MaxPacketSize is a pointer which is written with the maximum packet size for this end-
point.
pui32Flags is a pointer which is written with the current endpoint settings. On entry to the
function, this pointer must contain either USB_EP_DEV_IN or USB_EP_DEV_OUT to in-
dicate whether the IN or OUT endpoint is to be queried.
Description:
This function will return the basic configuration for an endpoint in device mode. The values
returned in ∗pui32MaxPacketSize and ∗pui32Flags are equivalent to the ui32MaxPacketSize
and ui32Flags previously passed to ROM_USBDevEndpointConfigSet() for this endpoint.
Note:
This function should only be called in device mode.
Returns:
None.
24.3.1.7 ROM_USBDevEndpointConfigSet
Sets the configuration for an endpoint.
Prototype:
void
ROM_USBDevEndpointConfigSet(uint32_t ui32Base,
uint32_t ui32Endpoint,
uint32_t ui32MaxPacketSize,
uint32_t ui32Flags)
ROM Location:
ROM_APITABLE is an array of pointers located at 0x0100.0010.
ROM_USBTABLE is an array of pointers located at ROM_APITABLE[16].
ROM_USBDevEndpointConfigSet is a function pointer located at ROM_USBTABLE[5].
Parameters:
ui32Base specifies the USB module base address.
ui32Endpoint is the endpoint to access.
ui32MaxPacketSize is the maximum packet size for this endpoint.
ui32Flags are used to configure other endpoint settings.
Description:
This function will set the basic configuration for an endpoint in device mode. Endpoint zero
does not have a dynamic configuration, so this function should not be called for endpoint zero.
The ui32Flags parameter determines some of the configuration while the other parameters
provide the rest.
April 8, 2013 307