DST Driver
Application Program Interface
2-103
Important Note:
This driver will no longer be supported in the next
major release of DSP/BIOS. We recommend that you use the IOM
driver interface instead. See the
DSP/BIOS Driver Developer’s Guide
(SPRU616). This driver is still supported in DSP/BIOS 5.32 and will be
supported in any patch releases or minor enhancements to DSP/BIOS
5.32.
Description
This stacking driver can be used to input or output buffers that are larger
than the physical device can actually handle. For output, a single (large)
buffer is split into multiple smaller buffers which are then sent to the
underlying device. For input, multiple (small) input buffers are read from
the device and copied into a single (large) buffer.
Configuring a
DST Device
To create a DST device object in a configuration script, use the following
syntax:
var myDst = bios.UDEV.create("myDst");
Set the DEV Object Properties for the device you created as follows.
❏
init function
. Type 0 (zero).
❏
function table ptr
. Type _DST_FXNS
❏
function table type
. DEV_Fxns
❏
device id
. Type 0 (zero) or the number of small buffers
corresponding to a large buffer as described after this list.
❏
device params ptr
. Type 0 (zero).
If you enter 0 for the Device ID, you need to specify the number of small
buffers corresponding to a large buffer when you create the stream with
SIO_create, by appending it to the device name.
Example 1:
For example, if you create a user-defined device called split with Tconf,
and enter 0 as its Device ID property, you can open a stream with:
stream = SIO_create("/split4/codec", SIO_INPUT, 1024, NULL);
This causes SIO to open a stack of two devices: /split4 designates the
device called split, and 4 tells the driver to read four 256-word buffers
from the codec device and copy the data into 1024-word buffers for your
application. codec specifies the name of the physical device which
corresponds to the actual source for the data.
DST Driver
Stackable split driver