MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Kernel Functions for Drivers                         ddiput8(9F)



NAME
     ddiput8,   ddiput16,   ddiput32,   ddiput64,   ddiputb,
     ddiputl,  ddiputll,  ddiputw  -  write data to the mapped
     memory address, device  register  or  allocated  DMA  memory
     address

SYNOPSIS
     #include 
     #include 



     void ddiput8(ddiacchandlet handle, uint8t *devaddr,
          uint8t value);


     void ddiput16(ddiacchandlet handle, uint16t *devaddr,
          uint16t value);


     void ddiput32(ddiacchandlet handle, uint32t *devaddr,
          uint32t value);


     void ddiput64(ddiacchandlet handle, uint64t *devaddr,
          uint64t value);


INTERFACE LEVEL
     Solaris  DI  specific  (Solaris   DI).   The   ddiputb(),
     ddiputl(),   ddiputll(),   and  ddiputw()  functions  are
     obsolete. The ddiput8() function replaces  ddiputb().  The
     ddiput32()  function  replaces  ddiputl(). The ddiput64()
     function  replaces  ddiputll().  The  ddiput16()  function
     replaces ddiputw().

PARAMETERS
     handle      The  data  access  handle  returned  from  setup
                 calls, such as ddiregsmapsetup(9F).


     value       The data to be written to the device.


     devaddr    Base device address.


DESCRIPTION
     These routines generate a write  of  various  sizes  to  the
     mapped   memory   or   device   register.   The  ddiput8(),
     ddiput16(), ddiput32(), and ddiput64() functions write  8
     bits, 16 bits, 32 bits and 64 bits of data, respectively, to



SunOS 5.11           Last change: 1 Nov 2005                    1






Kernel Functions for Drivers                         ddiput8(9F)



     the device address, devaddr.


     Each individual datum will automatically  be  translated  to
     maintain  a  consistent view between the host and the device
     based on the encoded information in the data access  handle.
     The  translation  may  involve byte-swapping if the host and
     the device have incompatible endian characteristics.


     For certain bus types, you can call these DI functions from
     a   high-interrupt context. These types include ISA and SBus
     buses.  See sysbus(4), isa(4), and sbus(4) for details.  For
     the  PCI  bus, you can, under certain conditions, call these
     DI functions from a high-interrupt context. See pci(4).

CONTEXT
     These functions can be called from user, kernel,  or  inter-
     rupt context.

ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE      
    
     Interface Stability          ddiputb(),     ddiputl(),
                                  ddiputll(), and ddiputw()
                                  are  Obsolete   ddiput8(),
                                  ddiput16(),   ddiput32(),
                                  ddiput64() are Committed  
   


SEE ALSO
     ddiget8(9F), ddiregsmapfree(9F), ddiregsmapsetup(9F),
     ddirepget8(9F), ddirepput8(9F), ddideviceaccattr(9S)















SunOS 5.11           Last change: 1 Nov 2005                    2



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™