man Pages(9F): DDI and DKI Kernel Functions
  Search only this book
Download this book in PDF

NAME

ddi_dma_coff - convert a DMA cookie to an offset within a DMA handle

SYNOPSIS

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

int ddi_dma_coff(ddi_dma_handle_t handle, ddi_dma_cookie_t * cookiep, off_t * offp)

ARGUMENTS

handle
The handle filled in by a call to ddi_dma_setup(9F).
cookiep
A pointer to a DMA cookie (see ddi_dma_cookie(9S)) that contains the appropriate address, length and bus type to be used in programming the DMA engine.
offp
A pointer to an offset to be filled in.

INTERFACE LEVEL

Solaris SPARC DDI (Solaris SPARC DDI).

DESCRIPTION

ddi_dma_coff( ) converts the values in DMA cookie pointed to by cookiep to an offset (in bytes) from the beginning of the object that the DMA handle has mapped.
ddi_dma_coff( ) allows a driver to update a DMA cookie with values it reads from its device's DMA engine after a transfer completes and convert that value into an offset into the object that is mapped for DMA.

RETURN VALUES

ddi_dma_coff( ) returns:
DDI_SUCCESS
Successfully filled in offp.
DDI_FAILURE
Failed to successfully fill in offp.

CONTEXT

ddi_dma_coff( ) can be called from user or interrupt context.

SEE ALSO

ddi_dma_setup(9F), ddi_dma_sync(9F), ddi_dma_cookie(9S)
Writing Device Drivers