Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

getinfo(9E)

NAME

getinfo − get device driver information

SYNOPSIS

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

int prefixgetinfo(dev_info_t ∗dip, ddi_info_cmd_t cmd,
void ∗arg, void ∗∗resultp);

ARGUMENTS

dip Do not use. 

cmd Command argument − valid command values are DDI_INFO_DEVT2DEVINFO and DDI_INFO_DEVT2INSTANCE.

arg Command specific argument. 

resultp Pointer to where the requested information is stored. 

INTERFACE LEVEL

Solaris DDI specific (Solaris DDI).  This entry point is required. You must write it. 

DESCRIPTION

getinfo() should return the pointer associated with arg when cmd is set to DDI_INFO_DEVT2DEVINFO , or it should return the instance number associated with arg when cmd is set to DDI_INFO_DEVT2INSTANCE. Note that the instance number is often encoded as bits in the minor number. 

RETURN VALUES

getinfo() should return:

DDI_SUCCESS
on success.

DDI_FAILURE
on failure.

EXAMPLES

/∗ARGSUSED∗/
static int

rd_getinfo(dev_info_t ∗dip, ddi_info_cmd_t infocmd, void ∗arg, void ∗∗result)

{
/∗ Note that in this simple example
∗ the minor number is the instance
∗ number.
∗/
 devstate_t ∗sp;
        int error = DDI_FAILURE;
         switch (infocmd) {
        case DDI_INFO_DEVT2DEVINFO:
                if ((sp = ddi_get_soft_state(statep,
                    getminor((dev_t) arg))) != NULL) {
                        ∗resultp = sp->devi;
                        error = DDI_SUCCESS;
                } else
                        ∗result = NULL;
                break;
         case DDI_INFO_DEVT2INSTANCE:
                ∗resultp = (void ∗) getminor((dev_t) arg);
                error = DDI_SUCCESS;
                break;
        }
         return (error);
}

SEE ALSO

Writing Device Drivers

SunOS 5.4  —  Last change: 1 May 1992

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026