DDI_DEVICE_ZERO(9F) Kernel Functions for Drivers DDI_DEVICE_ZERO(9F)
NAME
ddi_device_zero - zero fill the device
SYNOPSIS
#include <sys/ddi.h>
#include <sys/sunddi.h>
int ddi_device_zero(
ddi_acc_handle_t handle,
caddr_t dev_addr,
size_t bytecount,
ssize_t dev_advcnt,
uint_t dev_datasz);
INTERFACE LEVEL
illumos DDI specific (illumos DDI).
PARAMETERS
handle The data access handle returned from setup calls, such
as
ddi_regs_map_setup(9F).
dev_addr Beginning of the device address.
bytecount Number of bytes to zero.
dev_advcnt Number of
dev_datasz units to advance on every
access.
dev_datasz The size of each data word. Possible values are
defined as:
DDI_DATA_SZ01_ACC 1 byte data size
DDI_DATA_SZ02_ACC 2 bytes data size
DDI_DATA_SZ04_ACC 4 bytes data size
DDI_DATA_SZ08_ACC 8 bytes data size
DESCRIPTION
ddi_device_zero() function fills the given,
bytecount, number of byte
of zeroes to the device register or memory.
The
dev_advcnt argument determines the value of the device address,
dev_addr, on each access. A value of
0 will use the same device
address,
dev_addr, on every access. A positive value increments the
device address in the next access while a negative value decrements
the address. The device address is incremented and decremented in
dev_datasz units.
The
dev_datasz argument determines the size of data word on each
access.
RETURN VALUES
ddi_device_zero() returns:
DDI_SUCCESS Successfully zeroed the data.
DDI_FAILURE The byte count is not a multiple of
dev_datasz.
CONTEXT
ddi_device_zero() can be called from user, kernel, or interrupt
context.
SEE ALSO
ddi_regs_map_free(9F),
ddi_regs_map_setup(9F) Writing Device Drivers September 25, 1996 DDI_DEVICE_ZERO(9F)