49 #define USBHCD_PIPE_UNUSED 0x00100000 50 #define USBHCD_PIPE_CONTROL 0x00130000 51 #define USBHCD_PIPE_BULK_OUT 0x00210000 52 #define USBHCD_PIPE_BULK_IN 0x00220000 53 #define USBHCD_PIPE_INTR_OUT 0x00410000 54 #define USBHCD_PIPE_INTR_IN 0x00420000 55 #define USBHCD_PIPE_ISOC_OUT 0x00810000 56 #define USBHCD_PIPE_ISOC_IN 0x00820000 57 #define USBHCD_PIPE_ISOC_OUT_DMA 0x01810000 58 #define USBHCD_PIPE_ISOC_IN_DMA 0x01820000 59 #define USBHCD_PIPE_BULK_OUT_DMA 0x01210000 60 #define USBHCD_PIPE_BULK_IN_DMA 0x01220000 67 #define USBHCD_FAULT_LOW 0x00000010 68 #define USBHCD_FAULT_HIGH 0x00000030 69 #define USBHCD_FAULT_VBUS_NONE 0x00000000 70 #define USBHCD_FAULT_VBUS_TRI 0x00000140 71 #define USBHCD_FAULT_VBUS_DIS 0x00000400 72 #define USBHCD_VBUS_MANUAL 0x00000004 73 #define USBHCD_VBUS_AUTO_LOW 0x00000002 74 #define USBHCD_VBUS_AUTO_HIGH 0x00000003 75 #define USBHCD_VBUS_FILTER 0x00010000 82 #define USBHCD_LPM_AVAIL 0x00000000 83 #define USBHCD_LPM_ERROR 0x00000001 84 #define USBHCD_LPM_PENDING 0x00000002 114 #define DECLARE_EVENT_DRIVER(VarName, pfnOpen, pfnClose, pfnEvent) \ 115 void IntFn(void *pvData); \ 116 const tUSBHostClassDriver VarName = \ 172 void (*pfnClose)(
void *pvInstance);
178 void (*pfnIntHandler)(
void *pvInstance);
207 extern void USBHCDInit(uint32_t ui32Index,
void *pvData,
213 uint32_t ui32Config);
217 uint32_t ui32NumDrivers);
220 uint32_t ui32Configuration);
223 uint32_t ui32AltSetting);
229 uint32_t ui32EndpointType,
233 uint32_t ui32EndpointType,
235 uint32_t ui32FIFOSize,
237 extern uint32_t
USBHCDPipeConfig(uint32_t ui32Pipe, uint32_t ui32MaxPayload,
238 uint32_t ui32Interval,
239 uint32_t ui32TargetEndpoint);
243 extern uint32_t
USBHCDPipeRead(uint32_t ui32Pipe, uint8_t *pui8Data,
255 uint32_t ui32StringIndex);
257 tUSBRequest *psSetupPacket,
259 uint8_t *pui8Data, uint32_t ui32Size,
260 uint32_t ui32MaxPacketSize);
293 #endif // __USBHOST_H__ uint32_t USBHCDPipeAlloc(uint32_t ui32Index, uint32_t ui32EndpointType, tUSBHostDevice *psDevice, tHCDPipeCallback pfnCallback)
Definition: usbhostenum.c:1345
uint32_t ui32Flags
Definition: usbhostpriv.h:165
uint32_t USBHCDPowerConfigGet(uint32_t ui32Index)
Definition: usbhostenum.c:2676
bool USBHCDFeatureSet(uint32_t ui32Index, uint32_t ui32Feature, void *pvFeature)
Definition: usbhostenum.c:6030
void USBHCDSetConfig(uint32_t ui32Index, uint32_t ui32Device, uint32_t ui32Configuration)
Definition: usbhostenum.c:3603
void USBHCDPipeDataAck(uint32_t ui32Pipe)
Definition: usbhostenum.c:1968
uint32_t USBHCDPipeRead(uint32_t ui32Pipe, uint8_t *pui8Data, uint32_t ui32Size)
Definition: usbhostenum.c:2013
void USBHCDSuspend(uint32_t ui32Index)
Definition: usbhostenum.c:3105
uint32_t USBHCDPipeSchedule(uint32_t ui32Pipe, uint8_t *pui8Data, uint32_t ui32Size)
Definition: usbhostenum.c:1798
uint8_t USBHCDDevClass(uint32_t ui32Instance, uint32_t ui32Interface)
Definition: usbhostenum.c:5851
const tUSBHostClassDriver g_sUSBHostMSCClassDriver
Definition: usbhmsc.c:109
void USBHCDLPMResume(uint32_t ui32Index)
Definition: usbhostenum.c:6242
void USBHCDPowerConfigInit(uint32_t ui32Index, uint32_t ui32Flags)
Definition: usbhostenum.c:2651
int32_t USBHCDEventDisable(uint32_t ui32Index, void *pvEventDriver, uint32_t ui32Event)
Definition: usbhostenum.c:780
uint32_t ui32InterfaceClass
The interface class that this device class driver supports.
Definition: usbhost.h:161
void USBHCDResume(uint32_t ui32Index)
Definition: usbhostenum.c:3129
uint8_t USBHCDDevHubPort(uint32_t ui32Instance)
Definition: usbhostenum.c:5785
uint32_t USBHCDPowerAutomatic(uint32_t ui32Index)
Definition: usbhostenum.c:2784
Definition: usbhostpriv.h:108
uint32_t USBHCDPipeReadNonBlocking(uint32_t ui32Pipe, uint8_t *pui8Data, uint32_t ui32Size)
Definition: usbhostenum.c:1922
void USB0_IRQHostHandler(void)
Definition: usbhostenum.c:4430
void USBHCDEvents(void *pvData)
uint32_t USBHCDControlTransfer(uint32_t ui32Index, tUSBRequest *psSetupPacket, tUSBHostDevice *psDevice, uint8_t *pui8Data, uint32_t ui32Size, uint32_t ui32MaxPacketSize)
Definition: usbhostenum.c:5204
uint32_t USBHCDPipeWrite(uint32_t ui32Pipe, uint8_t *pui8Data, uint32_t ui32Size)
Definition: usbhostenum.c:1548
uint8_t USBHCDDevSubClass(uint32_t ui32Instance, uint32_t ui32Interface)
Definition: usbhostenum.c:5912
void USBHCDSetInterface(uint32_t ui32Index, uint32_t ui32Device, uint32_t ui32Interface, uint32_t ui32AltSetting)
Definition: usbhostenum.c:3669
void(* tHCDPipeCallback)(uint32_t ui32Pipe, uint32_t ui32Event)
Definition: usbhost.h:141
void USBHCDRegisterDrivers(uint32_t ui32Index, const tUSBHostClassDriver *const *ppsHClassDrvrs, uint32_t ui32NumDrivers)
Definition: usbhostenum.c:2968
uint32_t USBHCDPipeConfig(uint32_t ui32Pipe, uint32_t ui32MaxPayload, uint32_t ui32Interval, uint32_t ui32TargetEndpoint)
Definition: usbhostenum.c:1386
void USBHCDInit(uint32_t ui32Index, void *pvData, uint32_t ui32Size)
Definition: usbhostenum.c:2831
const tUSBHostClassDriver g_sUSBHIDClassDriver
Definition: usbhhid.c:101
Definition: usbhost.h:156
uint8_t USBHCDDevProtocol(uint32_t ui32Instance, uint32_t ui32Interface)
Definition: usbhostenum.c:5972
uint32_t USBHCDLPMSleep(tUSBHostDevice *psDevice)
Definition: usbhostenum.c:6182
void USBHCDTerm(uint32_t ui32Index)
Definition: usbhostenum.c:3000
void USBHCDPipeFree(uint32_t ui32Pipe)
Definition: usbhostenum.c:2267
uint32_t USBHCDPipeStatus(uint32_t ui32Pipe)
Definition: usbhostenum.c:1523
uint32_t USBHCDPowerConfigSet(uint32_t ui32Index, uint32_t ui32Config)
Definition: usbhostenum.c:2702
uint8_t USBHCDDevAddress(uint32_t ui32Instance)
Definition: usbhostenum.c:5816
uint32_t USBHCDPipeTransferSizeGet(uint32_t ui32Pipe)
Definition: usbhostenum.c:1060
const tUSBHostClassDriver g_sUSBHostAudioClassDriver
Definition: usbhaudio.c:177
uint32_t ui32Interface
Definition: usbhostpriv.h:118
uint32_t USBHCDPipeAllocSize(uint32_t ui32Index, uint32_t ui32EndpointType, tUSBHostDevice *psDevice, uint32_t ui32FIFOSize, tHCDPipeCallback pfnCallback)
Definition: usbhostenum.c:1101
void USBHCDMain(void)
Definition: usbhostenum.c:4678
uint32_t USBHCDStringDescriptorGet(tUSBHostDevice *psDevice, uint8_t *pui8Buffer, uint32_t ui32Size, uint32_t ui32LangID, uint32_t ui32StringIndex)
Definition: usbhostenum.c:3378
int32_t USBHCDEventEnable(uint32_t ui32Index, void *pvEventDriver, uint32_t ui32Event)
Definition: usbhostenum.c:719
void USBHCDReset(uint32_t ui32Index)
Definition: usbhostenum.c:3064