| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PCI memory address space is shared between memory-mapped devices (MMIO)
and host memory (which may be remapped by an IOMMU). Device accesses to
an address within a memory aperture in a PCIe root port will be treated
as peer-to-peer and not forwarded to an IOMMU. To avoid this, reserve
the address space of the root port's memory apertures in the address
space used by the IOMMU for remapping.
Reviewed by: kib, tychon
Discussed with: Anton Rang <rang@acm.org>
Tested by: tychon
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D27503
Notes:
svn path=/head/; revision=368490
|
| |
|
|
|
|
|
|
|
|
|
| |
The entry->flags field is initialized in iommu_gas_init_domain().
Reviewed by: kib
Sponsored by: Innovate DSbD
Differential Revision: https://reviews.freebsd.org/D27235
Notes:
svn path=/head/; revision=367726
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This is needed on arm64 for the interface between iommu framework
and iommu controller drivers.
Reviewed by: kib
Sponsored by: Innovate DSbD
Differential Revision: https://reviews.freebsd.org/D27229
Notes:
svn path=/head/; revision=367725
|
| |
|
|
|
|
|
|
|
|
|
|
| |
o Add iommu_unmap_msi() to release the msi GAS entry.
o Provide default implementations for iommu init/deinit methods.
Reviewed by: kib
Sponsored by: Innovate DSbD
Differential Revision: https://reviews.freebsd.org/D26906
Notes:
svn path=/head/; revision=367016
|
| |
|
|
|
|
|
|
|
|
| |
Requested by: kib
Reviewed by: kib
Sponsored by: Innovate DSbD
Differential Revision: https://reviews.freebsd.org/D26859
Notes:
svn path=/head/; revision=366835
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This allows the interrupt controller driver only need a small change to
create a map for the page the device will write to raise an interrupt.
Submitted by: andrew
Reviewed by: kib
Sponsored by: Innovate DSbD
Differential Revision: https://reviews.freebsd.org/D26705
Notes:
svn path=/head/; revision=366833
|
| |
|
|
|
|
|
| |
Sponsored by: Innovate DSbD
Notes:
svn path=/head/; revision=366724
|
| |
|
|
|
|
|
|
|
| |
Reviewed by: kib
Sponsored by: Innovate DSbD
Differential Revision: https://reviews.freebsd.org/D26780
Notes:
svn path=/head/; revision=366710
|
| |
|
|
|
|
|
|
|
|
|
| |
during iommu guest address space entries unload.
Suggested by: kib
Sponsored by: Innovate DSbD
Differential Revision: https://reviews.freebsd.org/D26722
Notes:
svn path=/head/; revision=366704
|
| |
|
|
|
|
|
|
|
|
| |
iommu context.
Submitted by: andrew
Sponsored by: Innovate DSbD
Notes:
svn path=/head/; revision=366702
|
| |
|
|
|
|
|
| |
Sponsored by: DARPA, AFRL
Notes:
svn path=/head/; revision=366701
|
| |
|
|
|
|
|
|
|
|
|
| |
for a given device_t.
Submitted by: andrew
Reviewed by: kib
Sponsored by: DARPA, AFRL
Notes:
svn path=/head/; revision=366571
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This function isn't ACPI dependent and we may use it on FDT systems
as well.
o Don't repeat the function declaration, include iommu.h instead.
Reviewed by: andrew, kib
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D26584
Notes:
svn path=/head/; revision=366257
|
| |
|
|
|
|
|
|
|
|
|
| |
It could be used in various IOMMU platforms, not only DMAR.
Reviewed by: kib
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D26373
Notes:
svn path=/head/; revision=365577
|
| |
|
|
|
|
|
|
|
| |
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25972
Notes:
svn path=/head/; revision=363949
|
| |
|
|
|
|
|
|
|
| |
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25956
Notes:
svn path=/head/; revision=363946
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
so we don't ifdef for every arch in busdma_iommu.c;
o No need to include specialreg.h for x86, remove it.
Requested by: andrew
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25957
Notes:
svn path=/head/; revision=363929
|
| |
|
|
|
|
|
| |
Sponsored by: DARPA, AFRL
Notes:
svn path=/head/; revision=363865
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
These functions were introduced before UMA started ensuring that freed
memory gets placed in domain-local caches. They no longer serve any
purpose since UMA now provides their functionality by default. Remove
them to simplyify the kernel memory allocator interfaces a bit.
Reviewed by: cem, kib
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D25937
Notes:
svn path=/head/; revision=363834
|
| |
|
|
|
|
|
|
|
|
|
| |
so x86 can support Intel DMAR and AMD IOMMU simultaneously.
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25894
Notes:
svn path=/head/; revision=363747
|
| |
|
|
|
|
|
|
|
|
|
|
| |
consumers instead;
o Order includes properly.
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25878
Notes:
svn path=/head/; revision=363675
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
the generic iommu busdma backend;
o Move bus_dma_iommu_set_buswide, bus_dma_iommu_load_ident
prototypes to iommu.h.
Reviewed by: kib
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D25866
Notes:
svn path=/head/; revision=363663
|
| |
|
|
|
|
|
|
|
|
|
| |
o Rename bus_dma_dmar_load_ident() as well.
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25852
Notes:
svn path=/head/; revision=363650
|
| |
|
|
|
|
|
|
|
|
|
|
| |
o DMAR_DOMAIN_* -> IOMMU_DOMAIN_*
o DMAR_PGF_* -> IOMMU_PGF_*
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25812
Notes:
svn path=/head/; revision=363560
|
| |
|
|
|
|
|
|
|
|
|
| |
o Move the dmar sysctl knobs to _hw_iommu_dmar.
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25807
Notes:
svn path=/head/; revision=363534
|
| |
|
|
|
|
|
|
|
|
|
| |
o Move hw.dmar sysctl node to iommu_gas.c.
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25802
Notes:
svn path=/head/; revision=363533
|
| |
|
|
|
|
|
|
|
| |
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25799
Notes:
svn path=/head/; revision=363524
|
| |
|
|
|
|
|
|
|
|
|
| |
from Intel DMAR support, so it can be used on other IOMMU systems.
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25743
Notes:
svn path=/head/; revision=363515
|
| |
|
|
|
|
|
|
|
| |
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25750
Notes:
svn path=/head/; revision=363388
|
|
|
it can be used on other IOMMU systems.
Reviewed by: kib
Sponsored by: DARPA/AFRL
Differential Revision: https://reviews.freebsd.org/D25720
Notes:
svn path=/head/; revision=363387
|