Sun Microsystems, Inc.
spacerspacer
spacer   www.sun.com docs.sun.com | | |  
spacer
black dot
   
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z
    
 
Kernel Functions for Driversddi_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).

PARAMETERS

 
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

 Example 1.
 

 
 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.9Go To TopLast Changed 24 Oct 1991

 
      
      
Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.