Kernel Functions for Drivers ddimemrepget8(9F)
NAME
ddimemrepget8, ddimemrepget16, ddimemrepget32,
ddimemrepget64, ddimemrepgetb, ddimemrepgetl,
ddimemrepgetll, ddimemrepgetw - read multiple data
from mapped device in the memory space or allocated DMA
memory
SYNOPSIS
#include
#include
void ddimemrepget8(ddiacchandlet handle,
uint8t *hostaddr, uint8t *devaddr, sizet repcount,
uintt flags);
void ddimemrepget16(ddiacchandlet handle,
uint16t *hostaddr, uint16t *devaddr, sizet repcount,
uintt flags);
void ddimemrepget32(ddiacchandlet handle,
uint32t *hostaddr, uint32t *devaddr, sizet repcount,
uintt flags);
void ddimemrepget64(ddiacchandlet handle,
uint64t *hostaddr, uint64t *devaddr, sizet repcount,
uintt flags);
INTERFACE LEVEL
Solaris DI specific (Solaris DI). The ddimemrepget8(),
ddimemrepget16(), ddimemrepget32(),
ddimemrepget64(), ddimemrepgetb(), ddimemrepgetl(),
ddimemrepgetll(), and ddimemrepgetw() functions are
obsolete. The ddirepget8(9F) function replaces
ddimemrepget8(). The ddirepget16(9F) function replaces
ddimemrepget16(). The ddirepget32(9F) function replaces
ddimemrepget32(). The ddirepget64(9F) function replaces
ddimemrepget64(). The ddirepget8(9F) function replaces
ddimemrepgetb(). The ddirepget32(9F) function replaces
ddimemrepgetl(). The ddirepget64(9F) function replaces
ddimemrepgetll(). The ddirepget16(9F) function replaces
ddimemrepgetw().
PARAMETERS
handle The data access handle returned from setup
calls, such as ddiregsmapsetup(9F).
SunOS 5.11 Last change: 1 Nov 2005 1
Kernel Functions for Drivers ddimemrepget8(9F)
hostaddr Base host address.
devaddr Base device address.
repcount Number of data accesses to perform.
flags Device address flags:
DIDEVAUTOINCR Automatically increment
the device address,
devaddr, during data
accesses.
DIDEVNOAUTOINCR Do not advance the dev-
ice address, devaddr,
during data accesses.
DESCRIPTION
These routines generate multiple reads from memory space or
allocated DMA memory. repcount data is copied from the dev-
ice address, devaddr, in memory space to the host address,
hostaddr. For each input datum, the ddimemrepget8(),
ddimemrepget16(), ddimemrepget32(), and
ddimemrepget64() functions read 8 bits, 16 bits, 32 bits
and 64 bits of data, respectively, from the device address,
devaddr. devaddr and hostaddr 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 characteristics.
When the flags argument is set to DIDEVAUTOINCR, these
functions will treat the device address, devaddr, as a
memory buffer location on the device and increments its
address on the next input datum. However, when the flags
argument is set to DIDEVNOAUTOINCR, the same device
address will be used for every datum access. For example,
this flag may be useful when reading from a data register.
CONTEXT
SunOS 5.11 Last change: 1 Nov 2005 2
Kernel Functions for Drivers ddimemrepget8(9F)
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 Obsolete
SEE ALSO
ddimemget8(9F), ddimemput8(9F), ddimemrepput8(9F),
ddiregsmapsetup(9F), ddirepget8(9F), ddirepget16(9F),
ddirepget32(9F), ddirepget64(9F),
ddideviceaccattr(9S)
SunOS 5.11 Last change: 1 Nov 2005 3
|