2013-07-01 10:43:55 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/**************************************************************************/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    @ file      tusb_option . h 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    @ author    hathach  ( tinyusb . org ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    @ section  LICENSE 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Software  License  Agreement  ( BSD  License ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Copyright  ( c )  2013 ,  hathach  ( tinyusb . org ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    All  rights  reserved . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Redistribution  and  use  in  source  and  binary  forms ,  with  or  without 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    modification ,  are  permitted  provided  that  the  following  conditions  are  met : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    1.  Redistributions  of  source  code  must  retain  the  above  copyright 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    notice ,  this  list  of  conditions  and  the  following  disclaimer . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    2.  Redistributions  in  binary  form  must  reproduce  the  above  copyright 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    notice ,  this  list  of  conditions  and  the  following  disclaimer  in  the 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    documentation  and / or  other  materials  provided  with  the  distribution . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    3.  Neither  the  name  of  the  copyright  holders  nor  the 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    names  of  its  contributors  may  be  used  to  endorse  or  promote  products 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    derived  from  this  software  without  specific  prior  written  permission . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    THIS  SOFTWARE  IS  PROVIDED  BY  THE  COPYRIGHT  HOLDERS  ' ' AS  IS ' '  AND  ANY 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    EXPRESS  OR  IMPLIED  WARRANTIES ,  INCLUDING ,  BUT  NOT  LIMITED  TO ,  THE  IMPLIED 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    WARRANTIES  OF  MERCHANTABILITY  AND  FITNESS  FOR  A  PARTICULAR  PURPOSE  ARE 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    DISCLAIMED .  IN  NO  EVENT  SHALL  THE  COPYRIGHT  HOLDER  BE  LIABLE  FOR  ANY 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    DIRECT ,  INDIRECT ,  INCIDENTAL ,  SPECIAL ,  EXEMPLARY ,  OR  CONSEQUENTIAL  DAMAGES 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    INCLUDING ,  BUT  NOT  LIMITED  TO ,  PROCUREMENT  OF  SUBSTITUTE  GOODS  OR  SERVICES ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    LOSS  OF  USE ,  DATA ,  OR  PROFITS ;  OR  BUSINESS  INTERRUPTION  HOWEVER  CAUSED  AND 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    ON  ANY  THEORY  OF  LIABILITY ,  WHETHER  IN  CONTRACT ,  STRICT  LIABILITY ,  OR  TORT 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    INCLUDING  NEGLIGENCE  OR  OTHERWISE  ARISING  IN  ANY  WAY  OUT  OF  THE  USE  OF  THIS 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SOFTWARE ,  EVEN  IF  ADVISED  OF  THE  POSSIBILITY  OF  SUCH  DAMAGE . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    This  file  is  part  of  the  tinyusb  stack . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**************************************************************************/  
						 
					
						
							
								
									
										
										
										
											2012-11-26 17:19:26 +07:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-11-29 10:41:33 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** \file
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *   \ brief  Configure  File 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *   \ note  TBD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-27 15:35:57 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-12-03 16:51:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** 
  
						 
					
						
							
								
									
										
										
										
											2013-01-11 16:55:47 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *   \ defgroup  Group_TinyUSB_Configure  Configuration  tusb_option . h 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-29 10:41:33 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *   @ { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-26 17:19:26 +07:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-01-11 16:55:47 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifndef _TUSB_TUSB_OPTION_H_ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define _TUSB_TUSB_OPTION_H_ 
  
						 
					
						
							
								
									
										
										
										
											2012-12-18 15:08:30 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-12-02 11:07:59 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef __cplusplus 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 extern  " C "  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-01-31 11:47:07 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define TUSB_VERSION_YEAR   00 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TUSB_VERSION_MONTH  00 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TUSB_VERSION_WEEK   0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TUSB_VERSION_NAME   "alpha" 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TUSB_VERSION        XSTRING_(TUSB_VERSION_YEAR) "." XSTRING_(TUSB_VERSION_MONTH) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-08 03:45:31 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define MCU_LPC13UXX    1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define MCU_LPC11UXX    2 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define MCU_LPC43XX     3 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define MCU_LPC18XX     4 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define MCU_LPC175X_6X  5 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define MCU_LPC177X_8X  6 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-12-18 15:08:30 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/// define this symbol will make tinyusb look for external configure file
  
						 
					
						
							
								
									
										
										
										
											2013-03-04 16:21:41 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "mcu_capacity.h" 
  
						 
					
						
							
								
									
										
										
										
											2013-06-29 21:00:33 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# ifdef TUSB_CFG_CONFIG_FILE 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # include  TUSB_CFG_CONFIG_FILE 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # include  "tusb_config.h" 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2012-11-26 17:19:26 +07:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-03-04 17:07:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//--------------------------------------------------------------------+
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// CONTROLLER
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//--------------------------------------------------------------------+
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TUSB_MODE_HOST    0x02 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TUSB_MODE_DEVICE  0x01 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TUSB_MODE_NONE    0x00 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define CONTROLLER_HOST_NUMBER (\ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    ( ( TUSB_CFG_CONTROLLER0_MODE  &  TUSB_MODE_HOST )  ?  1  :  0 )  +  \
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    ( ( TUSB_CFG_CONTROLLER1_MODE  &  TUSB_MODE_HOST )  ?  1  :  0 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define CONTROLLER_DEVICE_NUMBER (\ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    ( ( TUSB_CFG_CONTROLLER0_MODE  &  TUSB_MODE_DEVICE )  ?  1  :  0 )  +  \
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    ( ( TUSB_CFG_CONTROLLER1_MODE  &  TUSB_MODE_DEVICE )  ?  1  :  0 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define MODE_HOST_SUPPORTED   (CONTROLLER_HOST_NUMBER > 0) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define MODE_DEVICE_SUPPORTED (CONTROLLER_DEVICE_NUMBER > 0) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# if !MODE_HOST_SUPPORTED && !MODE_DEVICE_SUPPORTED 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # error please configure at least 1 TUSB_CFG_CONTROLLERn_MODE to TUSB_MODE_HOST and / or TUSB_MODE_DEVICE 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-02-01 10:33:43 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//--------------------------------------------------------------------+
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// COMMON OPTIONS
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//--------------------------------------------------------------------+
  
						 
					
						
							
								
									
										
										
										
											2013-03-04 16:21:41 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 13:17:43 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// level 3: ATTR_ALWAYS_INLINE is null, ASSERT has text, Error has its String, STATIC_VAR is NULL
  
						 
					
						
							
								
									
										
										
										
											2013-07-03 13:14:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// level 2: ATTR_ALWAYS_INLINE is attribute, ASSERT has no text, Error has no strings
  
						 
					
						
							
								
									
										
										
										
											2013-01-18 11:49:51 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/// 0: no debug information 3: most debug information provided
  
						 
					
						
							
								
									
										
										
										
											2012-12-20 16:56:19 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifndef TUSB_CFG_DEBUG 
  
						 
					
						
							
								
									
										
										
										
											2013-09-21 13:17:43 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  # define TUSB_CFG_DEBUG 2 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-18 11:49:51 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  # warning TUSB_CFG_DEBUG is not defined, default value is 3 
 
							 
						 
					
						
							
								
									
										
										
										
											2012-12-18 15:08:30 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2012-11-29 15:35:59 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-02-01 10:33:43 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/// USB RAM Section Placement, MCU's usb controller often has limited access to specific RAM region. This will be used to declare internal variables as follow:
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/// uint8_t tinyusb_data[10] TUSB_CFG_ATTR_USBRAM;
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/// if your mcu's usb controller has no such limit, define TUSB_CFG_ATTR_USBRAM as empty macro.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# ifndef TUSB_CFG_ATTR_USBRAM 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 # error TUSB_CFG_ATTR_USBRAM is not defined, please help me know how to place data in accessible RAM for usb controller 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:41:06 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-02-01 12:00:34 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if TUSB_CFG_OS == TUSB_OS_NONE 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # ifndef TUSB_CFG_OS_TICKS_PER_SECOND 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # error TUSB_CFG_OS_TICKS_PER_SECOND is required to use with OS_NONE 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-25 11:00:56 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # ifndef TUSB_CFG_OS_TASK_PRIO 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # error TUSB_CFG_OS_TASK_PRIO need to be defined (hint: use the highest if possible) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-02-01 12:00:34 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# ifndef TUSB_CFG_CONFIGURATION_MAX 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # define TUSB_CFG_CONFIGURATION_MAX 1 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # warning TUSB_CFG_CONFIGURATION_MAX is not defined, default value is 1 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-02-01 10:33:43 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//--------------------------------------------------------------------+
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// HOST OPTIONS
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//--------------------------------------------------------------------+
  
						 
					
						
							
								
									
										
										
										
											2013-03-04 17:07:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if MODE_HOST_SUPPORTED 
  
						 
					
						
							
								
									
										
										
										
											2013-02-01 10:33:43 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  # ifndef TUSB_CFG_HOST_DEVICE_MAX 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # define TUSB_CFG_HOST_DEVICE_MAX 1 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # warning TUSB_CFG_HOST_DEVICE_MAX is not defined, default value is 1 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-26 01:37:15 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-05-06 20:09:06 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  //------------- HUB CLASS -------------//
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # if TUSB_CFG_HOST_HUB && (TUSB_CFG_HOST_DEVICE_MAX == 1) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # error there is no benefit enable hub with max device is 1. Please disable hub or increase TUSB_CFG_HOST_DEVICE_MAX 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-03-01 19:32:53 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  //------------- HID CLASS -------------//
 
							 
						 
					
						
							
								
									
										
										
										
											2013-05-06 20:09:06 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  # define HOST_CLASS_HID   ( TUSB_CFG_HOST_HID_KEYBOARD + TUSB_CFG_HOST_HID_MOUSE + TUSB_CFG_HOST_HID_GENERIC ) 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-03-25 22:06:00 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  # if HOST_CLASS_HID 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-03-01 19:32:53 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # define HOST_HCD_XFER_INTERRUPT 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-03-25 22:06:00 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-02-01 10:33:43 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-02-04 16:07:42 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  # ifndef TUSB_CFG_HOST_ENUM_BUFFER_SIZE 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # define TUSB_CFG_HOST_ENUM_BUFFER_SIZE 256 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # warning TUSB_CFG_HOST_ENUM_BUFFER_SIZE is not defined, default value is 256 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-03-01 19:32:53 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  //------------- CLASS -------------//
 
							 
						 
					
						
							
								
									
										
										
										
											2013-02-01 10:33:43 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif  // end TUSB_CFG_HOST
  
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:41:06 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-02-01 10:33:43 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//--------------------------------------------------------------------+
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// DEVICE OPTIONS
  
						 
					
						
							
								
									
										
										
										
											2013-07-01 10:43:55 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//--------------------------------------------------------------------+
  
						 
					
						
							
								
									
										
										
										
											2013-05-29 14:39:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if MODE_DEVICE_SUPPORTED 
  
						 
					
						
							
								
									
										
										
										
											2012-11-29 16:32:49 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-06-04 13:36:18 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if defined(CAP_DEVICE_ROMDRIVER) && !TUSB_CFG_DEVICE_USE_ROM_DRIVER 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  # error only rom driver for these mcu are supported now 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-05-28 15:24:27 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-05-29 14:39:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define DEVICE_CLASS_HID ( TUSB_CFG_DEVICE_HID_KEYBOARD + TUSB_CFG_DEVICE_HID_MOUSE + TUSB_CFG_DEVICE_HID_GENERIC ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2012-12-03 16:51:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-06-03 15:56:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-11-27 15:21:47 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USB_FS_MAX_BULK_PACKET  64 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USB_HS_MAX_BULK_PACKET  USB_FS_MAX_BULK_PACKET  /* Full speed device only */ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* HID In/Out Endpoint Address */  
						 
					
						
							
								
									
										
										
										
											2013-06-03 15:56:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define    HID_KEYBOARD_EP_IN       ENDPOINT_IN_LOGICAL_TO_PHYSICAL(1) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define    HID_MOUSE_EP_IN          ENDPOINT_IN_LOGICAL_TO_PHYSICAL(4) 
  
						 
					
						
							
								
									
										
										
										
											2012-11-27 15:21:47 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* CDC Endpoint Address */  
						 
					
						
							
								
									
										
										
										
											2013-06-03 15:56:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define  CDC_NOTIFICATION_EP                ENDPOINT_IN_LOGICAL_TO_PHYSICAL(2) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define  CDC_DATA_EP_OUT                    ENDPOINT_OUT_LOGICAL_TO_PHYSICAL(3) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define  CDC_DATA_EP_IN                     ENDPOINT_IN_LOGICAL_TO_PHYSICAL(3) 
  
						 
					
						
							
								
									
										
										
										
											2012-11-27 15:21:47 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define  CDC_NOTIFICATION_EP_MAXPACKETSIZE  8 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define  CDC_DATA_EP_MAXPACKET_SIZE         16 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-05-29 14:39:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-03-04 17:07:14 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-12-02 11:07:59 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef __cplusplus 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-01-11 16:55:47 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif  /* _TUSB_TUSB_OPTION_H_ */ 
  
						 
					
						
							
								
									
										
										
										
											2012-11-29 10:41:33 +07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/** @} */