www.pudn.com > nxplpc2204bsp.rar > config.h


/* config.h - WindRiver SBC ARM7TDMI configuration header */ 
 
 
/* Copyright 1984-2001 Wind River Systems, Inc. */ 
#include "copyright_wrs.h" 
 
/* 
modification history 
-------------------- 
01o,23jul04,a_m  BSP定制 for 精英arm7开发板 
01n,16jul02,m_h  C++ protection 
01m,09may02,m_h  New rev for PHY changes 
01l,19dec01,m_h  FLASH_CHIP_WIDTH needed for new version flash functions 
01k,30nov01,m_h  increase ROM_SIZE for ROM resident images 
01j,27sep01,m_h  bump revision for big endian support 
01i,24aug01,m_h  SPR 69508, boot line 
01h,23jul01,m_h  builds on UNIX 
01g,17jul01,g_h  add support for visionWARE 2.00 
01f,10jul01,g_h  add INCLUDE_LCD & INCLUDE_LED & INCLUDE_NETWORK macros 
01e,06jun01,m_h  flash cache issues 
01d,16may01,m_h  default baud now 9600 
01c,01may01,m_h  bump revision to 10 
01b,26apr01,m_h  convert tabs to spaces for readability 
01a,12apr01,m_h  created from snds100 template. 
*/ 
 
/* 
This module contains the configuration parameters for the SBC ARM7TDMI BSP. 
*/ 
 
#ifndef INCconfigh 
#define INCconfigh 
 
