March 16, 1998
Overview
Note:
This release includes new flash files for FPGA configurations and
the configuration microcontroller.
Please be sure to run pciflashup after installing the software.
Additional Utilities ported to VxWorks
The utilities for adjusting the clock frequencies on the V6M6 baseboard
and some modules have been ported to VxWorks.
These utilities are:
pcifreq
Sets the frequencies of the PCI bus clock
and the TDM subsystem base rate clock.
pmfreq
Sets the local bus and processor clock frequency on PM4700A and PM5000
MIPS modules.
dmfreq
Sets the local bus and processor clock frequency on DM2C31 and DM4C51
DSP modules.
These programs are compiled into a new VxWorks
object file named pciutil.o.
It may be loaded separately or with the entire V6M6 software library
which is named pciall.o.
Problems fixed running under VxWorks
The pciinit and pciflashup program were using the same
name for a global array.
The conflict was causing pciflashup to crash when processing
the fourth board in a list if it was run after pciinit was run.
This conflict, as well as some possible conflicts in other programs,
were removed by making sure all global variables used in programs are
declared to be static.
VxWorks sometimes sets the global variable, errno, to a value with
additional high-order bits turned on.
The upper parts of the value are now masked out in the V6M6 implementation
of the perror function when it uses the value to index the
array of error strings.
Modifications to various V6M6 Programs and Utilities
Modifications were made to the following V6M6 support programs and utilities:
pciinit
The software delay after a hardware reset has been decreased when boards
are set into low-power mode.
pciinfo
Module types are determined from data in the modules' EEROMs.
This allows some information to be displayed in cases where
pciinit has not been run prior to using pciinfo.
A rudimentary screen-pager has been added to avoid information
scrolling off the screen.
It is invoked only if the -p option is used.
pmfreq and dmfreq
These utilities for adjusting the clock frequencies on PM4700A, PM5000,
DM2C31 and DM4C51 modules now obtain module type information for the
EEROM on the modules.
This allows these utilities to be used without pciinit having been
run first.
New FPGA Configuration Files
The following FPGA configurations have been modified.
The pciflashup program must be run to update the configuration data
stored in the flash memory of each V6M6 base board.
DM4C51 Modules
New version 27 of the FPGA configuration for DM4C51 modules
removes the extra delay between the TDM frame boundary and updating
the TDM buffer pointer.
The extra delay was inadvertently added when
the fixes for SC4000 routing data corruption were implemented
in version 22 of the DM4C51 configuration.
The delay was not noticeable when C language interrupt handlers were used.
However, optimized interrupt entry code written in assembler language
might read the buffer pointer before it was updated by the hardware.
PM4700A and PM5000 Modules
Version 6 of the PM4700A and PM5000 modules fixes a problem with
handling LDR and LDL instructions for non-aligned accesses to
local or PCI bus memory.
VME-PCI Interface (V6M6 Rev 2)
Version b111 of the FPGA configuration for the VME-PCI interface logic
on revision 2 V6M6 baseboards fixes marginal timing when
the PCI bus clock frequency is set higher than 20 MHz.
New Microcontroller Program Code
Version 25 of the V6M6 configuration controller program adds
a delay of approximately 100 milliseconds after a hard-reset
operation to allow extra time for the clock synthesizer
to settle when coming out of low-power mode.
Board with previous versions of the program could possible get hung
coming out of low-power mode.