GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > LCBT / V1-5-0
Constituent: lcbt     Tag: rad750
#include "LCBT/LCBT_initBoard.h"
#include "LCBT/TDATA.h"
Include dependency graph for LCBT.h:
This graph shows which files directly or indirectly include this file:
Defines | |
#define | LCBT_STALL (0) |
standard stall value for register access, possible use in testing | |
Typedefs | |
typedef enum _LCBT_OPTION | LCBT_OPTION |
Masks for test option mask. | |
typedef enum _LCBT_AVAIL | LCBT_AVAIL |
defines used with sHwAvail to determine what HW is connected for LCBT_cmdExternalTest() | |
Enumerations | |
enum | _LCBT_OPTION { LCBT_OPTION_BUSYPRINT = 1, LCBT_OPTION_VERBOSE = 2, LCBT_OPTION_FOREVER = 4, LCBT_OPTION_INCTESTPARM = 0x10, LCBT_OPTION_COMPARE_FOR_ECHO = 0x20, LCBT_OPTION_RLCL_ADDR = 0x40, LCBT_OPTION_NOWRITEOVER = 0x80 } |
enum | _LCBT_AVAIL { LCBT_TEM_AVAIL = 1, LCBT_GASU_AVAIL = 2, LCBT_MASK_VALID = 0x8000 } |
Functions | |
int | LCBT_init (int latpAddr, int useRedundantPath, LCBD lcb) |
inits LCB driver (which starts 2 tasks associated with driver) | |
void | LCBT_setSiu (int idx) |
Set boardID in Csr to SIU addr. | |
void | LCBT_setEpu (int idx) |
Set boardID in Csr to EPU addr. | |
int | LCBT_eventInit (int forkPri) |
Setup module in this file to echo event data back to sender. | |
int | LCBT_testAll (int num, int nLoops, int latpAddr, int loopbackCable) |
overall test, does complete regression test of LCB | |
int | LCBT_testAllEpu (int num, int nLoops, int latpAddr, int loopbackCable) |
overall test for EPU, does complete regression test of LCB minus cmdResp test | |
void | LCBT_setOption (unsigned int optionMask) |
set test option mask, see LCBT.h for values | |
int | LCBT_localRegTest (int num, TDATA_DTEST testType, unsigned int testParm) |
Read/write/compare test on all PCI accessable registers on LCB board. | |
int | LCBT_cmdLocalTest (int num, TDATA_DTEST testType, unsigned int testParm) |
read-only test on LCB local registers that require Cmd list DMA | |
int | LCBT_cmdLocalTest2 (int num, TDATA_DTEST testType, unsigned int testParm) |
2 task read test on LCB local registers that require Cmd list DMA | |
int | LCBT_cmdLocalTest3 (int num, TDATA_DTEST testType, unsigned int testParm) |
3 task read test on LCB local registers that require Cmd list DMA | |
int | LCBT_cmdExternalTest (int num, int singleAccess, TDATA_DTEST testType, unsigned int testParm) |
read test on LCB local registers that require Cmd list DMA | |
int | LCBT_eventTest (int num, int maxLen, int latpAddr, int randomLen, int ccsds, TDATA_DTEST testType, unsigned int testParm) |
Test to send/recv/compare event data thru loopback on LCB board. | |
int | LCBT_eventTest2 (int num, int maxLen, int latpAddr, int randomLen, int ccsds, TDATA_DTEST testType, unsigned int testParm) |
2 concurrent task test to send/recv/compare event data thru loopback on LCB board | |
int | LCBT_eventTest3 (int num, int maxLen, int latpAddr, int randomLen, int ccsds, TDATA_DTEST testType, unsigned int testParm) |
3 concurrent task test to send/recv/compare event data thru loopback on LCB board | |
int | LCBT_eventTest5 (int num, int maxLen, int latpAddr, int randomLen, int ccsds, TDATA_DTEST testType, unsigned int testParm) |
5 concurrent task test to send/recv/compare event data thru loopback on LCB board | |
int | LCBT_comboTest (int num, int maxLen, int latpAddr, int randomLen, int ccsds, TDATA_DTEST testType, unsigned int testParm) |
2 concurrent tasks running event and localCmdReg test | |
int | LCBT_eventWatermarkTest (int num, int latpAddr) |
Check for proper operation of watermarks on Event and EventData queues. | |
int | LCBT_fillQueueTest (int numLoop, int disableResultInt) |
Fill requestQ with requests to make sure it handles it properly. | |
int | LCBT_eventFillTest (int num, int latpAddr, int buffSize32, int printInfo) |
Check for proper operation circular buffFUll interrupt. | |
unsigned int | LCBT_determineHw () |
get mask determined by LCBT_determineHw() for use in LCBT_determineHw () determine which HW is connected to the LCB | |
unsigned int | LCBT_hwAvail () |
get mask of hw determined by LCBT_determineHw() for use in LCBT_cmdExternalTest() | |
unsigned int | LCBT_initGasu () |
setup registers in GASU determine which HW is connected to the LCB | |
unsigned int | LCBT_setCfg (int haveGasu, int haveTem) |
get mask determined by LCBT_determineHw() for use in LCBT_cmdExternalTest() | |
unsigned int | LCBT_lam (int latpAddr) |
Send out LAM (lookAtMe) to specified addr. | |
unsigned int | LCBT_remoteLatpCsr (int latpAddr, unsigned int val, unsigned int mask, int broadcast) |
send value to LatpCsr on another CPU over CmdResponse | |
unsigned int | LCBT_setRemoteBoardId (int latpAddr) |
set board ID to latpAddr on CPU determined by CRU | |
int | LCBT_clearErrorTotals () |
clear the global error counts | |
int | LCBT_printErrorTotals (char *title) |
print the global error counts | |
int | LCBT_updateErrorTotals (int access, int rErr, int wErr, int cErr) |
update the global error counts | |
int | LCBT_saveErrorForDeltas () |
stash global error counts to use with LCBT_printErrorDeltas() | |
int | LCBT_printErrorDeltas (char *title) |
print the delta error counts since LCBT_saveErrorForDeltas() | |
int | LCBT_eventRecv (int numRecv, int ccsds) |
Setup to receive and compare data from LCBT_eventSend(). | |
int | LCBT_eventSend (int numEvents, int maxEvtSize, int latpAddr, int randomLen, int ccsds, TDATA_DTEST testType, unsigned int testParm) |
Send out test event data to be received by LCBT_eventRecv(). | |
int | LCBT_eventSendDelay (int delayNanosec) |
Set delay in nanoSec between event sends, can be 0. | |
void | LCBT_regs () |
print vals of all registers in LCB | |
unsigned int | LCBT_readCsr () |
Read CSR register. | |
unsigned int | LCBT_readIrq () |
Read IRQ register which has interrupt status. | |
unsigned int | LCBT_readEventBase () |
Read Event Base register which is start of Event circular buffer. | |
unsigned int | LCBT_readEventFree () |
Read Event Free register which is offset in Event circular buffer HW will write to. | |
unsigned int | LCBT_readEventQ () |
Read eventQueue NOTE this will pull value from queue and effect operation. | |
unsigned int | LCBT_readResultQ () |
Read resultQueue NOTE this will pull value from queue and effect operation. | |
unsigned int | LCBT_readRequestQ () |
Read requestQueue, 0=notEMpty, not0=empty NOTE this will pull value from queue and effect operation. | |
unsigned int | LCBT_readLatpCsr () |
read LATp CSR register (requires a DMA) | |
unsigned int | LCBT_readFifoFault () |
read Fifo Fault registers (requires a DMA) | |
unsigned int | LCBT_readFabricSelect () |
Read FabricSelect register which indicates primary or redundant. | |
unsigned int | LCBT_readStats () |
read stats register (requires a DMA) | |
void | LCBT_readHwInfo () |
Read hwInfo register. | |
unsigned int | LCBT_writeCsr (unsigned int data) |
Write given value to register. | |
unsigned int | LCBT_writeIrq (unsigned int data) |
Write given value to register. | |
unsigned int | LCBT_writeEventBase (unsigned int data) |
Write given value to register. | |
unsigned int | LCBT_writeEventFree (unsigned int data) |
Write given value to register. | |
unsigned int | LCBT_writeFabricSelect (unsigned int data) |
Write given value to register. | |
unsigned int | LCBT_writeLatpCsr (unsigned int data, unsigned int mask) |
write LATp CSR register (requires a DMA) | |
unsigned int | LCBT_writeFifoFault (unsigned int data, unsigned int mask) |
write Fifo Fault register (requires a DMA) | |
unsigned int | LCBT_writeStats (unsigned int data, unsigned int mask) |
write Stats register (requires a DMA) | |
void | LCBT_latReset (unsigned int stall) |
sends LAT reset (requires a DMA) | |
unsigned int | LCBT_setWatermark (unsigned int val) |
Write the watermark field in the CSR. | |
unsigned int | LCBT_readReg (int latpAddr, int block, int reg, unsigned int *value) |
read a single register over the cmdResponse fabric | |
unsigned int | LCBT_writeReg (int latpAddr, int block, int reg, unsigned int value, int broadcast) |
write to single register over the cmdResponse fabric | |
void | LCBT_stats (int mask) |
print stats for LCB driver | |
void | LCBT_clearStats () |
clear stats for LCB driver | |
void | LCBT_resetTest (int numReqPer) |
special test for reset fix on FpgaLat=0x5d |
These are the main subroutines for running LCB regression tests. They are intended to be run on VxWorks through the WindSh or across the network via LTX. The subroutines are structured to be used thru the WindSh rather than be called by other progs. They assume a single LCB board. CVS $Id: LCBT.h,v 1.30 2005/02/03 23:59:34 ebacho Exp $
|
|
|
|
clear the global error counts
|
|
clear stats for LCB driver
|
|
read test on LCB local registers that require Cmd list DMA
|
Here is the call graph for this function:
|
read-only test on LCB local registers that require Cmd list DMA
|
Here is the call graph for this function:
|
2 task read test on LCB local registers that require Cmd list DMA
|
Here is the call graph for this function:
|
3 task read test on LCB local registers that require Cmd list DMA
|
Here is the call graph for this function:
|
2 concurrent tasks running event and localCmdReg test
|
Here is the call graph for this function:
|
get mask determined by LCBT_determineHw() for use in LCBT_determineHw () determine which HW is connected to the LCB This routine is used to determine what HW is connected to the LCB so that the LCBT_cmdExternalTest() can be run. The most likly configurations are: LCB to TEM (teststand) LCB to GASU (i.e. EBM) LCB to GASU to TEM (i.e. EBM and TEM) It determines HW by trying to read registers in that HW. If HW config is known and user wishes to receive errors if HW is not operating, use the LCBT_setCfg() call to setup. Configuration is essentially only for LCBT_testAll() as it choose the tests to run. If tests withint LCBT_testAll() are called directly they will not consider the configuration setting. |
Here is the call graph for this function:
|
Check for proper operation circular buffFUll interrupt.
|
Here is the call graph for this function:
|
Setup module in this file to echo event data back to sender.
|
|
Setup to receive and compare data from LCBT_eventSend().
|
|
Send out test event data to be received by LCBT_eventRecv().
|
Here is the call graph for this function:
|
Set delay in nanoSec between event sends, can be 0.
|
|
Test to send/recv/compare event data thru loopback on LCB board.
|
Here is the call graph for this function:
|
2 concurrent task test to send/recv/compare event data thru loopback on LCB board
|
Here is the call graph for this function:
|
3 concurrent task test to send/recv/compare event data thru loopback on LCB board
|
Here is the call graph for this function:
|
5 concurrent task test to send/recv/compare event data thru loopback on LCB board
|
Here is the call graph for this function:
|
Check for proper operation of watermarks on Event and EventData queues.
|
Here is the call graph for this function:
|
Fill requestQ with requests to make sure it handles it properly.
|
|
get mask of hw determined by LCBT_determineHw() for use in LCBT_cmdExternalTest()
|
|
inits LCB driver (which starts 2 tasks associated with driver)
|
Here is the call graph for this function:
|
setup registers in GASU determine which HW is connected to the LCB This routine is used as an alternative to PIG to init the GASU. DO NOT use if you are using PIG to setup the HW. |
Here is the call graph for this function:
|
Send out LAM (lookAtMe) to specified addr.
|
Here is the call graph for this function:
|
sends LAT reset (requires a DMA)
|
|
Read/write/compare test on all PCI accessable registers on LCB board.
|
Here is the call graph for this function:
|
print the delta error counts since LCBT_saveErrorForDeltas()
|
|
print the global error counts
|
|
Read CSR register.
|
|
Read Event Base register which is start of Event circular buffer.
|
|
Read Event Free register which is offset in Event circular buffer HW will write to.
|
|
Read eventQueue NOTE this will pull value from queue and effect operation.
|
|
Read FabricSelect register which indicates primary or redundant.
|
|
read Fifo Fault registers (requires a DMA)
|
|
Read hwInfo register.
|
|
Read IRQ register which has interrupt status.
|
|
read LATp CSR register (requires a DMA)
|
|
read a single register over the cmdResponse fabric
|
|
Read requestQueue, 0=notEMpty, not0=empty NOTE this will pull value from queue and effect operation.
|
|
Read resultQueue NOTE this will pull value from queue and effect operation.
|
|
read stats register (requires a DMA)
|
|
print vals of all registers in LCB
|
Here is the call graph for this function:
|
send value to LatpCsr on another CPU over CmdResponse
|
Here is the call graph for this function:
|
special test for reset fix on FpgaLat=0x5d
This test requires USER INTERACTION to turn off/on the 20 MHz clock (usually by powering the GASU on and off). The fix in LatFpga=0x5d allows this test to run sucessfully without errors. |
Here is the call graph for this function:
|
stash global error counts to use with LCBT_printErrorDeltas()
|
|
get mask determined by LCBT_determineHw() for use in LCBT_cmdExternalTest()
This routine is used instead of LCNT_determineHw() when the HW configuration is already known. Configuration is essentially only for LCBT_testAll() as it choose the tests to run. If tests withint LCBT_testAll() are called directly they will not consider the configuration setting. |
|
Set boardID in Csr to EPU addr.
|
|
set test option mask, see LCBT.h for values
|
|
set board ID to latpAddr on CPU determined by CRU
|
Here is the call graph for this function:
|
Set boardID in Csr to SIU addr.
|
|
Write the watermark field in the CSR.
|
|
print stats for LCB driver
|
|
overall test, does complete regression test of LCB
The events test run can be looped back thru a loopback cable, a GASU, or another CPU (running echo server) connected to the GASU. |
Here is the call graph for this function:
|
overall test for EPU, does complete regression test of LCB minus cmdResp test
|
Here is the call graph for this function:
|
update the global error counts
|
|
Write given value to register.
|
|
Write given value to register.
|
|
Write given value to register.
|
|
Write given value to register.
|
|
write Fifo Fault register (requires a DMA)
|
|
Write given value to register.
|
|
write LATp CSR register (requires a DMA)
|
|
write to single register over the cmdResponse fabric
|
|
write Stats register (requires a DMA)
|