FreeBSD/sys/kern/subr_bus.c
/**
 * @brief Helper function for implementing DEVICE_PROBE()
 *
 * This function can be used to help implement the DEVICE_PROBE() for
 * a bus (i.e. a device which has other devices attached to it). It
 * calls the DEVICE_IDENTIFY() method of each driver in the device's
 * devclass.
 */
@brief Helper function for implementing DEVICE_PROBE()
This function can be used to help implement the DEVICE_PROBE() for
a bus . It
calls the DEVICE_IDENTIFY() method of each driver in the device's
devclass.
@brief Helper function for implementing DEVICE_PROBE () This function can be used to help implement the DEVICE_PROBE () for a bus . It calls the DEVICE_IDENTIFY () method of each driver in the device ' s devclass .
int
bus_generic_probe(device_t dev)
{
	devclass_t dc = dev->devclass;
	driverlink_t dl;
	TAILQ_FOREACH(dl, &dc->drivers, link) {
		if (dl->pass > bus_current_pass)
			continue;
		DEVICE_IDENTIFY(dl->driver, dev);
	}
	return (0);
}
int bus_generic_probe ( device_t dev ) { devclass_t dc = dev -> devclass ; driverlink_t dl ; TAILQ_FOREACH ( dl , & dc -> drivers , link ) { if ( dl -> pass > bus_current_pass ) continue ; DEVICE_IDENTIFY ( dl -> driver , dev ) ; } return ( 0 ) ; }
@brief Helper function for implementing DEVICE_PROBE()
 This function can be used to help implement the DEVICE_PROBE() for
 a bus (i.e.
@brief Helper function for implementing DEVICE_PROBE () This function can be used to help implement the DEVICE_PROBE () for a bus ( i . e .
/*
		 * If this driver's pass is too high, then ignore it.
		 * For most drivers in the default pass, this will
		 * never be true.  For early-pass drivers they will
		 * only call the identify routines of eligible drivers
		 * when this routine is called.  Drivers for later
		 * passes should have their identify routines called
		 * on early-pass busses during BUS_NEW_PASS().
		 */