SVR5
dma_swstart(D3)
dma_swstart --
initiate a DMA operation via software request
Synopsis
#include <sys/types.h>
#include <sys/dma.h>
#include <sys/ddi.h>
void dma_swstart(struct dma_cb *dmacbptr, int chan, uchar_t mode);
Description
dma_swstart initiates a DMA operation previously
programmed by
dma_swsetup(D3)
on the ISA, EISA, or MCA
DMA channel.
Arguments
dmacbptr-
Pointer to a DMA command block
that specifies the DMA operation.
chan-
Channel over which the operation is to take place.
mode-
Specifies whether the caller should sleep waiting
for the operation to complete.
Return values
None.
Usage
If mode is set to DMA_NOSLEEP,
then dma_swstart
simply starts the operation but does not wait for the operation
to complete and instead returns to the caller immediately.
If mode is set to DMA_SLEEP,
then dma_swstart starts the operation
and then waits for the operation to complete,
and returns to the caller after the operation has finished.
The operation being initiated must have already been
programmed on the specified channel by dma_swsetup.
Context and synchronization
If mode is set to DMA_NOSLEEP,
non-blockable, initialization, or interrupt
context.
If mode is set to DMA_SLEEP,
user
context.
Hardware applicability
PC-AT compatible platforms
with ISA, EISA, or MCA buses
Version applicability
ddi:
1, 2, 3, 4, 5, 5mp, 6, 6mp, 7, 7mp, 7.1, 7.1mp, 8, 8mp
Future directions
This interface is expected to be replaced or modified in a future release.
References
dma_stop(D3),
dma_swsetup(D3),
dma_cb(D4)
``DMA'' in HDK Technical Reference
19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - June 2005