freebsd-skq/sys/dev/bhnd/cores
landonf 2e486532df bhnd: Implement bhnd(4) platform device registration.
Add bhnd(4) API for explicitly registering BHND platform devices (ChipCommon,
PMU, NVRAM, etc) with the bus, rather than walking the newbus hierarchy to
discover platform devices. These devices are now also refcounted; attempting
to deregister an actively used platform device will return EBUSY.

This resolves a lock ordering incompatibility with bwn(4)'s firmware loading
threads; previously it was necessary to acquire Giant to protect newbus access
when locating and querying the NVRAM device.

Approved by:	adrian (mentor)
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D12392
2017-09-27 19:44:23 +00:00
..
chipc bhnd: Implement bhnd(4) platform device registration. 2017-09-27 19:44:23 +00:00
pci bhnd: Implement bhnd(4) platform device registration. 2017-09-27 19:44:23 +00:00
pcie2 bhnd(4): Add a vendor parameter to BHND_DEVICE(), replacing vendor-specific 2016-06-08 21:31:33 +00:00
pmu bhnd: Implement bhnd(4) platform device registration. 2017-09-27 19:44:23 +00:00
usb bhnd: Remove unsupported USB core IDs from the bhnd_usb device table. 2017-09-06 23:43:20 +00:00