ddi_dma_nextwin man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

ddi_dma_nextwin(9F)	 Kernel Functions for Drivers	   ddi_dma_nextwin(9F)

NAME
       ddi_dma_nextwin - get next DMA window

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

       int ddi_dma_nextwin(ddi_dma_handle_t handle, ddi_dma_win_t win,
	    ddi_dma_win_t *nwin);

INTERFACE LEVEL
       This interface is obsolete. ddi_dma_getwin(9F) should be used instead.

PARAMETERS
       handle	 A DMA handle.

       win	 The current DMA window or NULL.

       nwin	 A  pointer  to the next DMA window to be filled in. If win is
		 NULL, a pointer to the first  window  within  the  object  is
		 returned.

DESCRIPTION
       The ddi_dma_nextwin() function shifts the current DMA window win within
       the object referred to by handle to the next DMA window	nwin.  If  the
       current window is NULL, the first window within the object is returned.
       A DMA window is a portion of a  DMA  object  or	might  be  the	entire
       object.	A  DMA window has system resources allocated to it and is pre‐
       pared to accept data transfers. Examples of system resources  are  DVMA
       mapping resources and intermediate transfer buffer resources.

       All  DMA	 objects  require  a  window. If the DMA window represents the
       whole DMA object it has system resources allocated for the entire  data
       transfer.  However,  if	the  system  is unable to setup the entire DMA
       object due to system resource limitations, the driver writer may	 allow
       the  system  to	allocate system resources for less than the entire DMA
       object. This can be accomplished by specifying the DDI_DMA_PARTIAL flag
       as a parameter to ddi_dma_buf_setup(9F) or ddi_dma_addr_setup(9F) or as
       part of a ddi_dma_req(9S) structure in a call to ddi_dma_setup(9F).

       Only the window that has resources allocated is valid per object at any
       one  time. The currently valid window is the one that was most recently
       returned	 from  ddi_dma_nextwin().  Furthermore,	 because  a  call   to
       ddi_dma_nextwin()  will	reallocate system resources to the new window,
       the previous window will become invalid. It is a severe error  to  call
       ddi_dma_nextwin() before any transfers into the current window are com‐
       plete.

       The ddi_dma_nextwin() function takes care of underlying memory synchro‐
       nizations  required to shift the window. However, if you want to access
       the data before or after moving the  window,  further  synchronizations
       using ddi_dma_sync(9F) are required.

RETURN VALUES
       The ddi_dma_nextwin() function returns:

       DDI_SUCCESS	Successfully filled in the next window pointer.

       DDI_DMA_DONE	There  is  no  next  window. The current window is the
			final window within the specified object.

       DDI_DMA_STALE	win does not refer to the currently active window.

CONTEXT
       The ddi_dma_nextwin() function can be called from user,	interrupt,  or
       kernel context.

EXAMPLES
       For an example see ddi_dma_segtocookie(9F).

ATTRIBUTES
       See attributes(5) for a description of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Stability Level		     │Obsolete			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       attributes(5),	   ddi_dma_addr_setup(9F),	ddi_dma_buf_setup(9F),
       ddi_dma_getwin(9F),    ddi_dma_nextseg(9F),    ddi_dma_segtocookie(9F),
       ddi_dma_sync(9F), ddi_dma_req(9S)

       Writing Device Drivers

SunOS 5.11			  16 Jan 2006		   ddi_dma_nextwin(9F)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net