diff options
author | Manoj Chourasia <mchourasia@nvidia.com> | 2012-05-09 16:45:06 +0530 |
---|---|---|
committer | Rohan Somvanshi <rsomvanshi@nvidia.com> | 2012-06-13 01:24:53 -0700 |
commit | ff5d25f4a5847c664a123ca02ad981df699d50b6 (patch) | |
tree | d0cebdf52230826aca3ef7feba148c1c7a0c7eda /drivers/mtd | |
parent | 2bbf11be6d0b5ee8c47f370fc8e72ea0e0790ea6 (diff) |
mtd: tegra-nor: Fix dma/cpu coherency issues
Call dma sync single api's to maintain coherency between
CPU, dma and device in data transfers.
bug 984029
bug 980884
Change-Id: I50b5a24a7ce482f473670347af3c75d6975c6060
Signed-off-by: Manoj Chourasia <mchourasia@nvidia.com>
Reviewed-on: http://git-master/r/105917
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
Diffstat (limited to 'drivers/mtd')
-rw-r--r-- | drivers/mtd/maps/tegra_nor.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/mtd/maps/tegra_nor.c b/drivers/mtd/maps/tegra_nor.c index cc80a0bb3e86..505a2591f884 100644 --- a/drivers/mtd/maps/tegra_nor.c +++ b/drivers/mtd/maps/tegra_nor.c @@ -217,6 +217,8 @@ static void tegra_flash_dma(struct map_info *map, bytes_remaining += (word32_count << 2); break; } + dma_sync_single_for_cpu(c->dev, c->dma_phys_buffer, + (current_transfer << 2), DMA_FROM_DEVICE); memcpy((char *)(copy_to), (char *)(c->dma_virt_buffer), (current_transfer << 2)); |