ddi_get_devstate man page on Solaris

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
Solaris logo
[printable version]

ddi_get_devstate(9F)	 Kernel Functions for Drivers	  ddi_get_devstate(9F)

NAME
       ddi_get_devstate - Check device state

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

       ddi_devstate_t ddi_get_devstate(dev_info_t *dip);

INTERFACE LEVEL
       Solaris DDI specific (Solaris DDI)

PARAMETERS
       dip	       Pointer to the device's dev_info structure

DESCRIPTION
       The ddi_get_devstate() function returns a value indicating the state of
       the device specified by	dip, as derived from the configuration	opera‐
       tions  that  have  been	performed  on  it  (or	on the bus on which it
       resides) and any fault reports relating to it.

RETURN VALUES
       DDI_DEVSTATE_OFFLINE

	   The device is offline.  In this state, the  device  driver  is  not
	   attached,  nor will it be attached automatically. The device cannot
	   be used until it is brought online.

       DDI_DEVSTATE_DOWN

	    The device is online but unusable due to a fault.

       DDI_DEVSTATE_QUIESCED

	    The bus on which the device resides has been quiesced. This is not
	   a  fault, but no operations on the device should be performed while
	   the bus remains quiesced.

       DDI_DEVSTATE_DEGRADED

	    The device is online  but  only  able  to  provide	a  partial  or
	   degraded service, due to a fault.

       DDI_DEVSTATE_UP

	    The device is online and fully operational.

CONTEXT
       The  ddi_get_devstate()	function  may  be called from user, kernel, or
       interrupt context.

NOTES
       A device driver should call this function to check  its	own  state  at
       each  major entry point, and before committing resources to a requested
       operation.  If a driver discovers that its device is already  down,  it
       should perform required cleanup actions and return as soon as possible.
       If appropriate, it should return an error  to  its  caller,  indicating
       that  the  device  has failed (for example, a driver's read(9E) routine
       would return EIO).

       Depending on the driver, some non-I/O operations (for example, calls to
       the driver's ioctl(9E) routine) may still succeed; only functions which
       would require fully accessible and operational hardware will  necessar‐
       ily  fail.  If  the  bus	 on  which the device resides is quiesced, the
       driver may return a value indicating the operation  should  be  retried
       later  (for  example,  EAGAIN).	 Alternatively,	 for  some  classes of
       device, it may be appropriate for the driver to enqueue	the  operation
       and  service  it	 once  the bus has been unquiesced.  Note that not all
       busses support the quiesce/unquiesce  operations,  so  this  value  may
       never be seen by some drivers.

SEE ALSO
       attach(9E),   ioctl(9E),	 open(9E),  read(9E), strategy(9E), write(9E),
       ddi_dev_report_fault(9F)

SunOS 5.10			13 August 1999		  ddi_get_devstate(9F)
[top]

List of man pages available for Solaris

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net