diff options
author | Lars-Peter Clausen <lars@metafoo.de> | 2014-12-03 16:07:28 +0100 |
---|---|---|
committer | Michal Simek <michal.simek@xilinx.com> | 2014-12-17 12:59:59 +0100 |
commit | 3a8e3265179b7e6394d7aab4d6df5651b49e7243 (patch) | |
tree | 82194a886cb05fe27ba3ddf0dca4ec05c3977e4a /drivers/char | |
parent | b2776bf7149bddd1f4161f14f79520f17fc1d71d (diff) | |
download | linux-stable-3a8e3265179b7e6394d7aab4d6df5651b49e7243.tar.gz linux-stable-3a8e3265179b7e6394d7aab4d6df5651b49e7243.tar.bz2 linux-stable-3a8e3265179b7e6394d7aab4d6df5651b49e7243.zip |
microblaze: Fix mmap for cache coherent memory
When running in non-cache coherent configuration the memory that was
allocated with dma_alloc_coherent() has a custom mapping and so there is no
1-to-1 relationship between the kernel virtual address and the PFN. This
means that virt_to_pfn() will not work correctly for those addresses and the
default mmap implementation in the form of dma_common_mmap() will map some
random, but not the requested, memory area.
Fix this by providing a custom mmap implementation that looks up the PFN
from the page table rather than using virt_to_pfn.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'drivers/char')
0 files changed, 0 insertions, 0 deletions