ddi_iomin.9f revision c10c16dec587a0662068f6e2991c29ed3a9db943
te
Copyright (c) 2006, Sun Microsystems, Inc.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
ddi_iomin 9F "04 Apr 2006" "SunOS 5.11" "Kernel Functions for Drivers"
NAME
ddi_iomin - find minimum alignment and transfer size for DMA
SYNOPSIS

#include <sys/conf.h>
#include <sys/ddi.h>
#include <sys/sunddi.h>



int ddi_iomin(dev_info_t *dip, int initial, int streaming);
INTERFACE LEVEL

Solaris DDI specific (Solaris DDI). This interface is obsolete.

PARAMETERS

dip

A pointer to the device's dev_info structure.

initial

The initial minimum DMAtransfer size in bytes. This may be zero or an appropriate dlim_minxfer value for device's ddi_dma_lim structure (see ddi_dma_lim_sparc(9S) or ddi_dma_lim_x86(9S)). This value must be a power of two.

streaming

This argument, if non-zero, indicates that the returned value should be modified to account for streaming mode accesses (see ddi_dma_req(9S) for a discussion of streaming versus non-streaming access mode).

DESCRIPTION

The ddi_iomin() function, finds out the minimum DMAtransfer size for the device pointed to by dip. This provides a mechanism by which a driver can determine the effects of underlying caches as well as intervening bus adapters on the granularity of a DMA transfer.

RETURN VALUES

The ddi_iomin() function returns the minimum DMAtransfer size for the calling device, or it returns zero, which means that you cannot get there from here.

CONTEXT

This function can be called from user, interrupt, or kernel context.

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
Interface StabilityObsolete
SEE ALSO

ddi_dma_devalign(9F), ddi_dma_setup(9F), ddi_dma_sync(9F), ddi_dma_lim_sparc(9S), ddi_dma_lim_x86(9S), ddi_dma_req(9S)

Writing Device Drivers