 |
Index for Section 9 |
|
 |
Alphabetical listing for D |
|
 |
Bottom of page |
|
dma_min_boundary(9r)
NAME
dma_min_boundary - General: Returns system-level information
SYNOPSIS
#include <io/common/devdriver.h>
int dma_min_boundary(
struct controller *ctlr_p );
ARGUMENTS
ctlr_p
Specifies a pointer to the controller structure associated with this
controller. The dma_min_boundary interface uses this pointer to obtain
the system and bus-specific information needed to return the mask or
integer value.
DESCRIPTION
The dma_min_boundary interface returns an integer value that provides the
information necessary for a device driver to determine the smallest DMA
transfer that can be done atomically on a CPU or bus. The value returned
by dma_min_boundary depends on the type of CPU or bus. For example, on a
DEC 3000 Model 500 AXP Workstation connected to a TURBOchannel bus, this
interface returns a value of 4. This indicates that a TURBOchannel DMA
operation is atomic at the longword level (not the byte or word level). On
a DEC 2000 Model 300 connected to an EISA bus, for example, this interface
returns a value of 1 to indicate byte atomicity. Subbyte atomicity is not
supported.
On a DEC 3000 Model 500 AXP Workstation connected to a TURBOchannel bus,
this return value of 4 informs a device driver about how to handle a DMA
transfer that involves a buffer that begins and/or ends within a
nonlongword aligned, nonintegral longword-sized (DMA) transfer. The device
driver handles this DMA transfer by redirecting the beginning and/or end of
the DMA transfer, respectively, to other buffers that must be merged to the
main (aligned longword block) buffer through calls to bcopy.
RETURN VALUES
The dma_min_boundary interface returns the value zero (0) to indicate that
the system initialization code did not set up this field. Otherwise,
dma_min_boundary returns the byte-size atomicity value that the system
supports for DMA operations for all controllers on the respective bus.
SEE ALSO
Data Structures: controller(9s)
 |
Index for Section 9 |
|
 |
Alphabetical listing for D |
|
 |
Top of page |
|