OSDN Git Service

dma-mapping: provide a better default ->get_required_mask
authorChristoph Hellwig <hch@lst.de>
Tue, 6 Aug 2019 12:01:38 +0000 (15:01 +0300)
committerChristoph Hellwig <hch@lst.de>
Wed, 4 Sep 2019 09:13:19 +0000 (11:13 +0200)
commit249baa54790171438524ba97e8e0485dd6aa2762
treecf5dc669ac064a93a37912f25aa7910d7e8db58d
parentd9295532d5725e5926d76470acdfd239c8d2aad3
dma-mapping: provide a better default ->get_required_mask

Most dma_map_ops instances are IOMMUs that work perfectly fine in 32-bits
of IOVA space, and the generic direct mapping code already provides its
own routines that is intelligent based on the amount of memory actually
present.  Wire up the dma-direct routine for the ARM direct mapping code
as well, and otherwise default to the constant 32-bit mask.  This way
we only need to override it for the occasional odd IOMMU that requires
64-bit IOVA support, or IOMMU drivers that are more efficient if they
can fall back to the direct mapping.

Signed-off-by: Christoph Hellwig <hch@lst.de>
arch/arm/mm/dma-mapping.c
arch/powerpc/platforms/ps3/system-bus.c
arch/x86/kernel/amd_gart_64.c
kernel/dma/mapping.c