Main Page   Modules   Alphabetical List   Data Structures   File List   Data Fields   Globals  

usbtest.h

00001 /*
00002  * File Version: $Revision: 1.9 $
00003  * 
00004  * -- Intel Copyright Notice --
00005  * 
00006  * Copyright 2001-2003 Intel Corporation All Rights Reserved.
00007  * 
00008  * The source code contained or described herein and all documents
00009  * related to the source code ("Material") are owned by Intel Corporation
00010  * or its suppliers or licensors.  Title to the Material remains with
00011  * Intel Corporation or its suppliers and licensors.
00012  * 
00013  * The Material is protected by worldwide copyright and trade secret laws
00014  * and treaty provisions. No part of the Material may be used, copied,
00015  * reproduced, modified, published, uploaded, posted, transmitted,
00016  * distributed, or disclosed in any way except in accordance with the
00017  * applicable license agreement .
00018  * 
00019  * No license under any patent, copyright, trade secret or other
00020  * intellectual property right is granted to or conferred upon you by
00021  * disclosure or delivery of the Materials, either expressly, by
00022  * implication, inducement, estoppel, except in accordance with the
00023  * applicable license agreement.
00024  * 
00025  * Unless otherwise agreed by Intel in writing, you may not remove or
00026  * alter this notice or any other notice embedded in Materials by Intel
00027  * or Intel's suppliers or licensors in any way.
00028  * 
00029  * For further details, please see the file README.TXT distributed with
00030  * this software.
00031  * 
00032  * -- End Intel Copyright Notice --
00033 */
00034 #ifndef usbtest_H
00035 
00036 #define usbtest_H
00037 
00038 typedef enum /* USBVendorCommands */
00039 {
00040     /* 
00041      * Sets the device configuration 
00042      *
00043      * wValue[31:16] - mode
00044      * wValue[15:0]  - flags
00045      * wIndex[31:16] - in endpoint
00046      * wIndex[15:0]  - out endpoint
00047      */
00048     IXP425_CONFIG      = 0x0001,
00049 
00050     /* 
00051      * Requests the device to send data
00052      *
00053      * wValue - number of bytes to send
00054      */
00055     IXP425_SEND_DATA   = 0x0010,
00056 
00057     /*
00058      * Requests the device to report
00059      * the last number of received bytes
00060      *
00061      * WLength = 4
00062      * Data stage: requested value (4 bytes)
00063      */
00064     IXP425_SEND_REPORT = 0x0020,
00065 
00066     /*
00067      * Control no_data test
00068      *
00069      */
00070     IXP425_CTRL_NO_DATA = 0x0030,
00071 
00072     /*
00073      * Control Write test
00074      *
00075      * Data stage: sample data
00076      */
00077     IXP425_CTRL_WRITE = 0x0031,
00078 
00079     /*
00080      * Control read test
00081      *
00082      * Data stage: sample data
00083      *
00084      */
00085     IXP425_CTRL_READ = 0x0032,
00086     
00087     /*
00088      * Configures the loopback mode
00089      *
00090      * wValue - 1 to enable and 0 to disable loopback
00091      */
00092     IXP425_CONFIG_LOOPBACK = 0x0040
00093 } USBVendorCommands;
00094 
00095 typedef enum /* ControlPayloadType */
00096 {
00097     UNKNOWN    = 0x00,
00098     DESCRIPTOR = 0x01,
00099     DATA       = 0x02
00100 } ControlPayloadType;
00101 
00102 typedef struct /* USBConfigData */
00103 {
00104     UINT16 deviceAddress;
00105     UINT16 configurationIndex;
00106     UINT16 interfaceIndex;
00107     UINT16 alternateInterfaceIndex;
00108     BOOL remoteWakeupEnabled;
00109     UINT16 currentSetupCommand;
00110 
00111     UCHAR *usbConfigurationDescriptor;
00112     UINT8 inEndpoint;
00113     UINT8 outEndpoint;
00114     UINT8 currentMode;
00115 
00116 #ifndef __HWEMU__
00117     sem_t isocFrameLock;
00118 #endif /* __HWEMU__ */
00119 
00120     UINT32 lastRxTransactionSize;
00121 
00122     UINT8 expectedControlPayload;
00123 
00124     BOOL loopbackEnabled;
00125     IX_USB_MBLK *responseBuffer;
00126 } USBConfigData;
00127 
00128 #endif /* usbtest_H */
Automatically generated from sources. © Intel Corp. 2003