NAME
device_get_state, device_busy, device_unbusy, device_is_alive, device_is_attached — manipulate device stateSYNOPSIS
#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 returnsDS_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.June 16, 1998 | Debian |