ddi_dma_segtocookie(9F)




NAME

     ddi_dma_segtocookie - convert a DMA segment to a DMA address
     cookie


SYNOPSIS

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

     int  ddi_dma_segtocookie(ddi_dma_seg_t  seg,  off_t   *offp,
     off_t *lenp, ddi_dma_cookie_t *cookiep);


INTERFACE LEVEL

     This interface is obsolete. ddi_dma_nextcookie(9F) should be
     used instead.


PARAMETERS

     seg   A DMA segment.

     offp  A pointer to an off_t. Upon a successful return, it is
           filled  in with the offset. This segment is addressing
           within the object.

     lenp  The byte length. This segment is addressing within the
           object.

     cookiep
           A pointer to a DMA cookie (see ddi_dma_cookie(9S)).


DESCRIPTION

     ddi_dma_segtocookie() takes a DMA segment and fills  in  the
     cookie  pointed  to by cookiep with the appropriate address,
     length, and bus type to be used to program the  DMA  engine.
     ddi_dma_segtocookie()  also  fills in *offp and *lenp, which
     specify the range within the object.


RETURN VALUES

     ddi_dma_segtocookie() returns:

     DDI_SUCCESS
           Successfully filled in all values.

     DDI_FAILURE
           Failed to successfully fill in all values.


CONTEXT

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


EXAMPLES

     Example 1: ddi_dma_segtocookie() example

     for (win = NULL; (retw = ddi_dma_nextwin(handle, win, &nwin)) !=
         DDI_DMA_DONE; win = nwin) {
          if (retw != DDI_SUCCESS) {
               /* do error handling */
          } else {
               for (seg = NULL; (rets = ddi_dma_nextseg(nwin, seg, &nseg)) !=
                   DDI_DMA_DONE; seg = nseg) {
                    if (rets != DDI_SUCCESS) {

                         /* do error handling */
                    } else {
                         ddi_dma_segtocookie(nseg, &off, &len, &cookie);

                         /* program DMA engine */
                    }
               }
          }
     }


ATTRIBUTES

     See attributes(5) for a description of the following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | Stability Level             | Obsolete                    |
    |_____________________________|_____________________________|


SEE ALSO

     attributes(5), ddi_dma_nextcookie(9F).  ddi_dma_nextseg(9F),
     ddi_dma_nextwin(9F), ddi_dma_sync(9F), ddi_dma_cookie(9S)

     Writing Device Drivers


Man(1) output converted with man2html