GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > MEM / V5-2-0

Constituent: mem_scp     Tag: sun-gcc


Interface   Data Structures   File List   Data Fields   Globals  

MEM_send_cmd.c File Reference

Send MEM telecommands in SCP and LCP environments. More...

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "unistd.h"
#include "MSG/MSG_pubdefs.h"
#include "CCSDS/CCSDS_pkt.h"
#include "CCSDS/CCSDS_swap.h"
#include "ITC/ITC_dump.h"
#include "ITC/ITC_pubdefs.h"
#include "MEM/MEM_dump_cmd.h"
#include "MEM/MEM_send_cmd.h"
#include "MEM/MEM_msgs.h"
#include "PBS/BSWP.h"
#include "PBS/MBA.h"
#include "ZLIB/zlib.h"
#include "Memmap.h"
#include "CLI/CLI_pubdefs.h"

Include dependency graph for MEM_send_cmd.c:

Include dependency graph

Defines

#define TFFS_NVRAM_SIZE   256
 The size, in bytes, to reserve for NVRAM storage.


Typedefs

typedef void(* MEM_DumpCB )(char *pkt)
 MEM command dump callback pointer.


Functions

int MEM_setDisplayLevelCmd (int level)
 Set the verbosity level of the MEM command display.

void mem_free_cb (ITC_QueueItem *qitem_p, unsigned int status, void *parm_0, void *parm_1, void *parm_2)
 ITC callback to free command packet memory.

unsigned int mem_send_command (unsigned int num_parms, unsigned int *parm_bytes, unsigned int *parm_values, unsigned int func_code, MEM_DumpCB dump_func_p)
 Send a Memory command.

unsigned int MEM_sendCancel (unsigned int unit)
 Send the Memory Dump Cancel command.

unsigned int MEM_sendDump (unsigned int unit, unsigned int start, unsigned int count)
 Send the Memory Data Dump command.

unsigned int MEM_sendLoad (unsigned int unit, unsigned int address, unsigned int value)
 Send the Memory Write command.

unsigned int mem_load_buffer (unsigned int unit, unsigned int address, unsigned int num_words, unsigned int *buf_p)
 Use the Memory Write command to load a buffer of data.

unsigned int MEM_sendPciDump (unsigned int unit, unsigned int tran, unsigned int bus, unsigned int device, unsigned int function)
 Send the PCI Device Header Dump command.

unsigned int MEM_sendPciLoad (unsigned int unit, unsigned int bus, unsigned int device, unsigned int function, unsigned int offset, unsigned int value)
 Send the PCI Device Header Write command.

unsigned int MEM_sendPoolDump (unsigned int unit, unsigned int tran, unsigned int pool)
 Send the Memory Pool Status Dump command.

unsigned int MEM_sendRegDump (unsigned int unit, unsigned int tran)
 Send the Processor Register Dump command.

unsigned int MEM_sendRegLoad (unsigned int unit, unsigned int offset, unsigned int value)
 Send the Processor Register Write command.

unsigned int MEM_sendSymRelDump (unsigned int unit, unsigned int tran, unsigned int offset, unsigned int count, unsigned char *name)
 Send the Memory Dump Symbol Relative command.

unsigned int MEM_sendSymValDump (unsigned int unit, unsigned char *name)
 Send the Memory Symbol Lookup command.

unsigned int MEM_loadBankHeader (unsigned int lat_unit, unsigned int address, unsigned int rtos_bytes, unsigned int sbc_0_bytes, unsigned int sbc_1_bytes)
 Load a bank header into SIB EEPROM.

unsigned int MEM_loadBankHeader_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_loadBankHeader" command.

unsigned int MEM_sendCancel_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendCancel" command.

unsigned int MEM_sendDump_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendDump" command.

unsigned int MEM_sendLoad_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendLoad" command.

unsigned int MEM_sendPciDump_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendPciDump" command.

unsigned int MEM_sendPciLoad_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendPciLoad" command.

unsigned int MEM_sendPoolDump_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendPoolDump" command.

unsigned int MEM_sendRegDump_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendRegDump" command.

unsigned int MEM_sendRegLoad_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendRegLoad" command.

unsigned int MEM_sendSymRelDump_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendSymRelDump" command.

