summaryrefslogtreecommitdiffstats
path: root/include/asm-mips/dma.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2007-11-03 03:05:43 +0100
committerRalf Baechle <ralf@linux-mips.org>2007-11-26 18:26:14 +0100
commitcce335ae47e231398269fb05fa48e0e9cbf289e0 (patch)
treea01ea9ad318d459393a905df5c53b68b754300da /include/asm-mips/dma.h
parent[MIPS] Only build r4k clocksource for systems that work ok with it. (diff)
downloadlinux-cce335ae47e231398269fb05fa48e0e9cbf289e0.tar.xz
linux-cce335ae47e231398269fb05fa48e0e9cbf289e0.zip
[MIPS] 64-bit Sibyte kernels need DMA32.
Sibyte SOCs only have 32-bit PCI. Due to the sparse use of the address space only the first 1GB of memory is mapped at physical addresses below 1GB. If a system has more than 1GB of memory 32-bit DMA will not be able to reach all of it. For now this patch is good enough to keep Sibyte users happy but it seems eventually something like swiotlb will be needed for Sibyte. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include/asm-mips/dma.h')
-rw-r--r--include/asm-mips/dma.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/asm-mips/dma.h b/include/asm-mips/dma.h
index 833437d31ef1..d6a6c21f16db 100644
--- a/include/asm-mips/dma.h
+++ b/include/asm-mips/dma.h
@@ -92,6 +92,7 @@
#define MAX_DMA_ADDRESS (PAGE_OFFSET + 0x01000000)
#endif
#define MAX_DMA_PFN PFN_DOWN(virt_to_phys((void *)MAX_DMA_ADDRESS))
+#define MAX_DMA32_PFN (1UL << (32 - PAGE_SHIFT))
/* 8237 DMA controllers */
#define IO_DMA1_BASE 0x00 /* 8 bit slave DMA, channels 0..3 */