]> asedeno.scripts.mit.edu Git - linux.git/commit
ia64: rework iommu probing
authorChristoph Hellwig <hch@lst.de>
Tue, 13 Aug 2019 07:25:09 +0000 (09:25 +0200)
committerTony Luck <tony.luck@intel.com>
Fri, 16 Aug 2019 18:33:57 +0000 (11:33 -0700)
commit974f83ec1e5afeeb4c9028feb74ffa4ee70e71b7
tree79d9378ae00206cda4d2a41f2a79361b014c4fb5
parent16567ca85fce11e2a20f22404ed0ceb133c4408e
ia64: rework iommu probing

ia64 currently organizes the iommu probing along machves, which isn't
very helpful.  Instead just try to probe for Intel IOMMUs in mem_init
as they are properly described in ACPI and if none was found initialize
the swiotlb buffer.  The HP SBA handling is then only done delayed when
the actual hardware is probed. Only in the case that we actually found
usable IOMMUs we then set up the DMA ops and free the not needed
swiotlb buffer.  This scheme gets rid of the need for the dma_init
machvec operation, and the dig_vtd machvec.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Link: https://lkml.kernel.org/r/20190813072514.23299-24-hch@lst.de
Signed-off-by: Tony Luck <tony.luck@intel.com>
14 files changed:
arch/ia64/Kconfig
arch/ia64/Makefile
arch/ia64/dig/Makefile
arch/ia64/dig/machvec_vtd.c [deleted file]
arch/ia64/hp/common/sba_iommu.c
arch/ia64/include/asm/acpi.h
arch/ia64/include/asm/machvec.h
arch/ia64/include/asm/machvec_dig_vtd.h [deleted file]
arch/ia64/include/asm/machvec_hpzx1.h
arch/ia64/include/asm/pci.h
arch/ia64/kernel/acpi.c
arch/ia64/kernel/dma-mapping.c
arch/ia64/kernel/pci-dma.c
arch/ia64/mm/init.c