On Mon, Jun 13, 2011 at 05:00:16PM +0100, KyongHo Cho wrote: > > FWIW, on ARMv6 and later hardware, the dma_alloc_coherent() provides > > writecombine memory (i.e. Normal Noncacheable), so no need for > > dma_alloc_writecombine(). On earlier architectures it is creating > > Strongly Ordered mappings (no writecombine). > > Do you mean that dma_alloc_coherent() and dma_alloc_writecombine() are > not different > except some additional features of dma_alloc_coherent() in ARM? When CONFIG_DMA_MEM_BUFFERABLE is enabled (by default on ARMv7 and ARMv6 with some exceptions because of hardware issues), the resulting mapping for both coherent and writecombine is the same. In both cases the mapping is done as L_PTE_MT_BUFFERABLE which is what you want with writecombine. You can check the pgprot_writecombine() and pgprot_dmacoherent() macros in asm/pgtable.h -- Catalin -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href