00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047 #ifndef usbprivate_H
00048 #define usbprivate_H
00049
00050 #include "usbprivatetypes.h"
00051
00052 PRIVATE void
00053 ixUSBInterruptHandler(USBDevice *device);
00054
00055 PRIVATE void
00056 ixUSBINInterruptHandler(EPStatusData *epData);
00057
00058 PRIVATE void
00059 ixUSBOUTInterruptHandler(EPStatusData *epData);
00060
00061 PRIVATE void
00062 ixUSBEP0InterruptHandler(EPStatusData *epData);
00063
00064 PRIVATE void
00065 ixUSBEP0TokenDecode(USBDevice *device);
00066
00067 PRIVATE void
00068 ixUSBEP0SetupPacketDecode(USBDevice *device);
00069
00070 PRIVATE void
00071 ixUSBEP0StateReset(USBDevice *device);
00072
00073 PRIVATE void
00074 ixUSBEP0RequestSend(USBDevice *device);
00075
00076 PRIVATE void
00077 ixUSBEP0DataDeliver(USBDevice *device);
00078
00079 PRIVATE void
00080 ixUSBEP0SendCleanup(USBDevice *device);
00081
00082 PRIVATE void
00083 ixUSBRequestSend(EPStatusData *epData);
00084
00085 PRIVATE void
00086 ixUSBSendCleanup(EPStatusData *epData);
00087
00088 PRIVATE void
00089 ixUSBReceiveProcess(EPStatusData *epData);
00090
00091 PRIVATE void
00092 ixUSBQueueInit(EPStatusData *epData);
00093
00094 PRIVATE BOOL
00095 ixUSBBufferEnqueue(EPStatusData *epData, IX_USB_MBLK *buf);
00096
00097 PRIVATE BOOL
00098 ixUSBBufferDequeue(EPStatusData *epData);
00099
00100 PRIVATE void
00101 ixUSBQueueDiscard(EPStatusData *epData);
00102
00103 PRIVATE void
00104 ixUSBTransferAbort(EPStatusData *epData);
00105
00106 PRIVATE UINT16
00107 ixUSBTransferDirectionGet(EPStatusData *epData);
00108
00109 #ifdef IX_USB_HAS_TIMESTAMP_CHECKS
00110
00111 #ifndef IX_USB_HAS_CUSTOM_TIMESTAMP_GET
00112
00113 PRIVATE UINT32
00114 ixUSBTimestampGet(void);
00115
00116 #endif
00117
00118 PRIVATE BOOL
00119 ixUSBTimestampCheck(EPStatusData *epData);
00120
00121 #endif
00122
00123 PRIVATE void
00124 ixUSBNullReceiveCallback(
00125 USBDevice *device,
00126 UINT16 sourceEndpoint,
00127 IX_USB_MBLK *receiveBuffer);
00128
00129 PRIVATE void
00130 ixUSBNullEventCallback(USBDevice *device, USBEventSet events);
00131
00132 PRIVATE void
00133 ixUSBNullSetupCallback(USBDevice *device, const char *packet);
00134
00135 typedef void (*EPInterruptHandler) (EPStatusData *);
00136
00137 #endif
00138