summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGajanan Bhat <gbhat@nvidia.com>2011-07-21 17:40:31 -0700
committerVarun Colbert <vcolbert@nvidia.com>2011-07-27 12:05:09 -0700
commit7d09a14a519ee4f7bcbe6809ea4f7ac3e276bc04 (patch)
tree12d0bc728125b97d79b9631b519a1b0ede7e9c79
parent00af0cbab3ab6761025715740a1fb9e107a51ae9 (diff)
media: tegra: nvavp: Fix for relocation offset
Fix for bug in relocation offset calculation, causing wrong surface offset to be sent to AVP. Change-Id: I6fea7c27a339238d6514276e3316f38ecf8d7742 Reviewed-on: http://git-master/r/42495 Tested-by: Gajanan Bhat <gbhat@nvidia.com> Reviewed-by: Isaac Richards <irichards@nvidia.com> Reviewed-by: Kaz Fukuoka <kfukuoka@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Reviewed-by: Soumen Kumar Dey <sdey@nvidia.com> Tested-by: Soumen Kumar Dey <sdey@nvidia.com> Reviewed-by: Krishna Reddy <vdumpa@nvidia.com>
-rw-r--r--drivers/media/video/tegra/nvavp/nvavp_dev.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/media/video/tegra/nvavp/nvavp_dev.c b/drivers/media/video/tegra/nvavp/nvavp_dev.c
index 05f413c0d6ad..d0f707c83114 100644
--- a/drivers/media/video/tegra/nvavp/nvavp_dev.c
+++ b/drivers/media/video/tegra/nvavp/nvavp_dev.c
@@ -607,10 +607,12 @@ static int nvavp_pushbuffer_submit_ioctl(struct file *filp, unsigned int cmd,
goto err_reloc_info;
}
- reloc_addr = cmdbuf_data + (clientctx->relocs[i].cmdbuf_offset >> 2);
+ reloc_addr = cmdbuf_data +
+ (clientctx->relocs[i].cmdbuf_offset >> 2);
+
target_phys_addr = nvmap_handle_address(clientctx->nvmap,
clientctx->relocs[i].target);
- target_phys_addr += (clientctx->relocs[i].target_offset >> 2);
+ target_phys_addr += clientctx->relocs[i].target_offset;
writel(target_phys_addr, reloc_addr);
}