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
|