March 19, 2003
Overview
The following changes are introduced in this release:
Notes:
Problems were discovered in this release which were later corrected in Release verison 1.4.3.
Bug Fixed in the dpinit Program
The problem could occur on both Unix and Windows systems.
However part of the fix for Unix (Solaris and Linux) systems involves
a new feature in the device driver (described below).
New API Functions to Synchronize Receive Channels
The pci_disable_receive_start function configures the embedded code
to not start channelization as each receive channel is opened.
Applications that want to synchronize incoming data streams should call this
function prior to opening any receive channels.
The pci_start_receive function is used to enable channelization
on selected framers or connectors.
This function is used to start the channelization synchronously after
the application has opened its receive channels.
See the DPT4 Programmer Reference Manual (version 1.4.2 or higher)
for details.
New API Function for Configuring the Fast Clock Select Logic
The fast clock select logic detects the fastest receive clock from a
selectable group of DPT4 framers
and uses the fastest clock to derive the transmit clock for all four framers.
The DPT4 board must be configured with expansion hardware.
The fast clock select hardware works for both E1 and T1 modes and must be
used for T1 mode.
The fast clock select software method used by the embedded code only works
for E1 signals.
Applications using the TDM subsystem should still use the
pci_tdm_clock_cfg function to configure the fast clock selection
for the TDM subsystem.
See the DPT4 Programmer Reference Manual (version 1.4.2 or higher)
for details.
Modifications to the Unix Device Drivers
If the pci_run_chan function detects that the PCI_RUN
ioctl is not implemented in the installed device driver (version 1.4.1
or below) it will perform the stop and restart operations as before,
with the arbitrary delay.
The Linux device driver is modified to use the KERN_INFO flag for the message
announcing when the device driver in unloaded.
This message should now appear only in the messages log file and
not on the system console.
Modifications to the Windows Device Driver
Modifications to Diagnostic Programs
The dp54xdiag program is fixed to display a correct error message
if the pci_tdm_run function fails
(it used to say that pci_run failed).
A problem was discovered and fixed in the previous version of the
dpinit program.
The problem could cause the DPT4 board (and the system's PCI bus) to hang
under certain circumstances during the part of the program's operation.
Two new functions are added to the API library to provide the ability to
synchronize the starting of receive channels, minimizing the effects of
frame offsets between channels coming from different framers.
Applications that need to use channelization with T1 streams
that may be running a different rates and want all transmit channels
to be sent at the fastest incoming rate may use the new
pci_hw_fast_clk function.
This function is used to enable and configure the
fast receive clock detection logic in the DPT4 expansion hardware.
For both the Solaris and Linux device drivers, a new ioctl command, PCI_RUN,
is introduced for handling the stopping and starting of the embedded code.
By moving the stop and start operations from the API to the device driver,
the pci_run_chan library function no longer uses an arbitrary delay
to wait for the embedded code to start.
The device driver receives notification when the embedded code starts running
so the calling function is only blocked for as long as it actually takes
for the embedded code to start.
The Windows device driver already had implemented the PCI_RUN ioctl command.
However, it no longer writes a value back to the argument passed
to the PCI_RUN ioctl command.
The dpchantest program has a new -F option for testing the
the use of the pci_hw_fast_clk function.