ARC: dma: non-coherent pages need V-P mapping if in HIGHMEM
authorVineet Gupta <vgupta@synopsys.com>
Mon, 14 Mar 2016 10:04:36 +0000 (15:34 +0530)
committerVineet Gupta <vgupta@synopsys.com>
Sat, 19 Mar 2016 09:04:08 +0000 (14:34 +0530)
commit6b7003930e010eeb976632c1a374246b7cbc2995
tree2d6d90dfed948524b2de7682cc1baa9f5a5babf3
parentd98a15a5653bfae5bccc68a06a60ccf035b2c4cc
ARC: dma: non-coherent pages need V-P mapping if in HIGHMEM

Previously a non-coherent page (hardware IOC or simply driver needs)
could be handled by cpu with paddr alone (kvaddr used to be needed for
coherent mappings to enforce uncached semantics via a MMU mapping).

Now however such a page might still require a V-P mapping if it was in
physical address space > 32bits due to PAE40, which the CPU can't access
directly with a paddr

So decouple decision of kvaddr allocation from type of alloc request
(coh/non-coh)

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
arch/arc/mm/dma.c