[PATCH 1/2] arm64: dma_mapping: allow PCI host driver to limit DMA mask

From
Christoph Hellwig <hch@lst.de>
Date
2017-01-10 14:44:58
Also in
linux-nvme, linux-pci, linux-renesas-soc, lkml
Reply to
Arnd Bergmann, 2017-01-10
On Tue, Jan 10, 2017 at 11:47:42AM +0100, Arnd Bergmann wrote:
I see that we have CONFIG_ARCH_PHYS_ADDR_T_64BIT on a couple of
32-bit architectures without swiotlb (arc, arm, some mips32), and
there are several 64-bit architectures that do not have swiotlb
(alpha, parisc, s390, sparc). I believe that alpha, s390 and sparc
always use some form of IOMMU, but the other four apparently don't,
so we would need to add swiotlb support there to remove all the
bounce buffering in network and block layers.
mips has lots of weird swiotlb wire-up in it's board code (the swiotlb
arch glue really needs some major cleanup..), as does arm.  Not
sure about the others.

Getting rid of highmem bouncing in the block layer will take some time
as various PIO-only drivers rely on it at the moment.  These should
all be convertable to kmap that data, but it needs a careful audit
first.  For 4.11 I'll plan to switch away from bouncing highmem by
default at least, though and maybe also convert a few PIO drivers.
Thread (28 messages) 28 messages, 7 authors, last reply 2017-02-16
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help