Provided by: freebsd-manpages_9.2+1-1_all bug

NAME

     device_get_state, device_busy, device_unbusy, device_is_alive, device_is_attached —
     manipulate device state

SYNOPSIS

     #include <sys/param.h>
     #include <sys/bus.h>

     device_state_t
     device_get_state(device_t dev);

     void
     device_busy(device_t dev);

     void
     device_unbusy(device_t dev);

     int
     device_is_alive(device_t dev);

     int
     device_is_attached(device_t dev);

DESCRIPTION

     The current state of a device is accessed by calling device_get_state() which returns
     DS_NOTPRESENT, DS_ALIVE, DS_ATTACHED or DS_BUSY (described in device(9)).  To test see if a
     device was successfully probed, call device_is_alive() which simply returns if the state is
     greater or equal to DS_ALIVE.  To test see if a device was successfully attached, call
     device_is_attached() which simply returns if the state is greater or equal to DS_ATTACHED.

     Each device has a busy count which is incremented when device_busy() is called and
     decremented when device_unbusy() is called.  Both routines return an error if the device
     state is less than DS_ATTACHED.

     When device_busy() is called on a device in the DS_ATTACHED state, the device changes to the
     DS_BUSY state.  When device_unbusy() is called and after decrementing, the busy count for
     the device is zero, the device changes to the DS_ATTACHED state.

SEE ALSO

     device(9)

AUTHORS

     This manual page was written by Doug Rabson.