unsigned int MEM_sendSymValDump_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_sendSymValDump" command.

unsigned int MEM_setDisplayLevelCmd_cli (CLI_Control *cli, void *prm)
 CLI callback for the "MEM_setDisplayLevelCmd" command.

unsigned int MEM_addSendSyntax (CLI_Syntax *syntax)
 Add MEM send commands to the command-line syntax.

unsigned int MEM_addSyntaxSCP (CLI_Syntax *syntax)
 Add MEM commands to the command-line syntax for SCP.


Variables

int MEM_displayLevelCmd = 1
 The verbosity level of the MEM command display.


Detailed Description

Send MEM telecommands in SCP and LCP environments.

    CVS $Id: MEM_send_cmd.c,v 1.11 2005/04/19 21:30:27 dmay Exp $
    

These functions use standard ITC message functions to send MEM telecommands to an SIU. Depending on a command's latUnit parameter value, the SIU either handles the command or forwards it to an EPU. ITC ensures that the commands reach the intended target - even if the command is sent from an SIU in an LCP environment.


Define Documentation

#define TFFS_NVRAM_SIZE   256
 

The size, in bytes, to reserve for NVRAM storage.

This is the value specified in a SIB EEPROM bank header as the number of bytes to reserve for NVRAM storage.


Function Documentation

unsigned int MEM_addSendSyntax CLI_Syntax *  syntax  ) 
 

Add MEM send commands to the command-line syntax.

Parameters:
syntax Syntax handle.
Returns:
MSG code.

Here is the call graph for this function:

unsigned int MEM_addSyntaxSCP CLI_Syntax *  syntax  ) 
 

Add MEM commands to the command-line syntax for SCP.

Adds MEM commands to the command-line syntax when running in an SCP environment. This is the only MEM command-line syntax function called by SCP, so it must add both send and dump commands.

Parameters:
syntax Syntax handle.
Returns:
MSG code.

Here is the call graph for this function:

void mem_free_cb ITC_QueueItem *  qitem_p,
unsigned int  status,
void *  parm_0,
void *  parm_1,
void *  parm_2
[static]
 

ITC callback to free command packet memory.

Parameters:
qitem_p Pointer to packet's queue item.
status Status of packet transmission.
parm_0 Callback parameter 0 - first item to free.
parm_1 Callback parameter 1 - second item to free.
parm_2 Callback parameter 2 - third item to free.
Returns:
Nothing.

unsigned int mem_load_buffer unsigned int  unit,
unsigned int  address,
unsigned int  num_words,
unsigned int *  buf_p
[static]
 

Use the Memory Write command to load a buffer of data.

Parameters:
unit LAT unit to receive the cmd (0 => SIU, 1 => EPU0, ...).
address Starting address.
num_words Number of 32-bit values to load.
buf_p Pointer to buffer of 32-bit values to load.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_loadBankHeader unsigned int  lat_unit,
unsigned int  address,
unsigned int  rtos_bytes,
unsigned int  sbc_0_bytes,
unsigned int  sbc_1_bytes
 

Load a bank header into SIB EEPROM.

Parameters:
lat_unit Unit (CPU) to load (0=SIU, 1=EPU0, ...).
address The base address of the bank header.
rtos_bytes Size reserved for RTOS file, in bytes.
sbc_0_bytes Size reserved for SBC 0 file, in bytes.
sbc_1_bytes Size reserved for SBC 1 file, in bytes.
Returns:
MSG code.

Here is the call graph for this function:

unsigned int MEM_loadBankHeader_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_loadBankHeader" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int mem_send_command unsigned int  num_parms,
unsigned int *  parm_bytes,
unsigned int *  parm_values,
unsigned int  func_code,
MEM_DumpCB  dump_func_p
[static]
 

Send a Memory command.

Parameters:
num_parms Number of command parameters.
parm_bytes Pointer to array of parameter sizes, in bytes.
parm_values Pointer to array of parameter values.
func_code Function code of the command.
dump_func_p Pointer to function that dumps the command payload.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendCancel unsigned int  unit  ) 
 

Send the Memory Dump Cancel command.

Parameters:
unit LAT unit to receive the command (0 => SIU, 1 => EPU0, ...).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendCancel_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendCancel" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendDump unsigned int  unit,
unsigned int  start,
unsigned int  count
 

