linux/arch/ia64/kernel
Christoph Hellwig 974f83ec1e 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>
2019-08-16 11:33:57 -07:00
..
syscalls arch: mark syscall number 435 reserved for clone3 2019-07-15 00:39:33 +02:00
.gitignore
acpi-ext.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
acpi.c ia64: rework iommu probing 2019-08-16 11:33:57 -07:00
asm-offsets.c pid: Implement PIDTYPE_TGID 2018-07-21 10:43:12 -05:00
audit.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
brl_emu.c signal: Remove the task parameter from force_sig_fault 2019-05-29 09:31:43 -05:00
crash_dump.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
crash.c mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
cyclone.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dma-mapping.c ia64: rework iommu probing 2019-08-16 11:33:57 -07:00
efi_stub.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
efi.c docs: ia64: convert to ReST 2019-07-15 09:20:25 -03:00
elfcore.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
entry.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
entry.S ia64: generate uapi header and system call table files 2018-11-13 08:56:25 -08:00
err_inject.c ia64/err-inject: fix spelling mistake: "capapbilities" -> "capabilities" 2018-03-05 14:44:53 -08:00
esi_stub.S treewide: Add SPDX license identifier for missed files 2019-05-21 10:50:45 +02:00
esi.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
fsys.S docs: ia64: convert to ReST 2019-07-15 09:20:25 -03:00
fsyscall_gtod_data.h Stop ia64 being the last holdout using GENERIC_TIME_VSYSCALL_OLD 2017-11-13 12:15:40 -08:00
ftrace.c ia64: ftrace: Fix the comments for ftrace_modify_code() 2015-12-23 14:27:23 -05:00
gate-data.S
gate.lds.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
gate.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
head.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ia64_ksyms.c mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
iosapic.c ia64: remove CONFIG_ACPI ifdefs 2019-08-16 11:33:57 -07:00
irq_ia64.c ia64: remove CONFIG_ACPI ifdefs 2019-08-16 11:33:57 -07:00
irq_lsapic.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq.c ia64: remove now unused machvec indirections 2019-08-16 11:33:57 -07:00
ivt.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kprobes.c ia64/kprobes: remove the unused ia64_get_bsp_cfm function 2019-08-12 09:53:21 -07:00
machine_kexec.c ia64: remove now unused machvec indirections 2019-08-16 11:33:57 -07:00
machvec.c ia64: remove now unused machvec indirections 2019-08-16 11:33:57 -07:00
Makefile ia64: remove CONFIG_ACPI ifdefs 2019-08-16 11:33:57 -07:00
Makefile.gate ia64: require -Wl,--hash-style=sysv 2019-05-18 11:29:01 +09:00
mca_asm.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mca_drv_asm.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mca_drv.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
mca_drv.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mca.c ia64: remove CONFIG_ACPI ifdefs 2019-08-16 11:33:57 -07:00
minstate.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
module.c ia64:unwind: fix double free for mod->arch.init_unw_table 2019-08-06 10:19:35 -07:00
msi_ia64.c ia64: remove now unused machvec indirections 2019-08-16 11:33:57 -07:00
nr-irqs.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
numa.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
pal.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
palinfo.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
patch.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pci-dma.c ia64: rework iommu probing 2019-08-16 11:33:57 -07:00
perfmon_default_smpl.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
perfmon_generic.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perfmon_itanium.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perfmon_mckinley.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perfmon_montecito.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perfmon.c Merge branch 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2019-07-19 10:42:02 -07:00
process.c ia64: do not use print_symbol() 2018-01-05 15:20:28 +01:00
ptrace.c syscalls: Remove start and number from syscall_set_arguments() args 2019-04-05 09:27:23 -04:00
relocate_kernel.S treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 230 2019-06-19 17:09:06 +02:00
sal.c ia64: remove now unused machvec indirections 2019-08-16 11:33:57 -07:00
salinfo.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
setup.c ia64: remove CONFIG_ACPI ifdefs 2019-08-16 11:33:57 -07:00
sigframe.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
signal.c ia64: annotate a switch fallthrough in ia64_do_signal 2019-08-12 09:52:36 -07:00
smp.c ia64: remove now unused machvec indirections 2019-08-16 11:33:57 -07:00
smpboot.c ia64: remove now unused machvec indirections 2019-08-16 11:33:57 -07:00
stacktrace.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sys_ia64.c ia64: remove CONFIG_PCI ifdefs 2019-08-16 11:33:57 -07:00
time.c ia64: remove now unused machvec indirections 2019-08-16 11:33:57 -07:00
topology.c ia64: remove CONFIG_ACPI ifdefs 2019-08-16 11:33:57 -07:00
traps.c signal: Remove the task parameter from force_sig_fault 2019-05-29 09:31:43 -05:00
unaligned.c ia64: annotate switch fallthroughs in ia64_handle_unaligned 2019-08-12 09:53:13 -07:00
uncached.c ia64: remove support for the SGI SN2 platform 2019-08-16 11:33:57 -07:00
unwind_decoder.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
unwind_i.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
unwind.c mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
vmlinux.lds.S Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk 2018-02-01 13:36:15 -08:00