diff options
author | dfr <dfr@FreeBSD.org> | 1999-05-14 11:22:47 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 1999-05-14 11:22:47 +0000 |
commit | 8a8a702dc2ad6a84232f0efd1ecb484effb273a1 (patch) | |
tree | 22d0abf17160893d226dcecdfe26c0bd265601db /sys/kern/bus_if.m | |
parent | 29cc5794964b10b5c333e8d03f21ca3506b79cad (diff) | |
download | FreeBSD-src-8a8a702dc2ad6a84232f0efd1ecb484effb273a1.zip FreeBSD-src-8a8a702dc2ad6a84232f0efd1ecb484effb273a1.tar.gz |
* Define a new static method DEVICE_IDENTIFY which is called to add device
instances to a parent bus.
* Define a new method BUS_ADD_CHILD which can be called from DEVICE_IDENTIFY
to add new instances.
* Add a generic implementation of DEVICE_PROBE which calls DEVICE_IDENTIFY
for each driver attached to the parent's devclass.
* Move the hint-based isa probe from the isa driver to a new isahint driver
which can be shared between i386 and alpha.
Diffstat (limited to 'sys/kern/bus_if.m')
-rw-r--r-- | sys/kern/bus_if.m | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/sys/kern/bus_if.m b/sys/kern/bus_if.m index 33383ff..1a142a1 100644 --- a/sys/kern/bus_if.m +++ b/sys/kern/bus_if.m @@ -23,7 +23,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id: bus_if.m,v 1.8 1999/05/08 21:59:34 dfr Exp $ +# $Id: bus_if.m,v 1.9 1999/05/10 17:06:12 dfr Exp $ # INTERFACE bus; @@ -104,6 +104,19 @@ METHOD void driver_added { } # +# For busses which use use drivers supporting DEVICE_IDENTIFY to +# enumerate their devices, these methods are used to create new +# device instances. If place is non-NULL, the new device will be +# added after place in the list of devices. +# +METHOD device_t add_child { + device_t dev; + device_t place; + const char *name; + int unit; +}; + +# # Allocate a system resource attached to `dev' on behalf of `child'. # The types are defined in <machine/resource.h>; the meaning of the # resource-ID field varies from bus to bus (but *rid == 0 is always |