diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2011-11-07 09:02:54 +0200 |
---|---|---|
committer | Varun Colbert <vcolbert@nvidia.com> | 2011-11-15 11:52:26 -0800 |
commit | a9d747c7601d7fbb16658746395717be36b34ef3 (patch) | |
tree | ad8e921e5e5c5500f54153e8cdfd9577791cc1a2 /drivers/video/tegra/host/t20/cdma_t20.c | |
parent | 17039fec9ef8c71bc3ec77ed8bb131f077a3f8a5 (diff) |
video: tegra: host: Sync 3D wait base only on timeout
Synchronize 3D wait base only when there is a timeout.
Bug 886411
Reviewed-on: http://git-master/r/62656
(cherry picked from commit 1f660b9ea615331624dcf8a923e7779fa3bcd48a)
Change-Id: I085342ae2d9808c1284d59222f968835bd469921
Reviewed-on: http://git-master/r/64060
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
Diffstat (limited to 'drivers/video/tegra/host/t20/cdma_t20.c')
-rw-r--r-- | drivers/video/tegra/host/t20/cdma_t20.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/video/tegra/host/t20/cdma_t20.c b/drivers/video/tegra/host/t20/cdma_t20.c index eafaac9d6d54..22a08e80537b 100644 --- a/drivers/video/tegra/host/t20/cdma_t20.c +++ b/drivers/video/tegra/host/t20/cdma_t20.c @@ -282,7 +282,7 @@ static void t20_cdma_timeout_destroy(struct nvhost_cdma *cdma) * Increment timedout buffer's syncpt via CPU. */ static void t20_cdma_timeout_cpu_incr(struct nvhost_cdma *cdma, u32 getptr, - u32 syncpt_incrs, u32 nr_slots) + u32 syncpt_incrs, u32 syncval, u32 nr_slots) { struct nvhost_master *dev = cdma_to_dev(cdma); struct push_buffer *pb = &cdma->push_buffer; @@ -299,7 +299,7 @@ static void t20_cdma_timeout_cpu_incr(struct nvhost_cdma *cdma, u32 getptr, void __iomem *p; p = dev->sync_aperture + HOST1X_SYNC_SYNCPT_BASE_0 + (NVWAITBASE_3D * sizeof(u32)); - writel(readl(p) + syncpt_incrs, p); + writel(syncval, p); } /* NOP all the PB slots */ |