diff options
author | Christoph Hellwig <hch@lst.de> | 2021-09-13 18:44:55 +0200 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2021-10-21 13:03:27 +0200 |
commit | 7d6db80b7d264d6af9dc21baafe59f93cc4607c5 (patch) | |
tree | 18e48a955f6f59e8a34c40c2fca2e1fd90ad6b54 /arch/sparc/Kconfig | |
parent | sparc32: remove dma_make_coherent (diff) | |
download | linux-7d6db80b7d264d6af9dc21baafe59f93cc4607c5.tar.xz linux-7d6db80b7d264d6af9dc21baafe59f93cc4607c5.zip |
sparc32: use DMA_DIRECT_REMAP
Use the generic dma remapping allocator instead of open coding it.
This also avoids setting up page tables from irq context which is
generally dangerous and uses the atomic pool instead.
Note that this changes the kernel virtual address at which the
dma coherent memory is mapped from the DVMA_VADDR region to the general
vmalloc pool. I could not find any indication that this matters
for the hardware.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Tested-by: Andreas Larsson <andreas@gaisler.com>
Acked-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/Kconfig')
-rw-r--r-- | arch/sparc/Kconfig | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index b120ed947f50..66fc08646be5 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig @@ -53,8 +53,9 @@ config SPARC32 def_bool !64BIT select ARCH_32BIT_OFF_T select ARCH_HAS_SYNC_DMA_FOR_CPU - select GENERIC_ATOMIC64 select CLZ_TAB + select DMA_DIRECT_REMAP + select GENERIC_ATOMIC64 select HAVE_UID16 select OLD_SIGACTION select ZONE_DMA |