/************************************************** * * configuration.h * * CVS ID: $Id: configuration.h,v 1.91 2007/10/22 10:13:03 marcucci Exp $ * Author: Raffaele Belardi [RB] - STM * Date: $Date: 2007/10/22 10:13:03 $ * Revision: $Revision: 1.91 $ * * Description: * * System-wide #defines which affect the compilation * *************************************************** * * COPYRIGHT (C) ST Microelectronics 2005 * All Rights Reserved * *************************************************** * * STM CVS Log: * * $Log: configuration.h,v $ * Revision 1.91 2007/10/22 10:13:03 marcucci * USB initialization performed on setting of of CFG0 pins to accomplish CD * only application without 48Mhz mounted * * Revision 1.90 2007/09/21 05:35:34 hara * Initial implementation for WMDRM feature into A+. * * Revision 1.89 2007/09/07 14:49:47 belardi * Removed unused definitions * * Revision 1.88 2007/08/14 15:28:13 dellorto * multiple mechanisms * * Revision 1.87 2007/08/10 12:33:28 longauer * IPOD_AP compilation switch enables future iAP * * Revision 1.86 2007/04/11 14:19:59 belardi * Integration of HAVE_CD_MECHA modification by [GP] * * Revision 1.85 2007/03/16 14:16:00 dellorto * added cofiguration to hold TTM during short jumps * * Revision 1.84 2007/02/27 09:37:29 belardi * Reintroduced UDF code * * Revision 1.83 2007/02/15 13:11:22 marcucci * Bootloader Optimization * * Revision 1.82 2007/02/09 12:08:40 belardi * First integration of iPod pass-through * * Revision 1.81 2007/02/06 11:14:35 belardi * Added dynamic remapping of SDRAM for ESP vs. X_array * - removed temporary define * * Revision 1.80 2007/02/02 17:30:40 belardi * Fixed wrong commit 1.78 * * Revision 1.79 2007/02/02 17:26:58 belardi * Added config item to increase X_array for 15000 files support. Breaks CDDA and CDROM (sound like FF) * * Revision 1.78 2007/02/02 16:29:56 belardi * Removed UDF from the build due to lack of ROM space * * Revision 1.77 2006/12/19 17:07:56 belardi * Enabled the player-controlled Host Flash update by default (instead of the hostif-based) * * Revision 1.76 2006/11/27 19:51:33 belardi * Host Update protocol addition * - HAVE_HOST_UPDATE * * Revision 1.75 2006/11/25 09:05:11 belardi * Coditional compilatio for HAVE_TEMP_SENSOR * * Revision 1.74 2006/11/09 18:59:36 belardi * Removed unused define * * Revision 1.73 2006/11/08 08:50:50 marcucci * Added configuration switch for HAVE_UPDATE from BBor greater Silicon Version * * Revision 1.72 2006/10/18 12:48:16 belardi * Removed unused USE_STM_HOSTIF (replaced with APM_PICKUP) * Removed unused HOSTIF_USE_TL * * Revision 1.71 2006/10/18 09:57:59 trubac * bug fix for no external X_array * * Revision 1.70 2006/10/06 14:37:56 belardi * reverted to LayerI and II disabled by default since there are problems with FF * * Revision 1.69 2006/09/26 11:53:59 belardi * Enabled AAC by default to keep track of code size * * Revision 1.68 2006/09/25 15:55:49 belardi * - removed DEBUG_PLAYLIST * - enabled UDF by default to keep track of code size * * Revision 1.67 2006/09/22 15:28:54 belardi * Support for MPEG Layer I and II * * Revision 1.66 2006/09/18 15:29:45 belardi * set back some compilation options removed by error * * Revision 1.65 2006/09/18 09:55:23 belardi * Corrected CVS keyword usage * * Revision 1.64 2006/09/15 19:57:18 belardi * Merged the m8_cav2_cm80506_cs3563. * - white-spaces * * ***************************************************/ #ifndef _CONFIG_INCLUDED_ #define _CONFIG_INCLUDED_ /*************************/ /* APM compiling options */ /*************************/ //#define APM_PICKUP #define M8VER_PRE_A 0 #define M8VER_A 1 //#define M8_SAMPLE_VER M8VER_PRE_A #define M8_SAMPLE_VER M8VER_A //#define HAVE_NO_LOADER /*------ servo compiling options ------*/ //#define SLEDGE_SPEED_REDUCTION //#define FOCUS_RECOVERY_ONLY_OUTSIDE_DURING_FIRST_FE_ADJUST //#define HF_RECOVERY_ONLY_OUTSIDE_DURING_FIRST_HF_SEARCH #define KEEP_FOCUS_DURING_TTM_RECOVER //#define EXECUTE_AGC_ONLY_ONCE //#define CHECK_SPEED_WITH_TTM_ACTIVE /*-------------------------------------*/ //#define CALIB_JUMP_USE_FLOAT #define TOC_READ_JUMP_TO_START #define FREE_RUN_LOADER #define NO_SEEK_ERROR_WITH_BIGGER_TIME #define SEARCH_JUMPS_TRACKS //#define ECC_WORKAROUND //#define DEBUG_CHECK_DSP_ST7_COM /****************************/ /* Global compiling options */ /****************************/ #define HAVE_CALIBJUMP 0 #define HAVE_CDTEXT 1 #define HAVE_SHOCK_MEMORY 1 #define HAVE_EXTERNAL_XARRAY 1 #define HAVE_USB_XTAL_CHECK 1 #define HAVE_USB 1 #define HAVE_SDC 1 #define HAVE_WMA 1 #define HAVE_AAC 1 #define HAVE_PRINTF 0 #define HAVE_PROFILES 1 #define HAVE_PLAYLIST 1 #define HAVE_FSHRINK 1 // code to read from CDROM code to update Flash #define HAVE_UPDATE 1 // must be set toghether with HAVE_POSITION #define HAVE_HOST_UPDATE_NEW 1 // code to save Last Position to NVRAM #define HAVE_POSITION 1 // must be set toghether with HAVE_UPDATE #define HAVE_HW_EJECT 1 #define HAVE_CODE_IDENTIFICATION 1 #define HAVE_FAT 1 #define HAVE_UDF 1 #define HAVE_TEMP_SENSOR 1 #define IPOD_PASSTHROUGH 1 /* warning - HAVE_USB must be set !!! */ #define IPOD_AP 0 /* warning - HAVE_USB must be set !!! */ //[LL]new #define HAVE_CD_MECHA 1 // 0 = remove servo and loader task #define HAVE_MULTI_MECHANISM 1 #define HAVE_WMDRM 0 #if (1==HAVE_WMDRM) #define HAVE_WMDRM_H10_WORKAROUND 1 #define HAVE_WMDRM_LARGE_BUFFER 1 #endif // Define which MP3 layer to include: // Make sure the same options are set in the ARM mp3 library's file: // Sources/libsources/mp3/MM002-BU-98000-r6p4-06ltd5/MPEG2/include/layers.h // Set to 0 or 1 #define LAYER1 0 // TODO need to define the extension! #define LAYER2 0 // for file extension ".mp2" #define LAYER3 1 // for file extension ".mp3", most common, should be always 1 /* Global compiling options check */ #if (HAVE_USB) && (!HAVE_FAT) #error "HAVE_USB needs HAVE_FAT" #endif #if (HAVE_SDC) && (!HAVE_FAT) #error "HAVE_SDC needs HAVE_FAT" #endif #if (HAVE_HOST_UPDATE) && (!HAVE_UPDATE) #error "HAVE_HOST_UPDATE needs HAVE_UPDATE" #endif #if (!HAVE_CD_MECHA) && (HAVE_HW_EJECT) # error "there can't be HAVE_HW_EJECT if there is no HAVE_CD_MECHA" #endif /*************************/ /* STM compiling options */ /*************************/ // [RB] Please use the // #define // form for the defines, it makes it easier to discover during compilation problems // related to undefined configuration values. // 1 = include the static storage necessary for debug and trace I2C commands used by the STM host interface // Normally should be 1 (but since there is no logging application on PC, is set to 0) #define STM_HOSTIF_USE_DEBUG_AND_TRACE 1 #ifdef APM_PICKUP #if (M8_SAMPLE_VER >= M8VER_A) #define TQFP #else #define BGA #endif #else // STM package options // Accordoplus can be packaged in BGA or TQFP. Some GPIOs change // SampleB4 uses TQFP, SampleA uses BGA #define TQFP //#define BGA #endif // 1 = use the mechanism to patch the ROM code #define USE_BOOTLOADER_PATCH_MODE 1 /***************************************************************************** * * Debug configuration section * ******************************************************************************/ // You can printf to Trace32 terminal window with defined TRACE_DEBUG. // Use command "TERM" in Trace32 command line to open terminal window. // STM: set also HAVE_PRINTF!! //#define TRACE_DEBUG // 1 = include the pcdeb code (debugging protocol over the UART) // Set to 0 in final release and also on SampleA boards modified to use the USB, // since the USB shares the lines with UART, so UART is not available #define DEBUG_INCLUDE_PCDEB 0 // include test-points (TEST0, TEST1, TEST2), MON_2 enabling, RAM profile #define DEBUG_SERVO_SUPPORT 0 // 1 = include debugging info, available through pcdeb or with debugger // Overrides the specific debug features eventually included with the defines below // Set to 0 in final releases #define DEBUG_INCLUDE_INFO 0 // Here you can selectively include the debugging features that you need #if (DEBUG_INCLUDE_INFO==1) // 1 = define a function containing an endless loop, for debug only!! // Set to 0 in final releases #define USE_ASSERT 1 // 1 = insert some debugging variables to count number of MP3 input and output buffer underflow, and MP3 good/bad frames // check the variables with name count* #define DEBUG_INCLUDE_COUNTERS 1 #else #define USE_ASSERT 0 #define DEBUG_INCLUDE_COUNTERS 0 #endif // (DEBUG_INCLUDE_INFO==1) // added by [BB], how to use ? //#define STACK_CHECK 1 // 1 = include code to estimate the MIPS for WMA decoder // Interval defined in debugStartProfiling() // Requires: // - TRACE_DEBUG // - compile the project and the OS20 library with OS20_PROFILING set to 1 // - APM_PICKUP set to 0 // - turn the Lauterback terminal on ( #define DEBUG_INCLUDE_MIPS_PROFILING 0 #if (DEBUG_INCLUDE_MIPS_PROFILING!=0) #define TRACE_DEBUG #undef HAVE_PRINTF #define HAVE_PRINTF 1 #endif // debug WMA #define DEBUG_WMA 0 #if (DEBUG_WMA!=0) #ifndef TRACE_DEBUG #define TRACE_DEBUG #endif #define FAST_MALLOC_DEBUG 1 #define WMA_WRAP_DEBUG 1 //#define WMA_TAG_DEBUG 1 #endif #endif // [BB] TODO temporary defines will bw removed #define ESP_OFF 0x00 #define ESP_ON 0x01 #define ADPCM_OFF 0x00 #define ADPCM_ON 0x03 // [RB] must be 0x03 for STM! #ifdef APM_PICKUP #define CNF_ESP ESP_ON #define CNF_ADPCM ADPCM_OFF #endif #if (defined(TRACE_DEBUG) && (HAVE_PRINTF == 0)) # error "TRACE_DEBUG needs HAVE_PRINTF" #endif