demonstrates SYNC_ECM mode. More...
#include "local.h"
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
#include <sys/stat.h>
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
#include <popt.h>
#include "acq32ioctl.h"
#include "acq32busprot.h"
#include "llif.h"
#include "llprotocol.h"
#include "llcontrol.h"
#include "x86timer.h"
#include "llcontrol-core.h"
Go to the source code of this file.
Defines | |
#define | FLAVOR "ACQ196" |
#define | EACHBBB (dac_buf[icard].bbb) |
#define | EACHDAC_BASE (EACHBBB + LLCV2_AO_HSBS) |
#define | EACHDAC_BASE16 ((u16*)EACHDAC_BASE) |
#define | V2SETDACS(src, icard) memcpy(EACHDAC_BASE, (src), DAC_SAMPLE_SIZE) |
#define | OFFSET 0 |
Functions | |
void | appEnterLLC_SYNC_ECM (int icard, struct MU *mu, struct TestDescription *td) |
set up LLCV2_INIT buffer and enter mode. | |
int | runSYNC_ECM (struct TestDescription *td, int soft_clock) |
runs the test SYNC_ECM mode. |
demonstrates SYNC_ECM mode.
(archive)
Definition in file llcontrol-syncECM-core.c.
#define EACHBBB (dac_buf[icard].bbb) |
#define EACHDAC_BASE (EACHBBB + LLCV2_AO_HSBS) |
#define EACHDAC_BASE16 ((u16*)EACHDAC_BASE) |
#define FLAVOR "ACQ196" |
Definition at line 52 of file llcontrol-syncECM-core.c.
#define OFFSET 0 |
#define V2SETDACS | ( | src, | ||
icard | ||||
) | memcpy(EACHDAC_BASE, (src), DAC_SAMPLE_SIZE) |
void appEnterLLC_SYNC_ECM | ( | int | icard, | |
struct MU * | mu, | |||
struct TestDescription * | td | |||
) |
set up LLCV2_INIT buffer and enter mode.
Buffer set up as 4K block at offset 0
set up for single 4K buffer
uses V2 synchronization
Definition at line 56 of file llcontrol-syncECM-core.c.
References TestDescription::arg, TestDescription::clkpos, commandModifiers(), TestDescription::ARG::divisor, EACHBUF, enterLLC_SYNC_ECM(), getBusAddr(), getVaddr(), TestDescription::internal_loopback, llcv2_hb_offset, TestDescription::trpos, updateTstats, and waitDmaDone.
Referenced by runTest().
int runSYNC_ECM | ( | struct TestDescription * | td, | |
int | soft_clock | |||
) |
runs the test SYNC_ECM mode.
PSEUDO-CODE:
(b.2)
Definition at line 87 of file llcontrol-syncECM-core.c.
References DAC_COUNT, TestDescription::decimation, TestDescription::do_work, doApplicationWork(), EACHBBB, EACHBUF, EACHCARD, EACHDAC_BASE, EACHDAC_BASE16, EACHMBX, TestDescription::feedback, TestDescription::feedback_channel, FIRSTBUF, FIRSTMBX, FOREACHCARD, FOREACHCARD_MARK_TIME, G_quit, getBusAddr(), getMboxPollcount(), getVaddr(), TestDescription::hardware_gate_off, icard, TestDescription::iter, TestDescription::iterations, LLC_CSR_M_ARM, LLC_CSR_M_SOFTCLOCK, LLC_MAKE_DECIM, llCounterRunning(), LLCV2_AO_HSBS, LLCV2_OFFSET_STATUS_HSBT, llSetCmd(), llSetTlatch(), llv2InitDmaDone(), MARK_TIME, memset32(), TestDescription::min_latency_test, OFFSET, POLLALERT, PRINTF, TestDescription::stats_buf, TimingStats::target_poll, td_get_next_dac_data(), TimingStats::tlatch, TestDescription::tlog, TestDescription::update_dacs, updateTargetAddr(), updateTimingStats(), updateTstats, V2SETDACS, and waitDmaDone.
Referenced by runTest().