February 19, 1998
Overview
Version 1.6.1 of the V6M6 host software and FPGA configurations includes the following changes:
Host-driven VME DMA Datat Transfers under VxWorks
The additional code to support DMA transfers for VxWorks utilize the
sysVmeDma functions that are in the Power Core 604 BSP.
Modifications to the SunOS & Solaris Device Drivers
In some cases a process may require notification that board is being
initialized in order to perform some cleanup operations.
For this purpose, a new ioctl request has been added to change the
signal to be sent.
The ioctl request is PCI_PURGESIG and its argument is a pointer
to an integer containing the value of the new signal to be sent.
For example:
Another modification made to the device drivers is that the interrupt handling
routine now only checks for interrupt status from the six module locations
from which interrupts are possible.
This results in a modest, perhaps insignificant, performance improvement.
New Function for Reading DM4C51 Interrupt Status
Any active status bits are cleared on the module by the action of reading
the status.
New Default E1 Line Build Out in TDM Configurator
The V6M6 library functions for host-driven VME DMA data transfers
have been updated to include support for VxWorks running on
Force PowerCore 604 CPU boards.
The library functions in the V6M6 library are pci_hostdma_setup,
pci_hostdma_release, pci_dl_hostdma, and pci_up_hostdma.
These are described in detail in a
previous release note.
The V6M6 device driver, by default, sends a SIGKILL signal to all
processes that have a module or other resource open on a board that
is being initialized by the
#include
Note that the application program is responsible for closing the
resource and must not perform any other operations on the
resource such as data transfer or ioctl requests.
Also note that the device driver will send SIGKILL to the application
for other resources it has open so the application must set the
purge signal (using PCI_PURGESIG) for all resources it opens on a given V6M6.
A new function has been added to the V6M6 host library for reading
interrupt status from DM4C51 modules.
Previously, interrupt status could be read for a single DSP on a DM4C51
module using the dm4c51_hostistat function.
The new function, dm4c51_hostistatall will read the interrupt status
for all four DSPs on the module.
int
dm4c51_hostistatall(pci)
PCI_MOD *pci - pointer to PCI_MOD structure for DM4C51 module.
The function returns an integer
with bit-mapped interrupt status as follows:
bit 0 - set if DSP 0's interrupt A is active
bit 1 - set if DSP 0's interrupt B is active
bit 8 - set if DSP 1's interrupt A is active
bit 9 - set if DSP 1's interrupt B is active
bit 16 - set if DSP 2's interrupt A is active
bit 17 - set if DSP 2's interrupt B is active
bit 24 - set if DSP 3's interrupt A is active
bit 25 - set if DSP 3's interrupt B is active
-1 - error indicated
A value of -1 is returned in case of an error such as an invalid
PCI_MOD pointer or an error occurred accessing the module.
The default E1 line build out parameter used in the
TDM configurator has been changed.
The new value correctly matches the hardware configuration
used on the IM2E1 module; 120 ohm, normal with protection resistors.