device_get_state, device_busy, device_unbusy, device_is_alive,
device_is_attached -- manipulate device state
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.
This manual page was written by Doug Rabson.
FreeBSD 5.2.1 June 16, 1998 FreeBSD 5.2.1 [ Back ]