GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > CTDB / V5-4-0
Constituent: sumt_rt_pmc1553     Tag: mv2304
#include "vxWorks.h"
#include "string.h"
#include "sysLib.h"
#include "CTDB/SUMT_rt.h"
#include "CTDB/CO1553_rt.h"
#include "CTDB/CO1553_util.h"
#include "PBS/FORK.h"
#include "PBS/FPA.h"
#include "PBS/TASK.h"
#include "PBS/RW.h"
#include "PBS/MBA.h"
#include "PBS/WUT.h"
#include "MSG/MSG_pubdefs.h"
#include "SUMT_private.h"
#include "SUMT_rt_private.h"
#include "SUMT_rt_board.h"
Include dependency graph for SUMT_rt_core.c:
Defines | |
#define | MEM_ALLOC(_size) MBA_alloc((_size)) |
#define | MEM_FREE(_mem) MBA_free((_mem)) |
Functions | |
unsigned int | SUMT_rtConfigure (SUMT_RT *rt, const SUMT_RT_Bus_Config *config) |
int | SUMT_rtTask (SUMT_RT *rt, SUMT_RT_Msg *msg) |
void | SUMT_rtTerminate (SUMT_RT *rt) |
unsigned int | SUMT_rtSizeof (void) |
Get the size of a remote terminal driver descriptor. | |
SUMT_RT * | SUMT_rtGet (void) |
Get a pointer to the remote terminal driver static descriptor. | |
unsigned int | SUMT_rtInit (SUMT_RT *rt, const SUMT_RT_Bus_Config *busConfig, const SUMT_RT_Pkt_Config *pktConfig, const SUMT_RT_Callback_Config *cbConfig, const SUMT_RT_Task_Config *taskConfig) |
Intialize a remote terminal driver and 1553 device hardware. | |
unsigned int | SUMT_rtExit (SUMT_RT *rt) |
Shutdown a remote terminal driver and 1553 device hardware. | |
unsigned int | SUMT_rtStart (SUMT_RT *rt) |
Start the remote terminal listening for 1553 bus commands. | |
unsigned int | SUMT_rtStop (SUMT_RT *rt) |
Stop the remote terminal from listening for 1553 bus commands. | |
unsigned int | SUMT_rtDiagGet (SUMT_RT *rt, SUMT_RT_Diag *diag) |
Read the diagnostics information. | |
unsigned int | SUMT_rtDiagClear (SUMT_RT *rt) |
Clear the diagnostics information. | |
unsigned int | SUMT_rtHkpSet (SUMT_RT *rt, SUMT_RT_Hkp_Handler *hkpHandler, void *hkpArg) |
Change the HKP application callback. | |
unsigned int | SUMT_rtHkpGet (SUMT_RT *rt, SUMT_RT_Hkp_Handler **hkpHandler, void **hkpArg) |
Get current HKP application callback information. | |
Variables | |
SUMT_RT | rtDesc |
CO1553_RT_Telem | telemDesc |
CO1553_RT_Cmd_Rx | cmdRxDesc |
CO1553_RT_Cmd_Tx | cmdTxDesc |
Functions to handle initialization and control of the Summit remote terminal.
|
Helper macro to call user defined memory allocator.
|
|
Helper macro to call user defined memory allocator.
|
|
Performs the work necessary to configure the Summit remote terminal device. A RT descriptor structure table is layed out, with all of the subaddresses initially disabled. Each subaddress is given a data buffer large enough to hold one 1553 message. Shared memory space is also reserved for the Summit event interrupt log. After the initial setup, those subaddresses actually in use, as indicated by the config structure, are allowed to generate interrupt events. Information about the subaddresses in use is cached in the rt structure. The low part of the shared memory is devoted to the Summit RT descriptor table. Data buffers are set out for every subaddress, whether or not the subaddresses are actually used. The Summit requires a buffer of 34 16-bit words for each subaddress. Two of the words in the buffer are for control information. The descriptors for the recongnized subaddresses are initialized to proper values and pertinent information cached in the driver control structure. Special handling of the wrap data buffers allows the wrap command to be handled without futher driver intervention. At the end, the device illegalization registers are initialzed to mask out any bus activity not described in the config settings. This will cause the device to generate error interrupts on detecting illegal bus activity directed at the remote terminal.
|
Here is the call graph for this function:
|
Clear the diagnostics information. Sets to zero the current diagnostics counter values.
|
|
Read the diagnostics information. Places the current diagnostics counter values into diag.
|
|
Shutdown a remote terminal driver and 1553 device hardware. Stops the remote terminal from processing 1553 bus events and releases system resources claimed by the driver. The remote terminal event service task will be deleted.
|
|
Get a pointer to the remote terminal driver static descriptor. Returns a pointer to a static instance of the driver descriptor. This pointer may be passed in as the first paramter to all of the other driver functions. SUMT_rtInit() must be called before use.
|
|
Get current HKP application callback information. Retrieves the HKP application callback function and arguments current values.
|
Here is the call graph for this function:
|
Change the HKP application callback. Changes the HKP application callback function and arguments to new values. The old values, set either in SUMT_rtInit() or in the last call to this function, are replaced.
|
Here is the call graph for this function:
|
Intialize a remote terminal driver and 1553 device hardware. Intializes the Summit remote terminal device descriptor and device hardware. The device and associated software structures are configured according to the contents of the busConfig, boardConfig, pktConfig, and cbConfig structures. The device internal registers are initialized to remote terminal mode. The function SUMT_rtConfigure() is called to setup the shared memory structures as well as the device RT illegallization registers. At the end, the device sercive task is spawned, and the device interrupts are enabled. The device is still not listening on the bus. Call SUMT_rtStart() to enable activity.
|
Here is the call graph for this function:
|
Get the size of a remote terminal driver descriptor. Returns the size of a Summit remote terminal driver descriptor. The user is responsible for allocating this memory before calling SUMT_rtInit().
|
|
Start the remote terminal listening for 1553 bus commands. Starts the remote terminal listening on the 1553 bus for commands from the bus controller.
|
Here is the call graph for this function:
|
Stop the remote terminal from listening for 1553 bus commands. Stops the remote terminal from listening on the 1553 bus for commands from the bus controller.
|
|
The remote terminal event service task. This task listens for new event descriptor messages placed on a queue by other driver functions. The event information is parsed to determine the appropriate action.
|
Here is the call graph for this function:
|
Stops the remote terminal event service loop and returns all resources claimed by the driver.
|
Here is the call graph for this function:
|
An instance of the telecommand receive interface descriptor. |
|
An instance of the telecommand transmit interface descriptor. |
|
An instance of the driver descriptor; used for SUMT_rtGet(). |
|
An instance of the telemetry interface descriptor. |