diff options
Diffstat (limited to 'usr/src/man/man9f/ddi_dma_setup.9f')
| -rw-r--r-- | usr/src/man/man9f/ddi_dma_setup.9f | 182 |
1 files changed, 0 insertions, 182 deletions
diff --git a/usr/src/man/man9f/ddi_dma_setup.9f b/usr/src/man/man9f/ddi_dma_setup.9f deleted file mode 100644 index fd245658ad..0000000000 --- a/usr/src/man/man9f/ddi_dma_setup.9f +++ /dev/null @@ -1,182 +0,0 @@ -'\" 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] -.TH DDI_DMA_SETUP 9F "Jan 16, 2006" -.SH NAME -ddi_dma_setup \- setup DMA resources -.SH SYNOPSIS -.LP -.nf -#include <sys/ddi.h> -#include <sys/sunddi.h> - - - -\fBint\fR \fBddi_dma_setup\fR(\fBdev_info_t *\fR\fIdip\fR, \fBddi_dma_req_t *\fR\fIdmareqp\fR, - \fBddi_dma_handle_t *\fR\fIhandlep\fR); -.fi - -.SH INTERFACE LEVEL -.sp -.LP -This interface is obsolete. The functions \fBddi_dma_addr_bind_handle\fR(9F), -\fBddi_dma_alloc_handle\fR(9F), \fBddi_dma_buf_bind_handle\fR(9F), -\fBddi_dma_free_handle\fR(9F), and \fBddi_dma_unbind_handle\fR(9F) should be -used instead. -.SH PARAMETERS -.sp -.ne 2 -.na -\fB\fIdip\fR\fR -.ad -.RS 11n -A pointer to the device's \fBdev_info\fR structure. -.RE - -.sp -.ne 2 -.na -\fB\fIdmareqp\fR\fR -.ad -.RS 11n -A pointer to a \fBDMA\fR request structure (see \fBddi_dma_req\fR(9S)). -.RE - -.sp -.ne 2 -.na -\fB\fIhandlep\fR\fR -.ad -.RS 11n -A pointer to a \fBDMA\fR handle to be filled in. See below for a discussion of -a handle. If \fIhandlep\fR is \fINULL\fR, the call to \fBddi_dma_setup()\fR is -considered an advisory call, in which case no resources are allocated, but a -value indicating the legality and the feasibility of the request is returned. -.RE - -.SH DESCRIPTION -.sp -.LP -The \fBddi_dma_setup()\fR function allocates resources for a memory object such -that a device can perform \fBDMA\fR to or from that object. -.sp -.LP -A call to \fBddi_dma_setup()\fR informs the system that device referred to by -\fIdip\fR wishes to perform \fBDMA\fR to or from a memory object. The memory -object, the device's \fBDMA\fR capabilities, the device driver's policy on -whether to wait for resources, are all specified in the \fBddi_dma_req\fR -structure pointed to by \fIdmareqp\fR. -.sp -.LP -A successful call to \fBddi_dma_setup()\fR fills in the value pointed to by -\fIhandlep\fR. This is an opaque object called a \fBDMA\fR handle. This handle -is then used in subsequent \fBDMA\fR calls, until \fBddi_dma_free\fR(9F) is -called. -.sp -.LP -Again a \fBDMA\fR handle is opaque\(emdrivers may \fBnot\fR attempt to -interpret its value. When a driver wants to enable its \fBDMA\fR engine, it -must retrieve the appropriate address to supply to its \fBDMA\fR engine using a -call to \fBddi_dma_htoc\fR(9F), which takes a pointer to a \fBDMA\fR handle -and returns the appropriate \fBDMA\fR address. -.sp -.LP -When \fBDMA\fR transfer completes, the driver should free up the allocated -\fBDMA\fR resources by calling \fBddi_dma_free()\fR -.SH RETURN VALUES -.sp -.LP -The \fBddi_dma_setup()\fR function returns: -.sp -.ne 2 -.na -\fB\fBDDI_DMA_MAPPED\fR\fR -.ad -.RS 23n -Successfully allocated resources for the object. In the case of an -\fBadvisory\fR call, this indicates that the request is legal. -.RE - -.sp -.ne 2 -.na -\fB\fBDDI_DMA_PARTIAL_MAP\fR\fR -.ad -.RS 23n -Successfully allocated resources for a \fBpart\fR of the object. This is -acceptable when partial transfers are allowed using a flag setting in the -\fBddi_dma_req\fR structure (see \fBddi_dma_req\fR(9S) and -\fBddi_dma_movwin\fR(9F)). -.RE - -.sp -.ne 2 -.na -\fB\fBDDI_DMA_NORESOURCES\fR\fR -.ad -.RS 23n -When no resources are available. -.RE - -.sp -.ne 2 -.na -\fB\fBDDI_DMA_NOMAPPING\fR\fR -.ad -.RS 23n -The object cannot be reached by the device requesting the resources. -.RE - -.sp -.ne 2 -.na -\fB\fBDDI_DMA_TOOBIG\fR\fR -.ad -.RS 23n -The object is too big and exceeds the available resources. The maximum size -varies depending on machine and configuration. -.RE - -.SH CONTEXT -.sp -.LP -The \fBddi_dma_setup()\fR function can be called from user, interrupt, or -kernel context, except when the \fBdmar_fp\fR member of the \fBddi_dma_req\fR -structure pointed to by \fIdmareqp\fR is set to \fBDDI_DMA_SLEEP\fR, in which -case it cannot be called from interrupt context. -.SH ATTRIBUTES -.sp -.LP -See \fBattributes\fR(5) for a description of the following attributes: -.sp - -.sp -.TS -box; -c | c -l | l . -ATTRIBUTE TYPE ATTRIBUTE VALUE -_ -Stability Level Obsolete -.TE - -.SH SEE ALSO -.sp -.LP -\fBattributes\fR(5), \fBddi_dma_addr_bind_handle\fR(9F), -\fBddi_dma_alloc_handle\fR(9F), \fBddi_dma_buf_bind_handle\fR(9F), -\fBddi_dma_free_handle\fR(9F), -\fBddi_dma_unbind_handle\fR(9F)\fBddi_dma_addr_setup\fR(9F), -\fBddi_dma_buf_setup\fR(9F), \fBddi_dma_free\fR(9F), \fBddi_dma_htoc\fR(9F), -\fBddi_dma_movwin\fR(9F), \fBddi_dma_sync\fR(9F), \fBddi_dma_req\fR(9S) -.sp -.LP -\fIWriting Device Drivers\fR -.SH NOTES -.sp -.LP -The construction of the \fBddi_dma_req\fR structure is complicated. Use of the -provided interface functions such as \fBddi_dma_buf_setup\fR(9F) simplifies -this task. |
