freebsd-dev/sys/dev/acpica
Konstantin Belousov 2fe1339ea2 Some BIOSes ACPI bytecode needs to take (sleepable) acpi mutex for
acpi_GetInteger() execution.  Intel DMAR interrupt remapping code
needs to know UID of the HPET to properly route the FSB interrupts
from the HPET, even when interrupt remapping is disabled, and the code
is executed under some non-sleepable mutexes.

Cache HPET UIDs in the device softc at the attach time and provide
lock-less method to get UID, use the method from the dmar hpet
handling code instead of calling GetInteger().

Reported and tested by:	Larry Rosenman <ler@lerctr.org>
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2016-02-20 13:37:04 +00:00
..
Osd Merge ACPICA 20150818. 2015-08-26 17:13:47 +00:00
acpi_acad.c Use DEVMETHOD_END macro defined in sys/bus.h instead of {0, 0} sentinel on device_method_t arrays 2013-01-30 18:01:20 +00:00
acpi_battery.c
acpi_button.c Use DEVMETHOD_END macro defined in sys/bus.h instead of {0, 0} sentinel on device_method_t arrays 2013-01-30 18:01:20 +00:00
acpi_cmbat.c Use DEVMETHOD_END macro defined in sys/bus.h instead of {0, 0} sentinel on device_method_t arrays 2013-01-30 18:01:20 +00:00
acpi_cpu.c Add basic support for ACPI. It splits out the nexus driver to two new 2015-06-11 15:45:33 +00:00
acpi_dock.c Use DEVMETHOD_END macro defined in sys/bus.h instead of {0, 0} sentinel on device_method_t arrays 2013-01-30 18:01:20 +00:00
acpi_ec.c Simplify retry loops. No functional change. 2015-01-23 18:55:04 +00:00
acpi_hpet.c Some BIOSes ACPI bytecode needs to take (sleepable) acpi mutex for 2016-02-20 13:37:04 +00:00
acpi_hpet.h
acpi_if.m
acpi_isab.c
acpi_lid.c Use DEVMETHOD_END macro defined in sys/bus.h instead of {0, 0} sentinel on device_method_t arrays 2013-01-30 18:01:20 +00:00
acpi_package.c Remove a bogus bzero() call. 2016-02-18 23:32:11 +00:00
acpi_pci_link.c - Some BIOSes use an Extended IRQ resource descriptor in _PRS for a link 2013-04-22 15:51:06 +00:00
acpi_pci.c Implement interface to create SR-IOV Virtual Functions 2015-03-01 00:40:09 +00:00
acpi_pcib_acpi.c Convert rman to use rman_res_t instead of u_long 2016-01-27 02:23:54 +00:00
acpi_pcib_pci.c Add support for managing PCI bus numbers. As with BARs and PCI-PCI bridge 2014-02-12 04:30:37 +00:00
acpi_pcib.c Add domain support to PCI bus allocation 2015-09-16 23:34:51 +00:00
acpi_pcibvar.h
acpi_perf.c Use DEVMETHOD_END macro defined in sys/bus.h instead of {0, 0} sentinel on device_method_t arrays 2013-01-30 18:01:20 +00:00
acpi_powerres.c Remove not needed initialisation code. 2014-06-26 10:48:01 +00:00
acpi_quirk.c
acpi_quirks
acpi_resource.c Convert rman to use rman_res_t instead of u_long 2016-01-27 02:23:54 +00:00
acpi_smbat.c Remove instances of variables that were set, but never used. gcc 4.9 2014-03-30 23:43:36 +00:00
acpi_smbus.h
acpi_thermal.c acpi_thermal: Warn about insane _TMP temperature only once 2013-08-30 19:21:12 +00:00
acpi_throttle.c Do not probe Intel PIIX4 south bridge quirks on amd64. These quirky south 2015-05-21 19:31:10 +00:00
acpi_timer.c Convert rman to use rman_res_t instead of u_long 2016-01-27 02:23:54 +00:00
acpi_video.c Fix undefined behavior: (1 << 31) is not defined as 1 is an int and this 2013-11-30 22:17:27 +00:00
acpi.c Introduce a RMAN_IS_DEFAULT_RANGE() macro, and use it. 2016-02-20 01:32:58 +00:00
acpiio.h
acpivar.h Some BIOSes ACPI bytecode needs to take (sleepable) acpi mutex for 2016-02-20 13:37:04 +00:00