00001 /* ---------------------------------------------------------------------------- */ 00002 /* Atmel Microcontroller Software Support */ 00003 /* SAM Software Package License */ 00004 /* ---------------------------------------------------------------------------- */ 00005 /* Copyright (c) 2015, Atmel Corporation */ 00006 /* */ 00007 /* All rights reserved. */ 00008 /* */ 00009 /* Redistribution and use in source and binary forms, with or without */ 00010 /* modification, are permitted provided that the following condition is met: */ 00011 /* */ 00012 /* - Redistributions of source code must retain the above copyright notice, */ 00013 /* this list of conditions and the disclaimer below. */ 00014 /* */ 00015 /* Atmel's name may not be used to endorse or promote products derived from */ 00016 /* this software without specific prior written permission. */ 00017 /* */ 00018 /* DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR */ 00019 /* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF */ 00020 /* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE */ 00021 /* DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, */ 00022 /* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ 00023 /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, */ 00024 /* OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF */ 00025 /* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING */ 00026 /* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, */ 00027 /* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ 00028 /* ---------------------------------------------------------------------------- */ 00029 00030 /** \file 00031 * Definitions for USB Lib compiling. 00032 */ 00033 00034 #ifndef USBLIB_TYPES_H 00035 #define USBLIB_TYPES_H 00036 /*---------------------------------------------------------------------------- 00037 * Includes 00038 *----------------------------------------------------------------------------*/ 00039 00040 #include <stdint.h> 00041 #include "compiler.h" 00042 00043 /*---------------------------------------------------------------------------- 00044 * Defines 00045 *----------------------------------------------------------------------------*/ 00046 00047 /** USB status ReturnCode */ 00048 typedef enum _USBRC { 00049 USBRC_OK = 0, /**< Operation was successful */ 00050 USBRC_SUCCESS = 0, /**< Operation was successful */ 00051 /* Bool codes */ 00052 USBRC_FALSE = 0, /**< As boolean TRUE */ 00053 USBRC_TRUE = 1, /**< As boolean FALSE */ 00054 /* Error codes */ 00055 USBRC_BUSY, /**< EP/Device is already busy */ 00056 USBRC_ABORTED, /**< Operation aborted due to error or stall */ 00057 USBRC_CANCELED, /**< Operation cancelled by user */ 00058 USBRC_RESET, /**< Operation aborted due to init/reset/un-configure */ 00059 USBRC_PARTIAL_DONE,/**< Part of operation successfully done */ 00060 USBRC_FINISHED, /**< All operation successfully done and terminate */ 00061 00062 USBRC_PARAM_ERR, /**< Failed due to parameter error */ 00063 USBRC_STATE_ERR, /**< Failed due to state error */ 00064 USBRC_ERROR, /**< General error */ 00065 00066 USBRC_SW_NOT_SUPPORTED = 0xFD, /**< Failed due to SW not supported */ 00067 USBRC_HW_NOT_SUPPORTED = 0xFE /**< Failed due to HW not supported */ 00068 } USBRC; 00069 00070 #endif /* #define USBLIB_TYPES_H */ 00071