Fork of the official USBDevice library

Fork of USBDevice by mbed official

Committer:
screamer
Date:
Fri Apr 28 11:26:51 2017 +0100
Branch:
github-merge
Revision:
73:8d28a0cb7b43
Parent:
63:01321bd6ff89
Merge from mbed-os @ github

Who changed what in which revision?

UserRevisionLine numberNew contents of line
screamer 73:8d28a0cb7b43 1 /* Copyright (c) 2010-2011 mbed.org, MIT License
screamer 73:8d28a0cb7b43 2 *
screamer 73:8d28a0cb7b43 3 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software
screamer 73:8d28a0cb7b43 4 * and associated documentation files (the "Software"), to deal in the Software without
screamer 73:8d28a0cb7b43 5 * restriction, including without limitation the rights to use, copy, modify, merge, publish,
screamer 73:8d28a0cb7b43 6 * distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the
screamer 73:8d28a0cb7b43 7 * Software is furnished to do so, subject to the following conditions:
screamer 73:8d28a0cb7b43 8 *
screamer 73:8d28a0cb7b43 9 * The above copyright notice and this permission notice shall be included in all copies or
screamer 73:8d28a0cb7b43 10 * substantial portions of the Software.
screamer 73:8d28a0cb7b43 11 *
screamer 73:8d28a0cb7b43 12 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
screamer 73:8d28a0cb7b43 13 * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
screamer 73:8d28a0cb7b43 14 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
screamer 73:8d28a0cb7b43 15 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
screamer 73:8d28a0cb7b43 16 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
screamer 73:8d28a0cb7b43 17 */
screamer 73:8d28a0cb7b43 18
screamer 73:8d28a0cb7b43 19 #ifndef USBENDPOINTS_H
screamer 73:8d28a0cb7b43 20 #define USBENDPOINTS_H
screamer 73:8d28a0cb7b43 21
screamer 73:8d28a0cb7b43 22 /* SETUP packet size */
screamer 73:8d28a0cb7b43 23 #define SETUP_PACKET_SIZE (8)
screamer 73:8d28a0cb7b43 24
screamer 73:8d28a0cb7b43 25 /* Options flags for configuring endpoints */
screamer 73:8d28a0cb7b43 26 #define DEFAULT_OPTIONS (0)
screamer 73:8d28a0cb7b43 27 #define SINGLE_BUFFERED (1U << 0)
screamer 73:8d28a0cb7b43 28 #define ISOCHRONOUS (1U << 1)
screamer 73:8d28a0cb7b43 29 #define RATE_FEEDBACK_MODE (1U << 2) /* Interrupt endpoints only */
screamer 73:8d28a0cb7b43 30
screamer 73:8d28a0cb7b43 31 /* Endpoint transfer status, for endpoints > 0 */
screamer 73:8d28a0cb7b43 32 typedef enum {
screamer 73:8d28a0cb7b43 33 EP_COMPLETED, /* Transfer completed */
screamer 73:8d28a0cb7b43 34 EP_PENDING, /* Transfer in progress */
screamer 73:8d28a0cb7b43 35 EP_INVALID, /* Invalid parameter */
screamer 73:8d28a0cb7b43 36 EP_STALLED, /* Endpoint stalled */
screamer 73:8d28a0cb7b43 37 } EP_STATUS;
screamer 73:8d28a0cb7b43 38
screamer 73:8d28a0cb7b43 39 /* Include configuration for specific target */
screamer 73:8d28a0cb7b43 40 #if defined(TARGET_LPC1768) || defined(TARGET_LPC2368) || defined(TARGET_LPC4088) || defined(TARGET_LPC2460) || defined(TARGET_LPC4088_DM)
screamer 73:8d28a0cb7b43 41 #include "USBEndpoints_LPC17_LPC23.h"
screamer 73:8d28a0cb7b43 42 #elif defined(TARGET_LPC11UXX) || defined(TARGET_LPC1347) || defined (TARGET_LPC11U6X) || defined (TARGET_LPC1549)
screamer 73:8d28a0cb7b43 43 #include "USBEndpoints_LPC11U.h"
screamer 73:8d28a0cb7b43 44 #elif defined(TARGET_KL25Z) | defined(TARGET_KL26Z) | defined(TARGET_KL27Z) | defined(TARGET_KL43Z) | defined(TARGET_KL46Z) | defined(TARGET_K20D50M) | defined(TARGET_K64F) | defined(TARGET_K22F) | defined(TARGET_TEENSY3_1)
screamer 73:8d28a0cb7b43 45 #include "USBEndpoints_KL25Z.h"
screamer 73:8d28a0cb7b43 46 #elif !defined(USB_STM_HAL) && defined(TARGET_STM32F4)
screamer 73:8d28a0cb7b43 47 #include "USBEndpoints_STM32F4.h"
screamer 73:8d28a0cb7b43 48 #elif defined (TARGET_STM32F4) || defined (TARGET_STM32F2) || defined (TARGET_STM32F7) || defined (TARGET_STM32F3) || defined(TARGET_STM32L4) || defined(TARGET_STM32F1)
screamer 73:8d28a0cb7b43 49 #include "USBEndpoints_STM32.h"
screamer 73:8d28a0cb7b43 50 #elif defined (TARGET_RZ_A1H) || defined (TARGET_VK_RZ_A1H)
screamer 73:8d28a0cb7b43 51 #include "USBEndpoints_RZ_A1H.h"
screamer 73:8d28a0cb7b43 52 #elif defined(TARGET_Maxim)
screamer 73:8d28a0cb7b43 53 #include "USBEndpoints_Maxim.h"
screamer 73:8d28a0cb7b43 54 #elif defined(TARGET_EFM32GG_STK3700) || defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32HG_STK3400)
screamer 73:8d28a0cb7b43 55 #include "USBEndpoints_EFM32.h"
screamer 73:8d28a0cb7b43 56 #elif defined(TARGET_NUMAKER_PFM_NUC472)
screamer 73:8d28a0cb7b43 57 #include "USBEndpoints_NUC472.h"
screamer 73:8d28a0cb7b43 58 #elif defined(TARGET_NUMAKER_PFM_M453)
screamer 73:8d28a0cb7b43 59 #include "USBEndpoints_M453.h"
screamer 73:8d28a0cb7b43 60 #else
screamer 73:8d28a0cb7b43 61 #error "Unknown target type"
screamer 73:8d28a0cb7b43 62 #endif
screamer 73:8d28a0cb7b43 63
screamer 73:8d28a0cb7b43 64 #endif