GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > VXW / V7-1-1

Constituent: vxw_flight     Tag: rad750


Interface   Data Structures   File List   Data Fields   Globals  

VXW_AppInit.c.vx-ppc-cpci File Reference

Function definitions for secondary boot RTOS phase. More...

#include "vxWorks.h"
#include "config.h"
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "ioLib.h"
#include "memDrv.h"
#include "loadLib.h"
#include "symLib.h"
#include "sysLib.h"
#include "tffs/tffsDrv.h"
#include "mv2600.h"
#include "Memmap.h"
#include "BootDiagnostics.h"
#include "VXW/VXW_msg.h"
#include "ZLIB/zlib.h"
#include "FBS/FBS_pubrtos.h"
#include "MDB/MDB_macdefs.h"

Include dependency graph for VXW_AppInit.c.vx-ppc-cpci:


Defines

#define SBC_DEV_NAME   "/mem/sbc"
#define SBC_ENTRY_NAME   "SBC_init"
#define BOOT_DIAGS_ADDR()   (&debugDiag)

Functions

static int VXW_AppInitRead (unsigned int addr, void *buf, unsigned int size, const BOOT_Diagnostics *diag)
static void VXW_AppInitError (unsigned int status, unsigned int index, unsigned int data, BOOT_Diagnostics *diag)
void VXW_AppInit (void)

Variables

SYMTAB_ID sysSymTbl
int sysStartType
static BOOT_Diagnostics debugDiag

Detailed Description

Function definitions for secondary boot RTOS phase.

Author:
D.L. Wood
Implements the first stage of the LAT secondary boot process. Loads the secondary boot executable from the SIB board lower EEPROM bank, SIB board upper EEPROM bank, or from the secondary boot module RAM temporary buffer, and executes the entry function SBC_Init().

Define Documentation

 
#define BOOT_DIAGS_ADDR  )     (&debugDiag)
 

Get access to the boot diagnostics memory structure. For RAD750 targets, this is the real thing. Otherwise, it points to the local debug structure.

#define SBC_DEV_NAME   "/mem/sbc"
 

The name to use for the loader memory device.

#define SBC_ENTRY_NAME   "SBC_init"
 

The symbol name of the SBC executable entry function.


Function Documentation

void VXW_AppInit void   ) 
 

Start LAT application initialization by executing secondary boot code module. The goal is to get and load the secondary boot executable (SBC module 0). The secondary boot flags indicate the location to get the source image. The file header and file checksum are verified, and the file data is inflated if necessary. The module is loaded using loadModule(), and the SBC entry point is called. The symbol SBC_init() should be defined in the SBC module.

static void VXW_AppInitError unsigned int  status,
unsigned int  index,
unsigned int  data,
BOOT_Diagnostics diag
[static]
 

Reports errors from the SBC initialization process. The relevant information is stored in the boot diagnostics structure. For flight configurations, the error is considered fatal, and the system is rebooted. Otherwise, the error information is simply printed.

Parameters:
status An SBC MSG code indicating the error condition.
index An SBC MSG code indicating the progress index at time of error.
data Error specific data to help diagnosis.
diag A pointer to the boot diagnostics area.

static int VXW_AppInitRead unsigned int  addr,
void *  buf,
unsigned int  size,
const BOOT_Diagnostics diag
[static]
 

Read in data from the SBC executable module file.

Parameters:
addr The address or offset to read from.
buf The buffer to hold the read data.
size The number of bytes to read.
diag A pointer to the boot diagnostics area.
Return values:
0 Success.
-1 Failure.


Variable Documentation

debugDiag [static]
 

Initial value:

{
        0,                                                                              
        (BOOT_DIAGS_SBF_RTOS_SOURCE_EE0 |
         BOOT_DIAGS_SBF_MOD0_SOURCE_EE0 | 
         BOOT_DIAGS_SBF_MOD1_SOURCE_EE0),               
        0,                                                                              
        0,                                                                              
        0,                                                                              
        0,                                                                              
        0,                                                                              
        0,                                                                              
        0,                                                                              
        0,                                                                              
        0,                                                                              
        0,                                                                                                                                                                                                                                      
        0,                                                                              
        0,                                                                              
        0,                                                                              
        0,                                                                                      
        0,                                                                              
        0,                                                                              
        0,                                                                              
        0,                                                                                      
        0,                                                                              
        {0,     0},                                                                     
        0,                                                                              
        {0,     0, 0, 0, 0,     0, 0, 0}                                                                                
}
A fake boot diagnostics structure for non-RAD750 targets.

sysStartType
 

The system start type value.

sysSymTbl
 

The VxWorks system symbol table.


Generated on Sat Feb 2 01:36:43 2008 by  doxygen 1.4.4