ddi_dma_addr_setup(9F)




NAME

     ddi_dma_addr_setup - easier DMA setup for use  with  virtual
     addresses


SYNOPSIS

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

     int  ddi_dma_addr_setup(dev_info_t  *dip,  struct  as   *as,
     caddr_t  addr,  size_t  len,  uint_t  flags,  int  (*waitfp)
     (caddr_t),,    caddr_t    arg,    ddi_dma_lim_t    *    lim,
     ddi_dma_handle_t *handlep);


INTERFACE LEVEL

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


PARAMETERS

     dip   A pointer to the device's dev_info structure.

     as    A pointer to an address space structure. Should be set
           to NULL, which implies kernel address space.

     addr  Virtual address of the memory object.

     len   Length of the memory object in bytes.

     flags Flags that would go  into  the  ddi_dma_req  structure
           (see ddi_dma_req(9S)).

     waitfp
           The address of  a  function  to  call  back  later  if
           resources  aren't  available now. The special function
           addresses  DDI_DMA_SLEEP  and  DDI_DMA_DONTWAIT   (see
           ddi_dma_req(9S)) are taken to mean, respectively, wait
           until resources are available  or, do not wait at  all
           and do not schedule a callback.

     arg   Argument to be passed to a callback function, if  such
           a function is specified.

     lim   A pointer to a DMA limits structure  for  this  device
           (see ddi_dma_lim_sparc(9S) or ddi_dma_lim_x86(9S)). If
           this pointer is NULL, a default set of DMA  limits  is
           assumed.

     handlep
           Pointer to a DMA handle. See ddi_dma_setup(9F)  for  a
           discussion of handle.


DESCRIPTION


     ddi_dma_addr_setup() is an interface  to  ddi_dma_setup(9F).
     It   uses   its   arguments   to  construct  an  appropriate
     ddi_dma_req structure and calls ddi_dma_setup(9F) with it.


RETURN VALUES

     See ddi_dma_setup(9F) for the  possible  return  values  for
     this function.


CONTEXT

     ddi_dma_addr_setup() can be called from  user  or  interrupt
     context,  except  when  waitfp  is  set to DDI_DMA_SLEEP, in
     which case it can be called from user context only.


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_buf_setup(9F),    ddi_dma_free(9F),
     ddi_dma_htoc(9F),    ddi_dma_setup(9F),    ddi_dma_sync(9F),
     ddi_iopb_alloc(9F),                   ddi_dma_lim_sparc(9S),
     ddi_dma_lim_x86(9S), ddi_dma_req(9S)

     Writing Device Drivers


Man(1) output converted with man2html