Subversion Repositories NaviCtrl

Rev

Rev 43 | Blame | Compare with Previous | Last modification | View Log | RSS feed

/******************** (C) COPYRIGHT 2006 STMicroelectronics ********************
* File Name          : usb_def.h
* Author             : MCD Application Team
* Date First Issued  : 10/27/2003 : V1.0
* Description        : Definitions related to USB Core
********************************************************************************
* History:
* 09/18/2006 : V3.0
* 09/01/2006 : V2.0
* 10/27/2003 : V1.0
********************************************************************************
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/

/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __USB_DEF_H
#define __USB_DEF_H
/* Includes ------------------------------------------------------------------*/
/* Exported types ------------------------------------------------------------*/
typedef enum _RECIPIENT_TYPE {
        DEVICE_RECIPIENT,       /* Recipient device */
        INTERFACE_RECIPIENT,    /* Recipient interface */
        ENDPOINT_RECIPIENT,     /* Recipient endpoint */
        OTHER_RECIPIENT
} RECIPIENT_TYPE;


typedef enum _STANDARD_REQUESTS {
        GET_STATUS = 0,
        CLEAR_FEATURE,
        RESERVED1,
        SET_FEATURE,
        RESERVED2,
        SET_ADDRESS,
        GET_DESCRIPTOR,
        SET_DESCRIPTOR,
        GET_CONFIGURATION,
        SET_CONFIGURATION,
        GET_INTERFACE,
        SET_INTERFACE,
        TOTAL_sREQUEST,         /* Total number of Standard request */
        SYNCH_FRAME = 12
} STANDARD_REQUESTS;

/* Definition of "USBwValue" */
typedef enum _DESCRIPTOR_TYPE {
        DEVICE_DESCRIPTOR = 1,
        CONFIG_DESCRIPTOR,
        STRING_DESCRIPTOR,
        INTERFACE_DESCRIPTOR,
        ENDPOINT_DESCRIPTOR
} DESCRIPTOR_TYPE;

/* Feature selector of a SET_FEATURE or CLEAR_FEATURE */
typedef enum _FEATURE_SELECTOR {
        ENDPOINT_STALL,
        DEVICE_REMOTE_WAKEUP
} FEATURE_SELECTOR;

/* Exported constants --------------------------------------------------------*/

/* Definition of "USBbmRequestType" */
#define REQUEST_TYPE            0x60    /* Mask to get request type */
#define STANDARD_REQUEST        0x00    /* Standard request */
#define CLASS_REQUEST           0x20    /* Class request */
#define VENDOR_REQUEST          0x40    /* Vendor request */

#define RECIPIENT               0x1F    /* Mask to get recipient */

/* Exported macro ------------------------------------------------------------*/
/* Exported functions ------------------------------------------------------- */
#endif /* __USB_DEF_H */

/******************* (C) COPYRIGHT 2006 STMicroelectronics *****END OF FILE****/