Device Manager Design
channel number the device has been assigned for inbound and/or
outbound data. The DMA manager is then accessed to open the
appropriate channels with the appropriate modes, such as circular
or chained descriptors. If the device is opened with the
MODE_CHAINED_LOOPBACK
configured. Note that the
updated with the appropriate information as to which controllers
and channels are opened or closed, what the operating modes are,
and so on.
•
ADI_DEV_CMD_SET_DATAFLOW
disable dataflow on a device. The logic involved to enable or dis-
able dataflow is fairly complex and isolated in a static function
called
SetDataflow
information on this function).
•
ADI_DEV_CMD_SET_STREAMING
disable the streaming mode of the device driver. (To fully under-
stand what the streaming mode operation entails, users should be
familiar with the streaming capability of the DMA manager system
service, as described in
peripheral DMA support is not required of a device that supports
streaming, devices that are supported by peripheral DMA automat-
ically leverage the streaming capabilities of the DMA manager.)
When streaming mode is enabled, the device is configured to treat
data coming into and/or out of the device as a continuous stream
of data. Typically, this allows the device driver to transmit and
receive data through the device at maximum speed.
In order to use the streaming mode of the device manager, the
application must ensure that the following conditions are met:
• The device always has buffers to process and never runs out
of buffers. This means the application guarantees devices
that are opened for inbound or bidirectional dataflow
10-40
dataflow method, the DMA manager is so
ADI_DEV_DEVICE
– This command is issued to enable or
(see
"SetDataflow" on page 10-44
- This command is issued to enable or
"DMA Manager" on page
VisualDSP++ 5.0 Device Drivers and System
Services Manual for Blackfin Processors
ADI_DEV_
structure is kept
for more
6-1. Though
Need help?
Do you have a question about the VisualDSP++ 5.0 and is the answer not in the manual?