linux/arch/s390
Niklas Schnelle 568de506e3 s390/pci: use physical addresses in DMA tables
The entries in the DMA translation tables for our IOMMU must specify
physical addresses of either the next level table or the final page
to be mapped for DMA. Currently however the code simply passes the
virtual addresses of both. On the other hand we still need to walk the
tables via their virtual addresses so we need to do a phys_to_virt()
when setting the entries and a virt_to_phys() when getting them.
Similarly when passing the I/O translation anchor to the hardware we
must also specify its physical address.

As the DMA and IOMMU APIs we are implementing already use the correct
phys_addr_t type for the address to be mapped let's also thread this
through instead of treating it as just an unsigned long.

Note: this currently doesn't fix a real bug, since virtual addresses
are indentical to physical ones.

Reviewed-by: Pierre Morel <pmorel@linux.ibm.com>
Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2021-12-06 14:42:26 +01:00
..
appldata s390/appldata: use struct_size() helper 2020-06-29 16:32:34 +02:00
boot s390/boot: simplify and fix kernel memory layout setup 2021-11-16 12:29:19 +01:00
configs s390/crypto: add SIMD implementation for ChaCha20 2021-12-06 14:42:24 +01:00
crypto s390/crypto: add SIMD implementation for ChaCha20 2021-12-06 14:42:24 +01:00
hypfs s390: rename dma section to amode31 2021-08-05 14:10:53 +02:00
include s390/pci: use physical addresses in DMA tables 2021-12-06 14:42:26 +01:00
kernel s390 updates for 5.16-rc2 2021-11-20 10:55:50 -08:00
kvm KVM: s390: Cap KVM_CAP_NR_VCPUS by num_online_cpus() 2021-11-18 02:12:15 -05:00
lib s390/test_unwind: use raw opcode instead of invalid instruction 2021-11-25 13:38:31 +01:00
mm Merge branch 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2021-11-10 16:15:54 -08:00
net s390: introduce nospec_uses_trampoline() 2021-10-26 15:21:29 +02:00
pci s390/pci: use physical addresses in DMA tables 2021-12-06 14:42:26 +01:00
purgatory s390: enable KCSAN 2021-07-30 17:09:23 +02:00
tools s390/disassembler: add instructions 2021-07-27 09:39:19 +02:00
Kbuild kbuild: use more subdir- for visiting subdirectories while cleaning 2021-10-24 13:49:46 +09:00
Kconfig ftrace/samples: add s390 support for ftrace direct multi sample 2021-11-18 17:50:54 +01:00
Kconfig.debug tracing: Refactor TRACE_IRQFLAGS_SUPPORT in Kconfig 2021-08-16 11:37:21 -04:00
Makefile s390/vdso: filter out -mstack-guard and -mstack-size 2021-11-16 12:29:19 +01:00