diff options
Diffstat (limited to 'drivers/staging/epl/EplCfg.h')
-rw-r--r-- | drivers/staging/epl/EplCfg.h | 207 |
1 files changed, 207 insertions, 0 deletions
diff --git a/drivers/staging/epl/EplCfg.h b/drivers/staging/epl/EplCfg.h new file mode 100644 index 00000000000..068458369ae --- /dev/null +++ b/drivers/staging/epl/EplCfg.h @@ -0,0 +1,207 @@ +/**************************************************************************** + + (c) SYSTEC electronic GmbH, D-07973 Greiz, August-Bebel-Str. 29 + www.systec-electronic.com + + Project: openPOWERLINK + + Description: configuration file + + License: + + 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 SYSTEC electronic GmbH nor the names of its + contributors may be used to endorse or promote products derived + from this software without prior written permission. For written + permission, please contact info@systec-electronic.com. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "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 HOLDERS OR CONTRIBUTORS 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. + + Severability Clause: + + If a provision of this License is or becomes illegal, invalid or + unenforceable in any jurisdiction, that shall not affect: + 1. the validity or enforceability in that jurisdiction of any other + provision of this License; or + 2. the validity or enforceability in other jurisdictions of that or + any other provision of this License. + + ------------------------------------------------------------------------- + + $RCSfile: EplCfg.h,v $ + + $Author: D.Krueger $ + + $Revision: 1.4 $ $Date: 2008/10/17 15:32:32 $ + + $State: Exp $ + + Build Environment: + ... + + ------------------------------------------------------------------------- + + Revision History: + + 2006/06/06 k.t.: Start of Implementation + +****************************************************************************/ + +#ifndef _EPLCFG_H_ +#define _EPLCFG_H_ + + + + +// ========================================================================= +// generic defines which for whole EPL Stack +// ========================================================================= +#define EPL_USE_DELETEINST_FUNC TRUE + +// needed to support datatypes over 32 bit by global.h +#define USE_VAR64 + +// EPL_MAX_INSTANCES specifies count of instances of all EPL modules. +// If it is greater than 1 the first parameter of all +// functions is the instance number. +#define EPL_MAX_INSTANCES 1 + +// This defines the target hardware. Here is encoded wich CPU and wich external +// peripherals are connected. For possible values refere to target.h. If +// necessary value is not available EPL stack has to +// be adapted and tested. +#define TARGET_HARDWARE TGTHW_PC_WRAPP + +// use no FIFOs, make direct calls +//#define EPL_NO_FIFO + +// use no IPC between user- and kernelspace modules, make direct calls +#define EPL_NO_USER_KERNEL + +#ifndef BENCHMARK_MODULES +#define BENCHMARK_MODULES 0 //0xEE800042L +#endif + +// Default defug level: +// Only debug traces of these modules will be compiled which flags are set in define DEF_DEBUG_LVL. +#ifndef DEF_DEBUG_LVL +#define DEF_DEBUG_LVL 0xEC000000L +#endif +// EPL_DBGLVL_OBD = 0x00000004L +// * EPL_DBGLVL_ASSERT = 0x20000000L +// * EPL_DBGLVL_ERROR = 0x40000000L +// * EPL_DBGLVL_ALWAYS = 0x80000000L + + +// EPL_MODULE_INTEGRATION defines all modules which are included in +// EPL application. Please add or delete modules for your application. +#define EPL_MODULE_INTEGRATION EPL_MODULE_OBDK \ + | EPL_MODULE_PDOK \ + | EPL_MODULE_NMT_MN \ + | EPL_MODULE_SDOS \ + | EPL_MODULE_SDOC \ + | EPL_MODULE_SDO_ASND \ + | EPL_MODULE_SDO_UDP \ + | EPL_MODULE_NMT_CN \ + | EPL_MODULE_NMTU \ + | EPL_MODULE_NMTK \ + | EPL_MODULE_DLLK \ + | EPL_MODULE_DLLU \ + | EPL_MODULE_VETH +// | EPL_MODULE_OBDU + +// ========================================================================= +// EPL ethernet driver (Edrv) specific defines +// ========================================================================= + +// switch this define to TRUE if Edrv supports fast tx frames +#define EDRV_FAST_TXFRAMES FALSE +//#define EDRV_FAST_TXFRAMES TRUE + +// switch this define to TRUE if Edrv supports early receive interrupts +#define EDRV_EARLY_RX_INT FALSE +//#define EDRV_EARLY_RX_INT TRUE + +// enables setting of several port pins for benchmarking purposes +#define EDRV_BENCHMARK FALSE +//#define EDRV_BENCHMARK TRUE // MCF_GPIO_PODR_PCIBR + +// Call Tx handler (i.e. EplDllCbFrameTransmitted()) already if DMA has finished, +// otherwise call the Tx handler if frame was actually transmitted over ethernet. +#define EDRV_DMA_TX_HANDLER FALSE +//#define EDRV_DMA_TX_HANDLER TRUE + +// number of used ethernet controller +//#define EDRV_USED_ETH_CTRL 1 + + +// ========================================================================= +// Data Link Layer (DLL) specific defines +// ========================================================================= + +// switch this define to TRUE if Edrv supports fast tx frames +// and DLL shall pass PRes as ready to Edrv after SoC +#define EPL_DLL_PRES_READY_AFTER_SOC FALSE +//#define EPL_DLL_PRES_READY_AFTER_SOC TRUE + +// switch this define to TRUE if Edrv supports fast tx frames +// and DLL shall pass PRes as ready to Edrv after SoA +#define EPL_DLL_PRES_READY_AFTER_SOA FALSE +//#define EPL_DLL_PRES_READY_AFTER_SOA TRUE + + +// ========================================================================= +// OBD specific defines +// ========================================================================= + +// switch this define to TRUE if Epl should compare object range +// automaticly +#define EPL_OBD_CHECK_OBJECT_RANGE FALSE +//#define EPL_OBD_CHECK_OBJECT_RANGE TRUE + +// set this define to TRUE if there are strings or domains in OD, which +// may be changed in object size and/or object data pointer by its object +// callback function (called event kObdEvWrStringDomain) +//#define EPL_OBD_USE_STRING_DOMAIN_IN_RAM FALSE +#define EPL_OBD_USE_STRING_DOMAIN_IN_RAM TRUE + +#define EPL_OBD_USE_VARIABLE_SUBINDEX_TAB TRUE + + +// ========================================================================= +// Timer module specific defines +// ========================================================================= + +// if TRUE it uses the Timer module implementation of EPL user also in EPL kernel +#define EPL_TIMER_USE_USER TRUE + +// if TRUE the high resolution timer module will be used +#define EPL_TIMER_USE_HIGHRES TRUE +//#define EPL_TIMER_USE_HIGHRES FALSE + + +#endif //_EPLCFG_H_ + + + |