Hallo, dies ist ein Test.
PWD: /www/data-lst1/unixsoft/unixsoft/kaempfer/.public_html
Running in File Mode
Relative path: ./../../../../../data-stud/../../usr/man/man9f/ddi_dma_nextseg.9f
Real path: /usr/share/man/man9f/ddi_dma_nextseg.9f
Zurück
'\" te .\" Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved. .TH ddi_dma_nextseg 9F "04 Apr 2006" "Oracle Solaris 11.4" "Kernel Functions" .SH NAME ddi_dma_nextseg \- get next DMA segment .SH SYNOPSIS .LP .nf #include <sys/ddi.h> #include <sys/sunddi.h> \fBint\fR \fBddi_dma_nextseg\fR(\fBddi_dma_win_t\fR \fIwin\fR, \fBddi_dma_seg_t\fR \fIseg\fR, \fBddi_dma_seg_t *\fR\fInseg\fR); .fi .SH INTERFACE LEVEL .sp .LP This interface is obsolete. \fBddi_dma_nextcookie\fR(9F) should be used instead. .SH PARAMETERS .sp .ne 2 .mk .na \fB\fIwin\fR\fR .ad .RS 8n .rt A \fBDMA\fR window. .RE .sp .ne 2 .mk .na \fB\fIseg\fR\fR .ad .RS 8n .rt The current \fBDMA\fR segment or \fINULL\fR. .RE .sp .ne 2 .mk .na \fB\fInseg\fR\fR .ad .RS 8n .rt A pointer to the next \fBDMA\fR segment to be filled in. If \fIseg\fR is \fINULL\fR, a pointer to the first segment within the specified window is returned. .RE .SH DESCRIPTION .sp .LP The \fBddi_dma_nextseg()\fR function gets the next \fBDMA\fR segment within the specified window \fIwin\fR. If the current segment is \fINULL\fR, the first \fBDMA\fR segment within the window is returned. .sp .LP A \fBDMA\fR segment is always required for a \fBDMA\fR window. A \fBDMA\fR segment is a contiguous portion of a \fBDMA\fR window (see \fBddi_dma_nextwin\fR(9F)) which is entirely addressable by the device for a data transfer operation. .sp .LP An example where multiple \fBDMA\fR segments are allocated is where the system does not contain \fBDVMA\fR capabilities and the object may be non-contiguous. In this example the object will be broken into smaller contiguous \fBDMA\fR segments. Another example is where the device has an upper limit on its transfer size (for example an 8-bit address register) and has expressed this in the \fBDMA\fR limit structure (see \fBddi_dma_lim_sparc\fR(9S) or \fBddi_dma_lim_x86\fR(9S)). In this example the object will be broken into smaller addressable \fBDMA\fR segments. .SH RETURN VALUES .sp .LP The \fBddi_dma_nextseg()\fR function returns: .sp .ne 2 .mk .na \fB\fBDDI_SUCCESS\fR\fR .ad .RS 17n .rt Successfully filled in the next segment pointer. .RE .sp .ne 2 .mk .na \fB\fBDDI_DMA_DONE\fR\fR .ad .RS 17n .rt There is no next segment. The current segment is the final segment within the specified window. .RE .sp .ne 2 .mk .na \fB\fBDDI_DMA_STALE\fR\fR .ad .RS 17n .rt \fIwin\fR does not refer to the currently active window. .RE .SH CONTEXT .sp .LP The \fBddi_dma_nextseg()\fR function can be called from user, interrupt, or kernel context. .SH EXAMPLES .sp .LP For an example, see \fBddi_dma_segtocookie\fR(9F). .SH ATTRIBUTES .sp .LP See \fBattributes\fR(7) for a description of the following attributes: .sp .TS tab( ) box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . ATTRIBUTE TYPE ATTRIBUTE VALUE _ Interface Stability Obsolete .TE .sp .SH SEE ALSO .sp .LP \fBattributes\fR(7), \fBddi_dma_addr_setup\fR(9F), \fBddi_dma_buf_setup\fR(9F), \fBddi_dma_nextcookie\fR(9F), \fBddi_dma_nextwin\fR(9F), \fBddi_dma_segtocookie\fR(9F), \fBddi_dma_sync\fR(9F), \fBddi_dma_lim_sparc\fR(9S), \fBddi_dma_lim_x86\fR(9S), \fBddi_dma_req\fR(9S) .sp .LP \fIWriting Device Drivers in Oracle Solaris 11.4\fR