ddi_mem_rep_putll man page on Solaris

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

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

NAME
       ddi_mem_rep_put8,	 ddi_mem_rep_put16,	    ddi_mem_rep_put32,
       ddi_mem_rep_put64,	  ddi_mem_rep_putw,	     ddi_mem_rep_putl,
       ddi_mem_rep_putll,  ddi_mem_rep_putb  -	write  multiple data to mapped
       device in the memory space or allocated DMA memory

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

       void  ddi_mem_rep_put8(ddi_acc_handle_t	handle,	 uint8_t   *host_addr,
       uint8_t *dev_addr, size_t repcount, uint_t flags);

       void  ddi_mem_rep_put16(ddi_acc_handle_t	 handle,  uint16_t *host_addr,
       uint16_t *dev_addr, size_t repcount, uint_t flags);

       void ddi_mem_rep_put32(ddi_acc_handle_t	handle,	 uint32_t  *host_addr,
       uint32_t *dev_addr, size_t repcount, uint_t flags);

       void  ddi_mem_rep_put64(ddi_acc_handle_t	 handle,  uint64_t *host_addr,
       uint64_t *dev_addr, size_t repcount, uint_t flags);

INTERFACE LEVEL
       Solaris DDI specific (Solaris DDI).

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

       host_addr       Base host address.

       dev_addr	       Base device address.

       repcount	       Number of data accesses to perform.

       flags	       Device address flags:

		       DDI_DEV_AUTOINCR

			   Automatically   increment   the   device   address,
			   dev_addr, during data accesses.

		       DDI_DEV_NO_AUTOINCR

			   Do not advance the device address, dev_addr, during
			   data accesses.

DESCRIPTION
       These  routines	generate  multiple writes to memory space or allocated
       DMA memory. repcount data is copied from the host  address,  host_addr,
       to the device address, dev_addr, in memory space. For each input datum,
       the ddi_mem_rep_put8(), ddi_mem_rep_put16(),  ddi_mem_rep_put32(),  and
       ddi_mem_rep_put64()  functions  write  8	 bits, 16 bits, 32 bits and 64
       bits of	data,  respectively,  to  the  device  address.	 dev_addr  and
       host_addr  must be aligned to the datum boundary described by the func‐
       tion.

       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 char‐
       acteristics.

       When the flags argument is set  to  DDI_DEV_AUTOINCR,  these  functions
       will  treat  the	 device address, dev_addr, as a memory buffer location
       on the device and increments its address on the next input datum.  How‐
       ever,  when  the flags argument is set to DDI_DEV_NO_AUTOINCR, the same
       device address will be used for every datum access. For	example,  this
       flag may be useful when writing from a data register.

CONTEXT
       These functions can be called from user, kernel, or interrupt context.

SEE ALSO
       ddi_mem_get8(9F),	ddi_mem_put8(9F),	 ddi_mem_rep_get8(9F),
       ddi_regs_map_setup(9F), ddi_device_acc_attr(9S)

NOTES
       The functions described in this manual page  previously	used  symbolic
       names  which  specified their data access size; the function names have
       been changed so they now specify a fixed-width data size. See the  fol‐
       lowing table for the new name equivalents:

       ┌───────────────────────────────────────────────────────────┐
       │Previous Name		      New Name			   │
       │ddi_mem_rep_putb	      ddi_mem_rep_put8		   │
       │ddi_mem_rep_putw	      ddi_mem_rep_put16		   │
       │ddi_mem_rep_putl	      ddi_mem_rep_put32		   │
       │ddi_mem_rep_putll	      ddi_mem_rep_put64		   │
       └───────────────────────────────────────────────────────────┘

SunOS 5.10			  28 Oct 1996		  ddi_mem_rep_put8(9F)
[top]

List of man pages available for Solaris

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