BUS_CHILD_PRESENT(9)

NAME
bus_child_present - ask the bus driver to see if this device is still really present

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

#include <machine/bus.h>
#include <sys/rman.h>
#include <machine/resource.h>
int
bus_child_present(device_t dev);

DESCRIPTION
The bus_child_present() function requests that the parent device driver of dev check to see if the hardware represented by dev is still physically accessible at this time. While the notion of accessible varies from bus to bus, generally hardware that is not accessible cannot be accessed via the bus_space*() methods that would otherwise be used to access the device.

This does not ask the question “does this device have children?” which can better be answered by device_get_children(9).

RETURN VALUES
A zero return value indicates that the device is not present in the system. A non-zero return value indicates that the device is present in the system, or that the state of the device cannot be determined.

EXAMPLES
This is some example code. It only calls stop when the dc(4) device is actually present.

    device_t dev;
    dc_softc *sc;
    sc = device_get_softc(dev);
    if (bus_child_present(dev))
    	dc_stop(sc);

SEE ALSO
device(9), driver(9)

AUTHORS
This manual page was written by Warner Losh <imp@FreeBSD.org>.