ddi_rep_putl man page on SunOS

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

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

NAME
       ddi_rep_put8,	  ddi_rep_put16,     ddi_rep_put32,	ddi_rep_put64,
       ddi_rep_putb, ddi_rep_putw, ddi_rep_putl, ddi_rep_putll - write data to
       the  mapped  memory  address,  device  register or allocated DMA memory
       address

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

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

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

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

       void   ddi_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, dur‐
			   ing data accesses.

DESCRIPTION
       These  routines generate multiple writes to the mapped memory or device
       register. repcount data is copied from the host address,	 host_addr, to
       the   device   address,	  dev_addr.   For   each   input   datum,  the
       ddi_rep_put8(), ddi_rep_put16(), ddi_rep_put32(),  and  ddi_rep_put64()
       functions  write 8 bits, 16 bits, 32 bits, and 64 bits of data, respec‐
       tively,	to the device address, dev_addr. dev_addr and  host_addr  must
       be aligned to the datum boundary described by the function.

       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
       treat the device address,  dev_addr, as a memory	 buffer	 location   on
       the device and increment its address on the next input datum.  However,
       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 to a data register.

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

SEE ALSO
       ddi_get8(9F),  ddi_put8(9F),  ddi_regs_map_free(9F),  ddi_regs_map_set‐
       up(9F), ddi_rep_get8(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	 following table for the new name equivalents:

       ┌──────────────────────────────┬────────────────────────────┐
       │       Previous Name	      │		New Name	   │
       │ddi_rep_putb		      │ddi_rep_put8		   │
       │ddi_rep_putw		      │ddi_rep_put16		   │
       │ddi_rep_putl		      │ddi_rep_put32		   │
       │ddi_rep_putll		      │ddi_rep_put64		   │
       └──────────────────────────────┴────────────────────────────┘

SunOS 5.10			  10 Sep 1996		      ddi_rep_put8(9F)
[top]

List of man pages available for SunOS

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