Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

probe(9E)

ddi_dev_is_sid(9F)

NAME

ddi_dev_is_sid − tell whether a device is self-identifying

SYNOPSIS

#include <sys/conf.h>
#include <sys/ddi.h>
#include <sys/sunddi.h>
int ddi_dev_is_sid(dev_info_t ∗dip);

INTERFACE LEVEL

Solaris DDI specific (Solaris DDI). 

ARGUMENTS

dip A pointer to the device’s dev_info structure. 

DESCRIPTION

ddi_dev_is_sid() tells the caller whether the device described by dip is self-identifying, that is, a device that can unequivocally tell the system that it exists. This is useful for drivers that support both a self-identifying as well as a non-self-identifying variants of a device (and therefore must be probed). 

RETURN VALUES

DDI_SUCCESS
Device is self-identifying.

DDI_FAILURE
Device is not self-identifying.

CONTEXT

ddi_dev_is_sid() can be called from user or interrupt context. 

EXAMPLES

 1  ...
 2  int
 3  bz_probe(dev_info_t ∗dip)
 4  {
 5  ...
 6  if (ddi_dev_is_sid(dip) == DDI_SUCCESS) {
 7  /∗
 8  ∗ This is the self-identifying version (OpenBoot).
 9  ∗ No need to probe for it because we know it is there.
10  ∗ The existence of dip && ddi_dev_is_sid() proves this.
11  ∗/
12  return (DDI_PROBE_DONTCARE);
13  }
14  /∗
15  ∗ Not a self-identifying variant of the device. Now we have to
16  ∗ do some work to see whether it is really attached to the
17  ∗ system.
18  ∗/
19  ...

SEE ALSO

probe(9E)
Writing Device Drivers

SunOS 5.5/x86  —  Last change: 24 Oct 1991

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