#ifdef __cplusplus 
extern "C" { 
#endif 
 
/* BSP version/revision identification, before configAll.h */ 
 
#define BSP_VER_1_1    1    /* 1.2 is backward compatible with 1.1 */ 
#define BSP_VER_1_2    1 
#define BSP_VERSION    "1.2" 
#define BSP_REV        "/19"    /* BSP revision */ 
 
#include "configAll.h" 
 
/* 
 * STANDALONE_NET must be defined for network debug with 
 * standalone vxWorks 
 */ 
#undef STANDALONE_NET 
 
/* 
 * Define SERIAL_DEBUG to enable debugging 
 * via the serial ports 
 */ 
#undef SERIAL_DEBUG 
 
/* 
 * If the FORCE_DEFAULT_BOOT_LINE is defined then the DEFAULT_BOOT_LINE 
 * parameters are always used regardless of NVRAM values specified at 
 * bootrom time. See target.nr for details. This is usually used to debug 
 * downloaded images with out a bootrom present. 
 */ 
#define FORCE_DEFAULT_BOOT_LINE	/*  : undef->define */ 
 
#ifdef INCLUDE_WDB_COMM_VTMD 
#define FORCE_DEFAULT_BOOT_LINE /* When using TMD this macro should be undefined */ 
#endif /* INCLUDE_WDB_COMM_VTMD */ 
 
#ifdef FORCE_DEFAULT_BOOT_LINE 
#undef INCLUDE_VWARE_LAUNCH 
#else 
#define INCLUDE_VWARE_LAUNCH 
#endif /* FORCE_DEFAULT_BOOT_LINE */ 
 
/* Bootline Parameters */		/*  : modified */ 
#define DEFAULT_BOOT_LINE       "ene(0,0)host:vxWorks " \ 
                                "h=192.166.0.254 " \ 
                                "e=192.166.0.2:ffffff00 " \ 
                                "g=192.166.0.1 "  \ 
                                "u=target "     \ 
                                "pw=target "     \ 
                                "tn=strong44b0x"  
 
#ifdef INCLUDE_VWARE_LAUNCH 
  #define VWARE_BOOT_LINE       "sng(0,0)host:vxWorks " \ 
                                "%s " \ 
                                "%s " \ 
                                "%s " \ 
                                "u=target " \ 
                                "tn=targetname"  
#endif /* INCLUDE_VWARE_LAUNCH */ 
 
/* Memory configuration */ 
 
#undef  LOCAL_MEM_AUTOSIZE              /* run-time memory sizing */ 
#define LOCAL_MEM_SIZE       0x00100000 /* 1M */ 
#define USER_RESERVED_MEM    0x0        /* see sysMemTop() */ 
#define DRAM_TYPE 1                     /* 1 - SDRAM, 0 - EDO DRAM */ 
 
/* 
 * Boot ROM is an image written either to EPROM or to a Flash device. 
 * If a Flash device is used, part of it can be reserved for boot 
 * parameters etc. (see the Flash section below). 
 * 
 * The following parameters are defined here and in the Makefile. 
 * They must be kept synchronized; effectively config.h depends on Makefile. 
 * Any changes made here must be made in the Makefile and vice versa. 
 * 
 * ROM_BASE_ADRS is the base of the Flash ROM/EPROM. 
 * ROM_TEXT_ADRS is the entry point of the VxWorks image 
 * ROM_SIZE is the size of the part of the Flash ROM/EPROM allocated to 
 *        the VxWorks image (block size - size of headers) 
 * 
 * Two other constants are used: 
 * ROM_COPY_SIZE is the size of the part of the ROM to be copied into RAM 
 *          (uncompressed bootrom) 
 * ROM_SIZE_TOTAL is the size of the entire Flash ROM (used in sysPhysMemDesc) 
 * 
 * The values are given as literals here to make it easier to ensure 
 * that they are the same as those in the Makefile. 
 */ 
 
#define ROM_BASE_ADRS        0x80000000    /* base of Flash/EPROM 16 MB */ 
/*  : 0x01000000->0x00000000 */ 
#define ROM_TEXT_ADRS        0x80000000    /* code start addr in ROM */ 
#define ROM_SIZE             0x00200000    /* size of ROM holding bootRom 512K */ 
 
#define ROM_COPY_SIZE        ROM_SIZE 
#define ROM_SIZE_TOTAL       0x00200000    /* total size of ROM 2MB */ 
/*  : 0x00006000->0x0C001000 */ 
#define RAM_LOW_ADRS         0x80204000    /* VxWorks image entry point */ 
/*  : 0x00480000->0x0C500000 */ 
#define RAM_HIGH_ADRS        0xF0000000    /* RAM address for ROM boot */ 
 
/* 
 * Flash memory configuration 
 * 
 * If a Flash memory part is fitted instead of an EPROM, part of it can 
 * be used as NVRAM storage, if desired.  If this is wanted, define 
 * INCLUDE_FLASH and reduce ROM_SIZE in this file and in Makefile by 
 * NV_RAM_SIZE.  The default is not to provide support for Flash. 
 */ 
 
#undef INCLUDE_FLASH 		/*  : define->undef */ 
 
#ifdef INCLUDE_FLASH 
#define FLASH_WIDTH           4 
#define FLASH_CHIP_WIDTH      2 
#define SYS_FLASH_TYPE        FLASH_29LV800    /* Specify 16 bit 29F part */ 
#define FLASH_SEGMENT_SIZE    0x2000           /* sector size at 0xFA000-0xFBFFF */ 
#define FLASH_ADRS            ((SBCARM7_FLASH_BASE + 0xFA000) | 0x4000000) /* non cacheable */ 
#define FLASH_SIZE            FLASH_SEGMENT_SIZE 
#undef FLASH_NO_OVERLAY 
 
#undef NV_RAM_ADRS 
#undef NV_RAM_INTRVL 
#undef NV_RAM_SIZE 
#undef NV_BOOT_OFFSET 
#define NV_RAM_ADRS           FLASH_ADRS 
#define NV_RAM_INTRVL         1 
#define NV_RAM_SIZE           FLASH_SEGMENT_SIZE 
#define NV_BOOT_OFFSET        (FLASH_SEGMENT_SIZE - 0x200) 
 
#else 
#define NV_RAM_SIZE           NONE 
#endif    /* INCLUDE_FLASH */ 
 
/* LCD support */ 
#undef INCLUDE_LCD			/*  : define->undef */ 
 
/* LED support */ 
#undef INCLUDE_LED			/*  : define->undef */ 
 
#undef BSP_VTS 
 
#ifdef BSP_VTS 
#undef INCLUDE_PING 
#undef INCLUDE_RLOGIN 
#undef INCLUDE_SHOW_ROUTINES 
#undef INCLUDE_NET_SYM_TABLE 
 
#define INCLUDE_SHELL 
#define INCLUDE_PING 
#define INCLUDE_RLOGIN 
#define INCLUDE_SHOW_ROUTINES 
#define INCLUDE_NET_SYM_TABLE 
#endif /*BSP_VTS*/ 
 
#undef  WDB_COMM_TYPE         /* default WDB agent communication path is END */ 
#define WDB_COMM_TYPE         WDB_COMM_END 
 
/* Serial port configuration */ 
 
#define INCLUDE_SERIAL 
#undef    NUM_TTY 
#define NUM_TTY               N_SIO_CHANNELS 
 
#undef  CONSOLE_TTY 
#define CONSOLE_TTY           0 
 
/*** WDB ***/ 
#ifdef SERIAL_DEBUG 
#undef  DEFAULT_BOOT_LINE		/*  : added*/ 
#define DEFAULT_BOOT_LINE 		"tsfs(0,0)host:vxWorks " \ 
                                "h=192.166.0.254 " \ 
                                "e=192.166.0.2:ffffff00 " \ 
                                "g=192.166.0.1 "  \ 
                                "u=target "     \ 
                                "pw=target "     \ 
                                "tn=strong44b0x " \ 
                                "o=ene" 
#ifndef INCLUDE_TSFS_BOOT		/*  : added*/ 
#define INCLUDE_TSFS_BOOT 
#endif 
 
#define WDB_NO_BAUD_AUTO_CONFIG 
 
#undef WDB_COMM_TYPE 
#undef WDB_TTY_BAUD 
#undef WDB_TTY_CHANNEL 
#undef WDB_TTY_DEV_NAME 
 
#define WDB_COMM_TYPE         WDB_COMM_SERIAL /* WDB in Serial mode */ 
/*  : 115200->38400 */ 
#define WDB_TTY_BAUD          38400           /* Baud rate for WDB Connection */ 
#define WDB_TTY_CHANNEL       1               /* COM PORT #2 */ 
#define WDB_TTY_DEV_NAME      "/tyCo/1"       /* default TYCODRV_5_2 device name */ 
#endif /* SERIAL_DEBUG */ 
 
 
/* 
 * Cache configuration 
 * 
 * Note that when MMU is enabled, cache modes are controlled by 
 * the MMU table entries in sysPhysMemDesc[], not the cache mode 
 * macros defined here. 
 */ 
 
/* De-select unused (default) network drivers selected in configAll.h */ 
 
#undef    INCLUDE_ENP           /* include CMC Ethernet interface*/ 
#undef    INCLUDE_EX            /* include Excelan Ethernet interface */ 
#undef    INCLUDE_SM_NET        /* include backplane net interface */ 
#undef    INCLUDE_SM_SEQ_ADDR   /* shared memory network auto address setup */ 
 
 
 
/* Enhanced Network Driver (END) Support */ 
#undef INCLUDE_NETWORK 
#undef INCLUDE_END 
#undef  END_OVERRIDE          /* define if you are using old boot ROMs. */ 
 
#ifdef  INCLUDE_END 
/*  : INCLUDE_SNGKS32C_END->INCLUDE_NE2000_END */ 
#define INCLUDE_NE2000_END    /* Include Ethernet driver */ 
#endif  /* INCLUDE_END */ 
 
#ifdef INCLUDE_SHELL 
#define INCLUDE_SYM_TABLE 
#define INCLUDE_STANDALONE_SYM_TABLE 
#define INCLUDE_LOADER 
#define INCLUDE_UNLOADER 
#define INCLUDE_NET_SHOW 
#endif /* INCLUDE_SHELL */ 
 
/* 
 * Interrupt mode - interrupts can be in either preemptive or non-preemptive 
 * mode.  For non-preemptive mode, change INT_MODE to INT_NON_PREEMPT_MODEL 
 */ 
#define INT_MODE    INT_NON_PREEMPT_MODEL 
 
/* 
 * miscellaneous definitions 
 * Note: ISR_STACK_SIZE is defined here rather than in ../all/configAll.h 
 * (as is more usual) because the stack size depends on the interrupt 
 * structure of the BSP. 
 */ 
 
#define ISR_STACK_SIZE    0x800    /* size of ISR stack, in bytes */ 
 
/* Optional timestamp support */ 
#undef    INCLUDE_TIMESTAMP 
 
#undef INCLUDE_WINDVIEW 
#undef INCLUDE_INSTRUMENTATION 
 
#define INCLUDE_DOSFS 
#define INCLUDE_RAMDRV 
 
/* Optional TrueFFS support */ 
/*  : undef->define */ 
#undef    INCLUDE_TFFS        /* to include TrueFFS driver */ 
 
#ifdef INCLUDE_TFFS 
#define	INCLUDE_MTD_SST39VF160 /*  : added */ 
#define INCLUDE_SHOW_ROUTINES 
#define INCLUDE_DOSFS 
#endif /* INCLUDE_TFFS */ 
 
/* 
 * There isn't MMU support in this BSP, this macro is to 
 * force the MMU to be disable. 
 */ 
 
#undef INCLUDE_MMU_BASIC 
 
/* 
 * For cache support define this macro 
 */ 
#undef INCLUDE_CACHE_SUPPORT 
 
/*  -以下是自己定制的宏定义 */ 
#undef RAM_SIM							/* 是否用SDT仿真 */ 
 
#undef	SYS_CLK_RATE					/* 设置系统时钟频率,缺省60 */ 
#define	SYS_CLK_RATE		100 
 
#undef  CONSOLE_BAUD_RATE 
#define CONSOLE_BAUD_RATE	9600		/* bootRom Shell 波特率,缺省9600 */ 
 
#define INCLUDE_FTP_SERVER				/* 启动目标机FTP服务 */ 
 
#undef INCLUDE_BOOTP					/* 裁减映象大小,节省约20K */ 
 
#define Fosc            11059200        
#define Fcclk           (Fosc * 4)          
#define Fcco            (Fcclk * 4)        
#define Fpclk           (Fcclk / 4) * 1 			    
						     
 
/*  -以上是自己定制的宏定义 */ 
 
#include "wrSbcArm7.h" 
 
#ifdef __cplusplus 
} 
#endif 
 
#endif /* INCconfigh */ 
#if defined(PRJ_BUILD) 
#include "prjParams.h" 
#endif