tail head cat sleep
QR code linking to this page

Manual Pages  — DEVICE_GET_STATE

NAME

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

CONTENTS

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.

DEVICE_GET_STATE (9) June 16, 1998

tail head cat sleep
QR code linking to this page


Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

On two occasions I have been asked [by members of Parliament], 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
— Charles Babbage