⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usbd_func.h

📁 epson usb2.0 控制芯片 S1R72V05 固件程序。
💻 H
📖 第 1 页 / 共 2 页
字号:
/*--- USBD_FuncGetParam,USBD_FuncSetParam -----------------------------------*/
typedef struct usbd_func_power {
	UCHAR		bLength;									/* Parameter length */
	UCHAR		bType;										/* Parameter type */
	UCHAR		bSuspend;									/* Power saving setting when Suspend */
	UCHAR		bDetach;									/* Power saving setting when Detach */
} USBD_FUNC_POWER;

typedef struct usbd_func_hwfeature {
	UCHAR		bLength;									/* Parameter length */
	UCHAR		bType;										/* Parameter type */
	UCHAR		bHwAutoNego;								/* AutoNego H/W function setting */
	UCHAR		bHwSetAddress;								/* Setting for support function of HW SetAddress H/W */
	UCHAR		bHwReplyDescriptor;							/* Setting for support function of Repry Descriptor H/W */
} USBD_FUNC_HWFEATURE;

typedef struct usbd_func_swfeature {
	UCHAR		bLength;									/* Parameter length */
	UCHAR		bType;										/* Parameter type */
	UCHAR		bSwAutoAttach;								/* Auto Attach mode setting */
	UCHAR		bSwAutoRemoteWakeup;						/* Setting for Auto Remote Wakeup mode */
} USBD_FUNC_SWFEATURE;

typedef struct usbd_func_fifoarea {
	UCHAR		bLength;									/* Parameter length */
	UCHAR		bType;										/* Parameter type */
	USHORT		wReplyArea;
	ULONG		dwEpxFifoArea[4];							/* FIFO area */
} USBD_FUNC_FIFOAREA;

typedef struct usbd_func_payloadsize {
	UCHAR		bLength;									/* Parameter length */
	UCHAR		bType;										/* Parameter type */
	USHORT		wEPxPayloadSize[3];							/* Payload Size */
} USBD_FUNC_PAYLOADSIZE;

typedef struct usbd_func_bulkonly {
	UCHAR		bLength;									/* Parameter length */
	UCHAR		bType;										/* Parameter type*/
	UCHAR		bCBWEPNum;									/* Endpoint used with CBW */
	UCHAR		bCSWEPNum;									/* Endpoint used with CSW */
} USBD_FUNC_BULKONLY;

/*--- USBD_FuncGetSetupPacket ----------------------------------------------*/
typedef struct usbd_func_request {
		UCHAR		bmRequestType;							/* bmRequestType */
		UCHAR		bRequest;								/* bRequest	*/
		UCHAR		wValue[2];								/* wValue */
		UCHAR		wIndex[2];								/* wIndex */
		UCHAR		wLength[2];								/* wLength */
} USBD_FUNC_REQUEST;

/*--- USBD_FuncRegisterCBREPxPIOTransfer -----------------------------------*/
typedef struct usbd_func_trninfo {
		ULONG		address;								/* Remained transfer number */
} USBD_FUNC_TRNIFNO;

