LLC2_API
Defines | Functions | Variables
llcontrol-core.h File Reference

llcontrol-core shared definitions. More...

Go to the source code of this file.

Defines

#define HOST_TIMING   1
#define IGNORE_COUNTER_STOP   0
#define POLLALERT(ipoll, message)   if ( (++ipoll&0xfffff) == 0 ) fprintf( stderr, message )
#define INIT_TIMER   get_elapsed_microseconds(1)
#define MARK_TIME(t, ident)
#define FOREACHCARD_MARK_TIME(t, ident)   FOREACHCARD{ MARK_TIME(t, ident); }
#define TIMER_CHECK_OVERFLOW   if (get_elapsed_microseconds(0) > 99000) INIT_TIMER

Functions

void appEnterLLC_SYNC_2VAO32 (int icard, struct MU *mu, struct TestDescription *td)
 set up LLCV2_INIT buffer and enter mode.
void initV2 (struct TestDescription *td)
u32 commandModifiers (struct TestDescription *td)
static void updateTargetAddr (u32 cmd, struct Card *card, unsigned offset)
static void * td_get_next_dac_data (struct TestDescription *td)
void doApplicationWork (struct TestDescription *td, u32 offset)
void v2_updateTstats (u32 cmd, struct Card *card, struct TimingStats *tstats)
 updates timing stats from embedded host buffer data
u32 card_v2_WaitDmaDone (struct Card *card)
 updates timing stats from embedded host buffer data
void doPostShotAnalysis (struct TestDescription *td)
void updateTimingStats (struct TimingStats *buffer, int iter, struct TimingStats *tstats)

Variables

void(* updateTstats )(u32 cmd, struct Card *card, struct TimingStats *tstats)
 defaults to V1 mbox.
u32(* waitDmaDone )(struct Card *c)
 virtual function to block until DMA done.

Detailed Description

llcontrol-core shared definitions.

Definition in file llcontrol-core.h.


Define Documentation

#define FOREACHCARD_MARK_TIME (   t,
  ident 
)    FOREACHCARD{ MARK_TIME(t, ident); }

Definition at line 59 of file llcontrol-core.h.

#define HOST_TIMING   1

Definition at line 38 of file llcontrol-core.h.

#define IGNORE_COUNTER_STOP   0

Definition at line 39 of file llcontrol-core.h.

#define INIT_TIMER   get_elapsed_microseconds(1)

Definition at line 55 of file llcontrol-core.h.

Referenced by measureBridge(), and measureBridgeStats().

#define MARK_TIME (   t,
  ident 
)
Value:
do { \
        tstats[icard].test_points[t] = get_elapsed_microseconds(0);\
        } while(0)

Definition at line 56 of file llcontrol-core.h.

#define POLLALERT (   ipoll,
  message 
)    if ( (++ipoll&0xfffff) == 0 ) fprintf( stderr, message )

Definition at line 41 of file llcontrol-core.h.

#define TIMER_CHECK_OVERFLOW   if (get_elapsed_microseconds(0) > 99000) INIT_TIMER

Definition at line 60 of file llcontrol-core.h.


Function Documentation

void appEnterLLC_SYNC_2VAO32 ( int  icard,
struct MU mu,
struct TestDescription td 
)
u32 card_v2_WaitDmaDone ( struct Card card)

updates timing stats from embedded host buffer data

Definition at line 129 of file llcontrol-core.cpp.

References Card::buf, getVaddr(), LLCV2_OFFSET_STATUS_HSBT, llv2WaitDmaDone(), and Card::mbx.

u32 commandModifiers ( struct TestDescription td)
void doApplicationWork ( struct TestDescription td,
u32  offset 
)
void doPostShotAnalysis ( struct TestDescription td)
void initV2 ( struct TestDescription td)
static void* td_get_next_dac_data ( struct TestDescription td) [inline, static]
static void updateTargetAddr ( u32  cmd,
struct Card card,
unsigned  offset 
) [inline, static]

Definition at line 90 of file llcontrol-core.h.

References Card::buf, getBusAddr(), llSetAddr(), Card::mbx, PRINTF, and Card::slot.

Referenced by LL_ControlSystemI::Arm().

void updateTimingStats ( struct TimingStats buffer,
int  iter,
struct TimingStats tstats 
)

Definition at line 668 of file llcontrol-core.cpp.

void v2_updateTstats ( u32  cmd,
struct Card card,
struct TimingStats tstats 
)

Variable Documentation

void(* updateTstats)(u32 cmd, struct Card *card, struct TimingStats *tstats)

defaults to V1 mbox.

Definition at line 125 of file llcontrol-core.cpp.

Referenced by appEnterLLC_SYNC_2VAO32(), and LL_ControlSystemI::IO().

u32(* waitDmaDone)(struct Card *c)

virtual function to block until DMA done.

defaults to V1 mbox

Definition at line 137 of file llcontrol-core.cpp.

Referenced by appEnterLLC_SYNC_2VAO32(), and LL_ControlSystemI::IO().