May 6, 2002
Overview
The following changes are introduced in this release:
Note: This release includes new FPGA configurations and embedded code. Run the dpflashup program after installation to update the FPGA configuration data on the DPT4 board(s).
int
dp_get_signal (
PCI_SIGNAL *signal,
dpt_signalbuf_t *sigBuf )
int
dp_write_signal (
PCI_SIGNAL *signal,
dpt_signalbuf_t *sigBuf )
The dp_write_signal function returns 0 when the data has been successfully sent to the channel or -1 in the case of an error. For example:
PCI_SIGNAL *signal
dpt_signal_buf_t sigbuf;
signal = dp_open_signal(0, 1, CHAN_READ, 0xf) ;
if (signal == NULL)
error();
sigbuf.data[0] = 1;
sigbuf.data[1] = 2;
sigbuf.data[2] = 3;
sigbuf.data[3] = 4;
if (dp_write_signal(signal) < 0)
error();
Added SDRAM DMA Upload Capability
DMA uploads are available for 8-bit and 32-bit words with the
following restrictions:
The following functions are added to the API library providing application
interface to the DMA capability:
Preliminary Version of Linux Device Driver
It does not yet provide capabilities for DMA transfers or channelization.
The Linux device driver is still under development and a complete
implementation will be available in the near future.
Currently the Linux device driver has been tested on Inel x86 platforms
running Red-Hat Linux with Kernel versions 2.4.7-10 and 2.4.9-31.
More information is provided in the Readme file in the linuxdev
directory of the distribution.
Support Files for smPCI Expansion Modules Included
in Distribution for Unix
To install the smPCI support files run the configure program
with the new --enable-smpci option.
For example:
Using that option will copy the smPCI support files from the distribution
directory to the proper directory of your target installation directory,
e.g. /usr/cac/smpci.
New and Modified Utility Programs
A warning has been added when the dpflashup program is run and
requires user confirmation to continue.
It also sets a flag in the EEROM to detect when a power cycle is required
after updating FPGA configuration data.
The dprun program has a new cold-reset option (-c)
and can be used on mulitple boards for a single run.
It may be used for all boards by using the keyword all for the
device parameter.
The dpinfo program now works when a specific expansion module
is named on the command line.
The dpclock program has a new -p option to specify an alternate
directory path instead of what is in the $CAC environment variable.
This is primarily for developement use.
DMA and array transfer test commands are added to the dpdebug program.
A new program called dpfind provides a quick listing of
DPT boards installed and available in the system.
New sample programs: dpsnd and dpreceive
in the "examples" directory of the distribution, provide
simple examples of working with DPT channelization.
Programs in the "bin" directory of the distribution,
dpsignaling and dpdmaxfer,
provide examples of using the new signaling channels
and the new DMA upload functions.
Bug Fixes and Changes in the API Library
Additions to the API library, device drivers and embedded code
provide the ability to upload data from the DPT4 via DMA.
DMA transfers have been used for channelization data.
This new functionality allows host applications to transfer data from the
SDRAM on DPT boards via DMA, providing greatly improved upload transfer rates.
int
pci_up_dma8b (
PCI_MOD *dpt,
uint32_t *addr,
uint32_t nbytes,
uint8_t *buf )
int
pci_up_dma32b (
PCI_MOD *dpt,
uint32_t *addr,
uint32_t nwords,
uint32_t *buf )
Both functions have the same arguments and return values as their
programmed I/O counterparts, pci_up_a8b and pci_up_a32b.
This makes the transition from using PIO uploads to DMA uploads simple,
providing the parameter restrictions are met.
A new test and example program is included in bin/dpdmaxfer.c.
This release includes a preliminary version of the DPT4 Linux device driver.
The current version provides functionality for:
The distribution archive for Unix platforms (Solaris and Linux)
now includes the support files for smPCI expansion modules.
These files include FPGA configuration files, executable DSP code for
diagnostic and demonstration programs that and source code for those programs.
(Currently the DPT only supports the DM5420 smPCI module.)
../dpt-1.2.4/configure --enable-smpci
The dpinit program is fixed to unlock EEROM accesses if they were left
in the locked state.
In addition to support for signaling channels and SDRAM DMA uploads,
the following changes are made in the API library.