LDI_READ(9F)            Kernel Functions for Drivers            LDI_READ(9F)
NAME
       ldi_read, ldi_write - Read and write from a device
SYNOPSIS
       #include <sys/sunldi.h>       
int ldi_read(
ldi_handle_t lh, 
struct uio *uiop, 
cred_t *cr);       
int  ldi_write(
ldi_handle_t lh, 
struct uio *uiop, 
cred_t *cr);
PARAMETERS
       lh                Layered handle.       
cr                Pointer to a credential structure used to open a device.       
uiop                Pointer to the 
uio(9S) structure. 
uio(9S) specifies  the
                location of the read or write data.  (Either userland or
                kernel.)
DESCRIPTION
       The 
ldi_read() function passes a read request to the device entry
       point for the device specified by the layered handle. This operation
       is supported for  block,  character, and streams devices.
       The 
ldi_write() function passes a write request to the device entry
       point for a device specified by the layered handle. This operation is
       supported for block,  character, and streams devices.
RETURN VALUES
       The 
ldi_read() and 
ldi_write() functions return 
0 upon success. If  a
       failure occurs before the request is passed to the device, the
       possible return values are shown below. Otherwise any other error
       number may be returned by the device.       
EINVAL                  Invalid input parameters.       
ENOTSUP                  Operation is not supported for this device.
CONTEXT
       These functions may be called from user or kernel context.
                                June 3, 2003                    LDI_READ(9F)