diff options
Diffstat (limited to 'ace/sys_conf.h')
-rw-r--r-- | ace/sys_conf.h | 380 |
1 files changed, 380 insertions, 0 deletions
diff --git a/ace/sys_conf.h b/ace/sys_conf.h new file mode 100644 index 00000000000..cbf778030bf --- /dev/null +++ b/ace/sys_conf.h @@ -0,0 +1,380 @@ +/* ============================================================================ */ +/* */ +/* -*- C++ -*- */ +/* $Id$ */ +/* */ +/* ============================================================================ */ +/* */ +/* = LIBRARY */ +/* ace */ +/* */ +/* = FILENAM */ +/* sys_conf.h (definitions for pSOSim and pSOSystem configuration) */ +/* */ +/* = AUTHOR */ +/* Chris Gill */ +/* */ +/* ============================================================================ */ + +#ifndef _SYS_CONF_H +#define _SYS_CONF_H + +#if defined(__cplusplus) +extern "C" { +#endif + +/***********************************************************************/ +/* */ +/* These symbols are used to define other symbols in this file. */ +/* They should never be changed. */ +/* */ +/***********************************************************************/ +#define YES 1 +#define NO 0 + +#define USE_RARP 0 + +#define DBG_SA 1 /* Standalone pROBE debugging */ +#define DBG_XS 2 /* XRAY+ via RS-232 */ +#define DBG_XN 3 /* XRAY+ via network */ +#define DBG_AP 4 /* Run application (w/ pROBE in standalone mode) */ + +#define STORAGE 5 /* Get SD_'s from storage area */ +#define SYS_CONF 6 /* Get SD_'s from #defines set in this file */ + + +/***********************************************************************/ +/* */ +/* B A S I C P A R A M E T E R S */ +/* */ +/* The parameters in this section determine the fashion in which */ +/* many of the other parameters in this file will be used. */ +/* */ +/* Many of the parameters in this file have names beginning with */ +/* either "SC_" or "SD_". Those beginning with "SC_" are ALWAYS */ +/* controlled by the values you set in this file. The values of */ +/* the "SD_" parameters can be determined either by the definitions */ +/* given in this file, or by the data found in the target board's */ +/* parameter storage area. SC_SD_PARAMETERS determines this. If */ +/* SC_SD_PARAMETERS is "SYS_CONF", then the values given in this */ +/* file will be used for the SD_ parameters. If SC_SD_PARAMETERS */ +/* is "STORAGE", then pSOSystem will attempt to use the values found */ +/* in the board's parameter storage area for the SD_ variables. If */ +/* the parameter storage area has not been initialized or has been */ +/* corrupted, then the values given in this file will be used. They */ +/* will also be written to the storage area. */ +/* */ +/* If SC_SD_PARAMETERS is STORAGE, you may enable a "startup dialog" */ +/* which will allow you to view, and optionally change, the */ +/* parameter values found in the storage area. The dialog is enabled */ +/* by setting SC_STARTUP_DIALOG to YES. In this case, */ +/* SD_STARTUP_DELAY specifies the number of seconds that the dialog */ +/* will wait for input before proceeding to boot the system. */ +/* */ +/* SE_DEBUG_MODE determines how the system will operate, as follows: */ +/* */ +/* DBG_SA: Boot pROBE+ in standalone mode. */ +/* */ +/* DBG_XS: Boot into pROBE+ and wait for the host debugger (XRAY+) */ +/* via a serial connection */ +/* */ +/* DBG_XN: Boot into pROBE+ and wait for the host debugger (XRAY+) */ +/* via a network connection */ +/* */ +/* STORAGE: Use the mode (DBG_SA, DBG_XS, or DBG_XN) found in the */ +/* parameter storage area. If a valid mode is not found, */ +/* then use DBG_SA. */ +/* */ +/***********************************************************************/ +#define SC_SD_PARAMETERS STORAGE +#define SC_STARTUP_DIALOG NO +#define SD_STARTUP_DELAY 60 +#define SE_DEBUG_MODE STORAGE + +/***********************************************************************/ +/* */ +/* O P E R A T I N G S Y S T E M C O M P O N E N T S */ +/* */ +/* Setting the definition line to YES will cause that component to */ +/* be built into the system. NO means the component will NOT be */ +/* put into the system. It is an error to specify both SC_PSOS */ +/* and SC_PSOSM as present! */ +/* */ +/***********************************************************************/ +#define SC_PSOS YES /* pSOS+ real-time kernel */ +#define SC_PSOSM NO /* pSOS+ real-time multiprocessing kernel */ +#define SC_PROBE YES /* pROBE+ system-level debugger */ +#define SC_PHILE NO /* pHILE+ file system manager */ +#define SC_PREPC YES /* pREPC+ C run-time library */ +#define SC_PNA YES /* pNA+ TCP/IP networking manager */ +#define SC_PRPC NO /* pRPC+ RPC component */ +#define SC_PX NO /* pX+ X-windows client */ +#define SC_PSE NO /* pSE+ STREAMS component */ +#define SC_PTLI NO /* pTLI TLI component */ + + +/***********************************************************************/ +/* */ +/* S E R I A L C H A N N E L C O N F I G U R A T I O N */ +/* */ +/* * SC_DEF_BAUD specifies the default baud rate to be used for */ +/* the serial channels */ +/* * SC_APP_CONSOLE specifies the serial channel number (starting */ +/* from 1) which should be used for the application's "console". */ +/* * SC_PROBE_CONSOLE specifies the serial channel number (starting */ +/* from 1) which pROBE+ should use to display output and receive */ +/* commands, or to communicate with XRAY+ over. */ +/* * SC_PROBE_HOST specifies the serial channel number (starting */ +/* from 1) which should be used for the pROBE+ "host" channel. */ +/* This is not normally required, so it can be disabled by */ +/* using a value of 0. The host channel is explained in the */ +/* pROBE+ User's Manual. */ +/* */ +/***********************************************************************/ +#define SD_DEF_BAUD 9600 +#define SC_APP_CONSOLE 1 +#define SC_PROBE_CONSOLE 1 +#define SC_PROBE_HOST 0 + + +/***********************************************************************/ +/* */ +/* L A N C O N F I G U R A T I O N */ +/* */ +/* */ +/***********************************************************************/ +#define SD_LAN1 YES +#define SD_LAN1_IP 0x80FCA58C +#define SD_LAN1_SUBNET_MASK 0 +#define SC_LAN1_BUFFS 40 + +/***********************************************************************/ +/* */ +/* S H A R E D M E M O R Y C O N F I G U R A T I O N */ +/* */ +/* */ +/***********************************************************************/ +/*---------------------------------------------------------------------*/ +/* If you want to build a Shared Memory Interface for the network or */ +/* multi-processing pSOS+m, set SD_SM_NODE (a non-zero value) to the */ +/* node number of THIS node. */ +/*---------------------------------------------------------------------*/ +#define SD_SM_NODE 0 + +/*---------------------------------------------------------------------*/ +/* Shared memory network interface */ +/*---------------------------------------------------------------------*/ +#define SD_NISM NO +#define SD_NISM_IP 0x00000000 +#define SD_NISM_DIRADDR 0x300000 +#define SC_NISM_BUFFS 30 +#define SC_NISM_LEVEL 2 +#define SD_NISM_SUBNET_MASK 0 + + +/*---------------------------------------------------------------------*/ +/* If you want to build a multi-node pSOS+m system, set SD_KISM */ +/* to the number of nodes in the system. */ +/*---------------------------------------------------------------------*/ +#define SD_KISM NO +#define SD_KISM_DIRADDR 0x1000400 + + +/***********************************************************************/ +/* */ +/* M I S C E L L A N E O U S N E T W O R K I N G */ +/* P A R A M E T E R S */ +/* */ +/***********************************************************************/ +#define SD_DEF_GTWY_IP 0 + + +/***********************************************************************/ +/* */ +/* B U S C O N F I G U R A T I O N */ +/* */ +/* */ +/***********************************************************************/ +#define SD_VME_BASE_ADDR 0x01000000 + + +/***********************************************************************/ +/* SC_RAM_SIZE */ +/* */ +/* Normally, pSOSystem uses ALL of the memory remaining on a board */ +/* for dynamic allocation ("region 0"). You may override this by */ +/* setting SC_RAM_SIZE to a non-zero value. If you do, pSOSystem will */ +/* not touch any memory after address (BSP_RAM_BASE + SC_RAM_SIZE - 1).*/ +/* */ +/* NOTE: This is usefull when the building a BOOT ROM you and want to */ +/* make sure it does not "over flow" into the space you are putting */ +/* the download code. */ +/***********************************************************************/ +#define SC_RAM_SIZE 0x800000 + +/***********************************************************************/ +/* */ +/* I / O D E V I C E S */ +/* */ +/* Each device may be included in the system by specifying a major */ +/* number for it, which determines its slot in the pSOS+ I/O switch */ +/* table. To leave a device driver out of the system, use NO for */ +/* the major number. */ +/* */ +/* Note the following: */ +/* * Major device 0 is reserved and cannot be used for any of these */ +/* devices. Setting a device number to 0 here is the same as NO. */ +/* * No device number may be higher than SC_DEVMAX (SC_DEVMAX may */ +/* be increased, if desired) */ +/* * The lines defining the symbols DEV_SERIAL, DEV_TIMER, etc, */ +/* should not be changed. These are for use by application */ +/* programs as the "device number" parameter on de_* calls. */ +/* */ +/***********************************************************************/ +#define SC_DEV_SERIAL 1 /* Serial driver */ +#define SC_DEV_TIMER 2 /* Periodic tick timer */ +#define SC_DEV_RAMDISK NO /* RAM disk */ +#define SC_DEV_TFTP NO /* TFTP pseudo driver */ +#define SC_DEV_SCSI NO /* SCSI bus */ +#define SC_DEV_DLPI NO +#define SC_DEVMAX 6 /* Maximum device number */ + +#define DEV_SERIAL (SC_DEV_SERIAL << 16) +#define DEV_TIMER (SC_DEV_TIMER << 16) +#define DEV_RAMDISK (SC_DEV_RAMDISK << 16) +#define DEV_SCSI (SC_DEV_SCSI << 16) +#define DEV_TFTP (SC_DEV_TFTP << 16) +#define DEV_DLPI (SC_DEV_DLPI << 16) + +/***********************************************************************/ +/* */ +/* C O M P O N E N T C O N F I G U R A T I O N P A R A M E T E R S */ +/* */ +/* These parameters should work as is for this application. You */ +/* may want to change some of them if you start customizing this */ +/* application. */ +/* */ +/***********************************************************************/ + +/*---------------------------------------------------------------------*/ +/* pSOS+ configuration parameters */ +/*---------------------------------------------------------------------*/ +#define KC_RN0USIZE 0x100 /* region 0 unit size */ +#define KC_NTASK 12 /* max number of tasks */ +#define KC_NQUEUE 10 /* max number of message queues */ +#define KC_NSEMA4 30 /* max number of semaphores */ +#define KC_NMSGBUF 100 /* max number of message buffers */ +#define KC_NTIMER 10 /* max number of timers */ +#define KC_NLOCOBJ 50 /* max number of local objects */ + +/* note: because pSOSim *simulates* a realtime clock, this value is set */ +/* very low to avoid crazy skew between the simulated and real worlds */ +#define KC_TICKS2SEC 1000000 /* clock tick interrupt frequency */ + +#define KC_TICKS2SLICE 10 /* time slice quantum, in ticks */ +#define KC_SYSSTK 0xFFFF /* pSOS+ system stack size (bytes) */ +#define KC_ROOTSSTK 0xFFFF /* ROOT supervisor stack size */ +#define KC_ROOTUSTK 0 /* ROOT user stack size */ +#define KC_ROOTMODE 0x2000 /* ROOT initial mode */ +#define KC_STARTCO 0 /* callout at task activation */ +#define KC_DELETECO 0 /* callout at task deletion */ +#define KC_SWITCHCO 0 /* callout at task switch */ +#define KC_FATAL 0 /* fatal error handler address */ + + +/*---------------------------------------------------------------------*/ +/* pSOS+m configuration parameters */ +/*---------------------------------------------------------------------*/ + +#define MC_NGLBOBJ 8 /* sizeof global obj table in each node*/ +#define MC_NAGENT 10 /* number of RPC agents in this node */ +#define MC_FLAGS 0 /* operating mode flags */ +#define MC_ROSTER 0 /* addr of user roster change callout */ +#define MC_KIMAXBUF 100 /* maximum KI packet buffer length */ +#define MC_ASYNCERR 0 /* asynchronous calls error callout */ + +/*---------------------------------------------------------------------*/ +/* pROBE+ configuration parameters */ +/*---------------------------------------------------------------------*/ +#define RC_BRKOPC 0x4E40 /* Instruction break opcode */ +#define RC_ILEVEL MAX_ILEV /* pROBE+ interrupt mask */ +#define RC_SMODE 0 /* Start mode */ +#define RC_FLAGS 0x0C /* Initial flag settings */ + +/*---------------------------------------------------------------------*/ +/* pHILE+ configuration parameters */ +/*---------------------------------------------------------------------*/ +#define FC_LOGBSIZE 9 /* Block size (base-2 exponent) */ +#define FC_NBUF 6 /* Number of cache buffers */ +#define FC_NMOUNT 3 /* Max # of mounted volumes */ +#define FC_NFCB 10 /* Max # of opened files per system */ +#define FC_NCFILE 2 /* Max # of opened files per task */ +#define FC_MSDOS 1 /* MS-DOS volume mount flag */ + +/*---------------------------------------------------------------------*/ +/* pREPC+ configuration parameters */ +/*---------------------------------------------------------------------*/ +#define LC_BUFSIZ 128 /* I/O buffer size */ +#define LC_NUMFILES 50 /* Max number of open files per task */ +#define LC_WAITOPT 0 /* Wait option for memory allocation */ +#define LC_TIMEOPT 0 /* Timeout option for mem allocation */ +#define LC_SSIZE 512 /* Size of print buffer */ + +/*---------------------------------------------------------------------*/ +/* pNA+ configuration parameters */ +/*---------------------------------------------------------------------*/ +#define NC_NNI 5 /* size of pNA NI Table */ +#define NC_NROUTE 10 /* size of pNA Routing Table */ +#define NC_NARP 20 /* size of pNA ARP table */ +#define NC_DEFUID 0 /* Default User ID of a task */ +#define NC_DEFGID 0 /* Default Group ID of a task */ +#define NC_HOSTNAME "scg" /* Hostname of the node */ +#define NC_NHENTRY 8 /* Number of Host table entries */ + +/*---------------------------------------------------------------------*/ +/* pSE+ configuration parameters */ +/*---------------------------------------------------------------------*/ +#define NBUFS_0 64 /* number of 0 length buffers */ +#define NBUFS_32 128 /* number of 32 byte buffers */ +#define NBUFS_64 128 /* number of 64 byte buffers */ +#define NBUFS_128 256 /* number of 128 byte buffers */ +#define NBUFS_256 32 /* number of 256 byte buffers */ +#define NBUFS_512 32 /* number of 512 byte buffers */ +#define NBUFS_1024 16 /* number of 1k byte buffers */ +#define NBUFS_2048 16 /* number of 2k byte buffers */ +#define NBUFS_4096 8 /* number of 4k byte buffers */ +#define SE_MAX_PSE_STRBUFS 9 /* max number of stream buffer types */ + +#define SE_MAX_PSE_MODULES 2 /* max number of streams modules */ +#define SC_SHARE_NI NO /* does pna share NI with streams? */ + +#define SE_DATA_SIZE 0x0C00 /* size of pSE data area */ + /* (must be at least 3K) */ +#define SE_TASK_PRIO 250 /* priority for pSE task */ +#define SE_STACK_SIZE 0x2000 /* stack size for pSE task */ +#define SE_DEF_UID 0 /* default user id */ +#define SE_DEF_GID 0 /* default group id */ +#define SE_N_FDS 32 /* max # of system-wide */ + /* stream descriptors */ +#define SE_N_TASKFDS 8 /* max # of per-task stream */ + /* descriptors */ +#define SE_N_LINKS 32 /* max # of multiplexing links */ +#define SE_N_TIMEOUTS 32 /* max # of timeout requests */ +#define SE_N_BUFCALLS 32 /* max # of bufcall requests */ +#define SE_N_QUEUES 256 /* # of queues */ +#define SE_N_MBLKS 512 /* reserved for future use, must be 0 */ + +/***********************************************************************/ +/* */ +/* This defines the IP address of the host system where the */ +/* "server" program should be running. */ +/* */ +/***********************************************************************/ +#define HOST_IP 0x80FCA58C + +#if defined(__cplusplus) +} +#endif + +#endif /* _SYS_CONF_H */ + |