Send the Memory Data Dump command.

Parameters:
unit LAT unit to receive the command (0 => SIU, 1 => EPU0, ...).
start Starting address.
count Number of 32-bit words to dump.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendDump_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendDump" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendLoad unsigned int  unit,
unsigned int  address,
unsigned int  value
 

Send the Memory Write command.

Parameters:
unit LAT unit to receive the cmd (0 => SIU, 1 => EPU0, ...).
address Starting address.
value 32-bit value to load.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendLoad_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendLoad" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendPciDump unsigned int  unit,
unsigned int  tran,
unsigned int  bus,
unsigned int  device,
unsigned int  function
 

Send the PCI Device Header Dump command.

Parameters:
unit LAT unit to receive the cmd (0 => SIU, 1 => EPU0, ...).
tran Transaction ID to be echoed in the response telemetry.
bus Bus portion of the PCI header address.
device Device portion of the PCI header address.
function Function portion of the PCI header address.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendPciDump_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendPciDump" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendPciLoad unsigned int  unit,
unsigned int  bus,
unsigned int  device,
unsigned int  function,
unsigned int  offset,
unsigned int  value
 

Send the PCI Device Header Write command.

Parameters:
unit LAT unit to receive the cmd (0 => SIU, 1 => EPU0, ...).
bus Bus portion of the PCI header address.
device Device portion of the PCI header address.
function Function portion of the PCI header address.
offset Offset portion of the PCI header address.
value Data value to write.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendPciLoad_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendPciLoad" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendPoolDump unsigned int  unit,
unsigned int  tran,
unsigned int  pool
 

Send the Memory Pool Status Dump command.

Parameters:
unit LAT unit to receive the cmd (0 => SIU, 1 => EPU0, ...).
tran Transaction ID to be echoed in the response telemetry.
pool Pool ID (0 => system, 1 => application).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendPoolDump_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendPoolDump" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendRegDump unsigned int  unit,
unsigned int  tran
 

Send the Processor Register Dump command.

Parameters:
unit LAT unit to receive the command (0 => SIU, 1 => EPU0, ...).
tran Transaction ID to be echoed in the response telemetry.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendRegDump_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendRegDump" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendRegLoad unsigned int  unit,
unsigned int  offset,
unsigned int  value
 

Send the Processor Register Write command.

Parameters:
unit LAT unit to receive the cmd (0 => SIU, 1 => EPU0, ...).
offset Starting offset.
value 32-bit value to load.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendRegLoad_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendRegLoad" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendSymRelDump unsigned int  unit,
unsigned int  tran,
unsigned int  offset,
unsigned int  count,
unsigned char *  name
 

Send the Memory Dump Symbol Relative command.

Parameters:
unit LAT unit to receive the cmd (0 => SIU, 1 => EPU0, ...).
tran Transaction ID to be echoed in the response telemetry.
offset Starting offset, relative to the symbol.
count Number of 32-bit words to dump.
name Name of the symbol.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendSymRelDump_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendSymRelDump" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendSymValDump unsigned int  unit,
unsigned char *  name
 

Send the Memory Symbol Lookup command.

Parameters:
unit LAT unit to receive the cmd (0 => SIU, 1 => EPU0, ...).
name Name of the symbol.
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

unsigned int MEM_sendSymValDump_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_sendSymValDump" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:

int MEM_setDisplayLevelCmd int  level  ) 
 

Set the verbosity level of the MEM command display.

Parameters:
level Level of verbosity - set higher to display more.
Returns:
Previous verbosity level.

unsigned int MEM_setDisplayLevelCmd_cli CLI_Control *  cli,
void *  prm
[static]
 

CLI callback for the "MEM_setDisplayLevelCmd" command.

Parameters:
cli CLI control handle.
prm User parameter (unused).
Return values:
0 Success.
Nonzero Failure.

Here is the call graph for this function:


Variable Documentation

int MEM_displayLevelCmd = 1
 

The verbosity level of the MEM command display.

This variable determines the amount of information that is displayed for each MEM telecommand that is sent. The higher the value, the more information that is displayed. Use MEM_setDisplayLevelCmd() to change this value.


Generated on Fri May 6 01:13:18 2005 by doxygen 1.3.3