diff options
author | Stanimir Varbanov <stanimir.varbanov@linaro.org> | 2015-04-29 14:38:01 +0300 |
---|---|---|
committer | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> | 2015-10-16 14:07:00 +0100 |
commit | 841dc35af67d10fe19e9664c863523834526b3a4 (patch) | |
tree | d817cc72c61c99b3ec6578191f58c8f184b77687 | |
parent | f8c332c2f3ad8b098097ea229ed65e2eb5f6868c (diff) |
arm64: dma-mapping: fix DMA_ATTR_STRONGLY_ORDERED in __get_dma_pgprot
Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
-rw-r--r-- | arch/arm64/mm/dma-mapping.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm64/mm/dma-mapping.c b/arch/arm64/mm/dma-mapping.c index f3b02f1466f8..f25a5558f373 100644 --- a/arch/arm64/mm/dma-mapping.c +++ b/arch/arm64/mm/dma-mapping.c @@ -39,10 +39,12 @@ EXPORT_SYMBOL(dma_ops); static pgprot_t __get_dma_pgprot(struct dma_attrs *attrs, pgprot_t prot, bool coherent) { - if (!coherent || dma_get_attr(DMA_ATTR_WRITE_COMBINE, attrs)) + if (dma_get_attr(DMA_ATTR_WRITE_COMBINE, attrs)) return pgprot_writecombine(prot); else if (dma_get_attr(DMA_ATTR_STRONGLY_ORDERED, attrs)) prot = pgprot_noncached(prot); + else if (!coherent) + return pgprot_writecombine(prot); return prot; } |