Doxygen Documentation

Main Index

Package Index

Package:

DUTIL

Version:

V0-0-1

Marked:

(not marked)

Constituent:

start

Tag:

rad750


Interface   Compound List   File List   Compound Members   File Members  

start.c File Reference

Provides functions to power on and configure the LAT. More...

#include "DUTIL/start.h"
#include "LCB/LIOX_cmd.h"
#include "LCB/LIOX_sync.h"
#include "DAB/reg.h"
#include "DAB/scru.h"
#include "DAB/spdu.h"
#include "DAB/sgem.h"
#include "DAB/sebm.h"
#include "DEM/TEM_reg.h"
#include "DEM/TEM_CC_sync.h"
#include "DEM/AEM_reg.h"
#include "DEM/AEM_CC_sync.h"
#include <stdio.h>

Include dependency graph for start.c:

Include dependency graph

Functions

int powerOn (LIOXs slh, unsigned priMask, unsigned redMask)
 Configures the PDUs to power the required components of the LAT.

int configCRU (LIOXs slh, unsigned cptMask)
 Configures the CRU to allow LATp C/R with the specified components and sets the LATp addresses of those cpts.

int configEBM (LIOXs slh, unsigned cptMask)
 Configures the source and destination enables of the EBM.

unsigned getEPUaddr (LIOXs slh)
 Returns address to use in the event contributions.


Detailed Description

Provides functions to power on and configure the LAT.

Author:
James Swain -- jswain@slac.stanford.edu

Function Documentation

int configCRU LIOXs  slh,
unsigned  cptMask
 

Configures the CRU to allow LATp C/R with the specified components and sets the LATp addresses of those cpts.

int configCRU(LIOXs slh, unsigned cptMask)

Parameters:
slh Synchronous LIOX handle
cptMask Bit mask indicating which components should be configured
Returns:
0 on success, -1 on failure
1) Any component that is not specified in cptMask will be inaccessible following the execution of this function

2) Only the TEMs, DAB and PDUs are configured by this function.

3) cptMask is laid out in the manner of the CRU command and response enable bit masks (LAT-TD-01547, figs 12 & 13).

TEM0 = 0x00000001 TEM1 = 0x00000002 TEM2 = 0x00000004 : TEMe = 0x00004000 TEMf = 0x00008000 PDU0 = 0x00010000 PDU1 = 0x00020000 GEM = 0x00040000 AEM = 0x00080000 EBM = 0x00100000 SIU0 = 0x01000000 SIU1 = 0x02000000 SIUx = 0x04000000 EPU0 = 0x08000000 EPU1 = 0x10000000 EPU2 = 0x20000000

int configEBM LIOXs  slh,
unsigned  cptMask
 

Configures the source and destination enables of the EBM.

int configEBM(LIOXs slh, unsigned cptMask)

Parameters:
slh Synchronous LIOX handle
cptMask Bit mask indicating which components should be configured
Returns:
0 on success, -1 on failure
1) cptMask is the concatenation of registers 4-6 of the EBM controller block (LAT-TD-01546, the source enable registers) with an additional bit in the most- significant-byte representing the SSR

TEM0 = 0x00000001 TEM1 = 0x00000002 TEM2 = 0x00000004 : TEMe = 0x00004000 TEMf = 0x00008000 GEM = 0x00010000 AEM = 0x00020000 SIU0 = 0x00040000 SIU1 = 0x00080000 EPU0 = 0x00100000 EPU1 = 0x00200000 EPU2 = 0x00400000 EPUx = 0x00800000 SSR = 0x01000000

unsigned getEPUaddr LIOXs  slh  ) 
 

Returns address to use in the event contributions.

Parameters:
slh Synchronous LIOX handle
Returns:
Destination address to use when configuring the GEM
Once the round-robin functionality is available in the EBM, this will return 0. Until then it returns the address of the commander node.

int powerOn LIOXs  slh,
unsigned  priMask,
unsigned  redMask
 

Configures the PDUs to power the required components of the LAT.

int powerOn (LIOXs slh, unsigned priMask, unsigned redMask)

Parameters:
slh Synchronous LIOX handle
priMask Bit mask indicating which components should be powered on by the PRIMARY PDU
redMask Bit mask indicating which components should be powered on by the REDUNDANT PDU
Returns:
0 on success, -1 on error
1) Function assumes that the CRU is unconfigured so begins by configuring the CRU to access the requested PDUs and sets the LATp addresses of the aforementioned PDUs.

2) Function begins by verifying that the requested action would not result in simulataneously powering on a component from BOTH PDUs. The current state of the PDUs is considered, in addition to the contents of priMask and redMask.

3) Currently only the Primary EPU DC-DC converters are available.

4) Currently only the Primary ACD supply and converters are available.

5) priMask and redMask are laid out in the manner of the CRU command and response enable bit masks (LAT-TD-01547, figs 12 & 13).

TEM0 = 0x00000001 TEM1 = 0x00000002 TEM2 = 0x00000004 : TEMe = 0x00004000 TEMf = 0x00008000 PDU0 = 0x00010000 PDU1 = 0x00020000 GEM = 0x00040000 AEM = 0x00080000 EBM = 0x00100000 SIU0 = 0x01000000 SIU1 = 0x02000000 SIUx = 0x04000000 EPU0 = 0x08000000 EPU1 = 0x10000000 EPU2 = 0x20000000


Generated on Sat Feb 28 05:02:47 2004 by doxygen 1.3.3