]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: dma-mapping: switch ARMv7 DMA mappings to retain 'memory' attribute
authorRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 20 Nov 2009 21:06:43 +0000 (21:06 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 24 Nov 2009 17:41:36 +0000 (17:41 +0000)
commitd103cd72fc34fb54d3319c86f5ce7f9f14ae196f
treef33ea6faa4f8d9409098654354548fa28c7b41ad
parent57a0920acb0a3cbea038b739d6e40928fd0c69d8
ARM: dma-mapping: switch ARMv7 DMA mappings to retain 'memory' attribute

On ARMv7, it is invalid to map the same physical address multiple times
with different memory types.  Since system RAM is already mapped as
'memory', subsequent remapping of it must retain this attribute.

However, DMA memory maps it as "strongly ordered".  Fix this by introducing
'pgprot_dmacoherent()' which provides the necessary page table bits for
DMA mappings.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Greg Ungerer <gerg@uclinux.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm/include/asm/pgtable.h
arch/arm/include/asm/system.h
arch/arm/mm/dma-mapping.c