GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> LCBT / V1-6-2 > lcbt / rad750


Interface   Data Structures   File List   Data Fields   Globals  

LCBT.c File Reference

Basic init and misc public funcs for LCBT module. More...

#include <PBS/PBS.h>
#include <PBS/MBA.h>
#include <PBS/CACHE.h>
#include <MSG/MSG_pubdefs.h>
#include <LCBT/LCBT_initBoard.h>
#include <LCBT/LCBT.h>
#include <LCBT_printf.h>
#include <trace.h>

Functions

int LCBT_init (int latpAddr, int useRedundantPath, LCBD lcb)
 inits LCB driver (which starts 2 tasks associated with driver)
int LCBT_isInit ()
 indicates if LCBT_init has been run ok
void LCBT_setOption (unsigned int mask)
 set test option mask, see LCBT.h for values
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


Detailed Description

Basic init and misc public funcs for LCBT module.

Author:
Ed Bacho -- ebacho@slac.stanford.edu

Function Documentation

void LCBT_clearStats (  ) 

clear stats for LCB driver

Returns:
none

int LCBT_init ( int  latpAddr,
int  useRedundantPath,
LCBD  lcb 
)

inits LCB driver (which starts 2 tasks associated with driver)

Parameters:
latpAddr LATp addr to assign to this board
useRedundantPath 0=primary path, 1=redundant path
lcb lcbd driver handle is driver if already init (use LCBD_get()), if 0 will load driver
Returns:
0=sucess else indicates errors in init This routine inits the LCBT module and optionaly load the LCBD driver. It must be called once after boot to setup the LCBT module for tests.

References LCBT_eventInit(), LCBT_initBoard(), and LCBT_printInit().

int LCBT_isInit (  ) 

indicates if LCBT_init has been run ok

Returns:
0=not init, 1=been init

void LCBT_resetTest ( int  numReqPer  ) 

special test for reset fix on FpgaLat=0x5d

Parameters:
numReqPer num of read for each of 4 part test
Returns:
nothing This test was developed to reproduce a problem seen with LatFpga < 0x5d on the cPci LCB board. The problem was that the discrete fifo's failed to be reset properly if there was no 20 MHz clock from the GASU (i.e. GASU was not yet powered up).
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.

References LCBT_readResultQ(), LCBT_writeCsr(), LCBT_writeIrq(), and PRINTF.

void LCBT_setOption ( unsigned int  mask  ) 

set test option mask, see LCBT.h for values

Parameters:
mask mask of tests options
Returns:
none

void LCBT_stats ( int  mask  ) 

print stats for LCB driver

Parameters:
mask 0=all,1=ISR,2=rst,4=evt,8=time
Returns:
none


Generated on Fri Mar 25 12:53:42 2011 by  doxygen 1.5.8