diff options
author | jhb <jhb@FreeBSD.org> | 2008-11-18 21:01:54 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2008-11-18 21:01:54 +0000 |
commit | c2251260be90b098d300f1452cc5cb46c5032282 (patch) | |
tree | 9f64d56b3288179bc04a3f77b610240093f70345 /sys/isa/isavar.h | |
parent | 7a676b30d156207340caf73e0c93ff42db650ffb (diff) | |
download | FreeBSD-src-c2251260be90b098d300f1452cc5cb46c5032282.zip FreeBSD-src-c2251260be90b098d300f1452cc5cb46c5032282.tar.gz |
Allow device hints to wire the unit numbers of devices.
- An "at" hint now reserves a device name.
- A new BUS_HINT_DEVICE_UNIT method is added to the bus interface. When
determining the unit number of a device, this method is invoked to
let the bus driver specify the unit of a device given a specific
devclass. This is the only way a device can be given a name reserved
via an "at" hint.
- Implement BUS_HINT_DEVICE_UNIT() for the acpi(4) and isa(4) bus drivers.
Both of these busses implement this by comparing the resources for a
given hint device with the resources enumerated by ACPI/PnPBIOS and
wire a unit if the hint resources are a subset of the "real" resources.
- Use bus_hinted_children() for adding hinted devices on isa(4) busses
now instead of doing it by hand.
- Remove the unit kludging from sio(4) as it is no longer necessary.
Prodding from: peter, imp
OK'd by: marcel
MFC after: 1 month
Diffstat (limited to 'sys/isa/isavar.h')
-rw-r--r-- | sys/isa/isavar.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/isa/isavar.h b/sys/isa/isavar.h index 59d3bc9..3b1a2e6 100644 --- a/sys/isa/isavar.h +++ b/sys/isa/isavar.h @@ -181,6 +181,9 @@ int isa_dmatc(int chan); (int)(chan), (uintmax_t)(size)); \ } while (0) +void isa_hinted_child(device_t parent, const char *name, int unit); +void isa_hint_device_unit(device_t bus, device_t child, const char *name, + int *unitp); int isab_attach(device_t dev); #ifdef PC98 |