/*=== Function Prototype ==================================================*/
extern LONG USBD_FuncReset(void);
extern LONG USBD_FuncOpen(void);
extern LONG USBD_FuncClose(void);
extern LONG USBD_FuncAllocID(USHORT *pId);
extern LONG USBD_FuncFreeID(USHORT id );
extern LONG USBD_FuncStart(UCHAR mode);
extern LONG USBD_FuncStop(void);
extern LONG USBD_FuncGetDescriptorInfo(UCHAR speed,USHORT type,UCHAR *ptr,USHORT count,USHORT offset);
extern LONG USBD_FuncSetDescriptorInfo(UCHAR speed,USHORT type,UCHAR *ptr);
extern LONG USBD_FuncClearDescriptorInfo(UCHAR speed,USHORT type);
extern LONG USBD_FuncGetDescriptorInfoAddress(UCHAR speed,USHORT type,UCHAR **ptr);
extern LONG USBD_FuncSetDescriptorInfoAddress(UCHAR speed,USHORT type,UCHAR *ptr);
extern LONG USBD_FuncGetParameter(UCHAR type,void *ptr,USHORT count);
extern LONG USBD_FuncSetParameter(void *ptr);
extern LONG USBD_FuncUsbBusWakeup(void);
extern LONG USBD_FuncSendRemoteWakeupA(void);
extern LONG USBD_FuncRegisterCBRSendRemoteWakeup(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRSendRemoteWakeup(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncGetStatus(USHORT id,UCHAR type,ULONG *pstatus);
extern LONG USBD_FuncGetSETUPPacket(USBD_FUNC_REQUEST *pRequest);
extern LONG USBD_FuncGetUSBAddress(UCHAR *pusbaddress);
extern LONG USBD_FuncSetAddress(UCHAR usbaddress);
extern LONG USBD_FuncSetTestMode(UCHAR testmode);
extern LONG USBD_FuncRegisterCBRVBusChange(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRVBusChange(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncRegisterCBRAttach(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRAttach(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncRegisterCBRDetach(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRDetach(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncRegisterCBRReset(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRReset(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncRegisterCBRSuspend(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRSuspend(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncRegisterCBRWakeup(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRWakeup(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncRegisterCBRResume(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRResume(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncRegisterCBRChangeUSBAddress(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRChangeUSBAddress(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncRegisterCBREnterTestMode(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBREnterTestMode(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncSetConfigureEndpoint(UCHAR config_num);
extern LONG USBD_FuncSetAlternateEndpoint(UCHAR config_num,UCHAR interface_num,UCHAR alternate_num);
extern LONG USBD_FuncInitEndpoint(UCHAR endpoint_num);
extern LONG USBD_FuncSetEPxControl(UCHAR endpoint_num,UCHAR bitmask,UCHAR flag);
extern LONG USBD_FuncGetEPxControl(UCHAR endpoint_num,UCHAR *epxstatus);
extern LONG	USBD_FuncGetEPxStatus(UCHAR endpoint_num,UCHAR *epxstatus,UCHAR flag);
extern LONG USBD_FuncSetEPxIntEvent(USHORT id,UCHAR endpoint_num,UCHAR bitmask,UCHAR autodisable);
extern LONG USBD_FuncGetEPxIntStatus(USHORT id,UCHAR endpoint_num,UCHAR *epxstatus);
extern LONG USBD_FuncRegisterCBREPxInt(USHORT id,UCHAR endpoint_num,CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncUnregisterCBREPxInt(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncRegisterCBRRequestDecode(CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncUnregisterCBRRequestDecode(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncReserveControlTransfer(void);
extern LONG USBD_FuncEP0StatusStageReadyA(USHORT id);
extern LONG USBD_FuncRegisterCBREP0StatusStageComplete(USHORT id,CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncUnregisterCBREP0StatusStageComplete(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncEPxPIOSimpleTransferA(USHORT id,UCHAR endpoint_num,UCHAR *ptr,ULONG transfersize);
extern LONG USBD_FuncEPxPIOSimpleTransferAbort(USHORT id,UCHAR endpoint_num);
extern LONG USBD_FuncRegisterCBREPxPIOSimpleTransferComplete(USHORT id,UCHAR endpoint_num,CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncUnregisterCBREPxPIOSimpleTransferComplete(UCHAR endpoint_num,CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncSetEPxTransferAParam(UCHAR endpoint_num,ULONG pio_size);
extern LONG USBD_FuncEPxPIODataTransferReady(USHORT id,UCHAR endpoint_num);
extern LONG USBD_FuncEPxPIOTransferA(USHORT id,UCHAR endpoint_num,ULONG transfersize);
extern LONG USBD_FuncRegisterCBREPxPIOTransfer(USHORT id,UCHAR endpoint_num,CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncUnregisterCBREPxPIOTransfer(UCHAR endpoint_num,CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncRegisterCBREPxPIOTransferComplete(USHORT id,UCHAR endpoint_num,CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncUnregisterCBREPxPIOTransferComplete(UCHAR endpoint_num,CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncStartEPxDMATransfer(USHORT id,UCHAR endpoint_num);
extern LONG USBD_FuncEndEPxDMATransfer(UCHAR endpoint_num);
extern LONG USBD_FuncSetEPxJoinDMA(UCHAR endpoint_num,UCHAR dmaCh,UCHAR enable,UCHAR autoEnShort);
extern LONG USBD_FuncSetEPxTransferMode(USHORT id,UCHAR endpoint_num,UCHAR mode);
extern LONG USBD_FuncGetEPxPIODataRemain(UCHAR endpoint_num,ULONG *remain);

extern LONG USBD_FuncSetupReplyDescriptor(UCHAR speed,USHORT type);
extern LONG USBD_FuncGoReplyDescriptorA(UCHAR speed,USHORT type,USHORT size);
extern LONG USBD_FuncRegisterCBRReplyDescriptor(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncUnregisterCBRReplyDescriptor(CALLBACK_PROC	pfnCallback);
extern LONG USBD_FuncSetBulkOnlyMode(UCHAR mode,UCHAR enable);
extern LONG USBD_FuncGetBulkOnlyCBW(UCHAR *pCBW);
extern LONG USBD_FuncSetBulkOnlyCSW(UCHAR *pCSW);
extern LONG USBD_FuncRegisterCBRBulkOnlyEvent(CALLBACK_PROC pfnCallback);
extern LONG USBD_FuncUnregisterCBRBulkOnlyEvent(CALLBACK_PROC pfnCallback);

extern LONG PrvUsbBusResumeProcess(ULONG lParam0,ULONG lParam1,void *pParam);

#endif	/* USBD_FUNC_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -