video: tegra: Fix up CV cluster clamping

CV cluster clamping is currently owned partly by nvhost and partly by the
client modules in their poweroff sequences. This leads to a mismatch in
ref counts if the client specific finalize_poweron() call doesn't work.
nvhost side ends up retrying to boot the device three times at which point
we are left with a mismatch in the cluster clamp ref counts.

To fix this, move out cluster clamping back to nvhost which allows us to
maintain consistent state for the ref count.

Bug 200352108

Change-Id: I9ccc71035934ccc147b8d8a8995afd060af333e8
Signed-off-by: Sai Gurrappadi <sgurrappadi@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1572788
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Sai Gurrappadi
2017-10-03 17:29:15 -07:00
committed by Laxman Dewangan
parent 6ea50d7295
commit 73f1b216b8

View File

@@ -521,8 +521,6 @@ int nvhost_nvdla_prepare_poweroff(struct platform_device *pdev)
goto out;
}
cv_cluster_clamp(pdev);
out:
return ret;
}