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.