Files
vxWorks/h/usb2/usbEhcdInterfaces.h
2025-08-20 18:25:46 +08:00

136 lines
3.1 KiB
C

/* ehcd_Interfaces.h - Utility Functions for EHCI */
/* Copyright 2004 Wind River Systems, Inc.
This software includes software licensed to Wind River Systems, Inc.
by Wipro, Ltd. Wind River licensees may use this software according
to the terms of their Wind River license agreement(s) applicable to
this software.
*/
/*
DESCRIPTION
This contains the interfaces which are registered with
the USBD.
*/
/*
INTERNAL
*******************************************************************************
* Filename : usbEhcdInterfaces.h
*
* Copyright :
*
* THE COPYRIGHT IN THE CONTENTS OF THIS SOFTWARE VEST WITH WIPRO
* LIMITED A COMPANY INCORPORATED UNDER THE LAWS OF INDIA AND HAVING
* ITS REGISTERED OFFICE AT DODDAKANNELLI SARJAPUR ROAD BANGALORE
* 560 035. DISTRIBUTION OR COPYING OF THIS SOFTWARE BY
* ANY INDIVIDUAL OR ENTITY OTHER THAN THE ADDRESSEE IS STRICTLY
* PROHIBITED AND MAY INCUR LEGAL LIABILITY. IF YOU ARE NOT THE
* ADDRESSEE PLEASE NOTIFY US IMMEDIATELY BY PHONE OR BY RETURN EMAIL.
* THE ADDRESSEE IS ADVISED TO MAINTAIN THE PROPRIETARY INTERESTS OF
* THIS COPYRIGHT AS PER APPLICABLE LAWS.
*
*
*
* Description : This contains the interfaces which are registered with
* the USBD.
*
*
******************************************************************************/
#ifndef __INCusbEhcdInterfacesh
#define __INCusbEhcdInterfacesh
#ifdef __cplusplus
extern "C" {
#endif
extern USBHST_STATUS usbEhcdCreatePipe
(
UINT8 uBusIndex,
UINT8 uDeviceAddress,
UINT8 uDeviceSpeed,
UCHAR * pEndpointDescriptor,
UINT16 uHighSpeedHubInfo,
UINT32 * puPipeHandle
);
extern USBHST_STATUS usbEhcdDeletePipe
(
UINT8 uBusIndex,
UINT32 uPipeHandle
);
extern USBHST_STATUS usbEhcdModifyDefaultPipe
(
UINT8 uBusIndex,
UINT32 uDefaultPipeHandle,
UINT8 uDeviceSpeed,
UINT8 uMaxPacketSize,
UINT16 uHighSpeedHubInfo
);
extern USBHST_STATUS usbEhcdIsBandwidthAvailable
(
UINT8 uBusIndex,
UINT8 uDeviceAddress,
UINT8 uDeviceSpeed,
UCHAR * pCurrentDescriptor,
UCHAR * pNewDescriptor
);
extern USBHST_STATUS usbEhcdSubmitURB
(
UINT8 uBusIndex,
UINT32 uPipeHandle,
pUSBHST_URB pURB
);
extern USBHST_STATUS usbEhcdCancelURB
(
UINT8 uBusIndex,
UINT32 uPipeHandle,
pUSBHST_URB pURB
);
extern USBHST_STATUS usbEhcdIsRequestPending
(
UINT8 uBusIndex,
UINT32 uPipeHandle
);
extern USBHST_STATUS usbEhcdGetFrameNumber
(
UINT8 uBusIndex,
UINT16 * puFrameNumber
);
extern USBHST_STATUS usbEhcdSetBitRate
(
UINT8 uBusIndex,
BOOL bIncrement,
UINT32 * puCurrentFrameWidth
);
extern USBHST_STATUS usbEhcdResetTTRequestComplete
(
UINT8 uRelativeBusIndex,
VOID * pContext,
USBHST_STATUS nStatus
);
extern USBHST_STATUS usbEhcdClearTTRequestComplete
(
UINT8 uRelativeBusIndex,
VOID * pContext,
USBHST_STATUS nStatus
);
#ifdef __cplusplus
}
#endif
#endif /* End of __INCusbEhcdInterfacesh */
/********************** End of file __INCehcdInterfacesh***********************/