summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/common.c
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2014-06-05 17:14:18 +0530
committerRiham Haidar <rhaidar@nvidia.com>2014-06-12 17:33:48 -0700
commitbc5d590d5b66ace63e85c2616eef558183454756 (patch)
tree0b331772e1f8d21ce48bc0b293c2a14df1c3229e /arch/arm/mach-tegra/common.c
parent4236ab3323ee3c02fac562740d8b80d763589dea (diff)
ARM: tegra: remove vpr refetch call from kernel
Remove vpr refetch from kernel Do VPR refetch in below sequence : - first force idle the GPU - then do SMC call to update VPR size - unidle the GPU - while GPU is resuming from rail gated, it will fetch latest VPR settings on its own - Hence there is no need to explicitly call vpr_refetch call in kernel Bug 1487804 Change-Id: I310acfa6d812e71fe3038b601763b43e8cf44d23 Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: http://git-master/r/421702 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> GVS: Gerrit_Virtual_Submit
Diffstat (limited to 'arch/arm/mach-tegra/common.c')
-rw-r--r--arch/arm/mach-tegra/common.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/arch/arm/mach-tegra/common.c b/arch/arm/mach-tegra/common.c
index 5de470e6f1d2..885f2209ddff 100644
--- a/arch/arm/mach-tegra/common.c
+++ b/arch/arm/mach-tegra/common.c
@@ -200,10 +200,14 @@ EXPORT_SYMBOL(tegra_iram_dev);
static void tegra_update_resize_cfg(phys_addr_t base , size_t size)
{
#ifdef CONFIG_TRUSTED_LITTLE_KERNEL
- /* Config VPR_BOM/_SIZE in MC */
- te_set_vpr_params((void *)(uintptr_t)base, size);
- /* trigger GPU to refetch VPR base and size. */
- nvhost_vpr_info_fetch();
+ int err = 0;
+
+ err = gk20a_do_idle();
+ if (!err) {
+ /* Config VPR_BOM/_SIZE in MC */
+ te_set_vpr_params((void *)(uintptr_t)base, size);
+ gk20a_do_unidle();
+ }
#endif
}