freebsd-dev/sys/x86/iommu
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
..
busdma_dmar.c Split the DMAR unit domains and contexts. Domains carry address space 2015-06-26 07:01:29 +00:00
busdma_dmar.h
intel_ctx.c dmar_ctx_dtr() does not exist since r284869. Remove the static function 2015-09-22 16:50:59 +00:00
intel_dmar.h Split the DMAR unit domains and contexts. Domains carry address space 2015-06-26 07:01:29 +00:00
intel_drv.c Some BIOSes ACPI bytecode needs to take (sleepable) acpi mutex for 2016-02-20 13:37:04 +00:00
intel_fault.c Use VT-d interrupt remapping block (IR) to perform FSB messages 2015-03-19 13:57:47 +00:00
intel_gas.c Split the DMAR unit domains and contexts. Domains carry address space 2015-06-26 07:01:29 +00:00
intel_idpgtbl.c Comment only change, fix grammar and somewhat clarify the action. 2015-08-14 13:51:59 +00:00
intel_intrmap.c Use VT-d interrupt remapping block (IR) to perform FSB messages 2015-03-19 13:57:47 +00:00
intel_qi.c Split the DMAR unit domains and contexts. Domains carry address space 2015-06-26 07:01:29 +00:00
intel_quirks.c Use VT-d interrupt remapping block (IR) to perform FSB messages 2015-03-19 13:57:47 +00:00
intel_reg.h Provide definitions for all descriptors types in the DMAR invalidation 2015-03-19 13:05:55 +00:00
intel_utils.c Split the DMAR unit domains and contexts. Domains carry address space 2015-06-26 07:01:29 +00:00
iommu_intrmap.h Use VT-d interrupt remapping block (IR) to perform FSB messages 2015-03-19 13:57:47 +00:00