diff options
-rw-r--r-- | drivers/video/tegra/host/host1x/host1x_syncpt.c | 6 | ||||
-rw-r--r-- | drivers/video/tegra/host/nvhost_syncpt.c | 3 |
2 files changed, 5 insertions, 4 deletions
diff --git a/drivers/video/tegra/host/host1x/host1x_syncpt.c b/drivers/video/tegra/host/host1x/host1x_syncpt.c index 622c8e049a7b..663bd0a4d42c 100644 --- a/drivers/video/tegra/host/host1x/host1x_syncpt.c +++ b/drivers/video/tegra/host/host1x/host1x_syncpt.c @@ -93,10 +93,10 @@ static void t20_syncpt_cpu_incr(struct nvhost_syncpt *sp, u32 id) BUG_ON(!nvhost_module_powered(dev->dev)); if (!client_managed(id) && nvhost_syncpt_min_eq_max(sp, id)) { dev_err(&syncpt_to_dev(sp)->pdev->dev, - "Syncpoint id %d\n", - id); + "Trying to increment syncpoint id %d beyond max\n", + id); nvhost_debug_dump(syncpt_to_dev(sp)); - BUG(); + return; } writel(BIT(id), dev->sync_aperture + HOST1X_SYNC_SYNCPT_CPU_INCR); wmb(); diff --git a/drivers/video/tegra/host/nvhost_syncpt.c b/drivers/video/tegra/host/nvhost_syncpt.c index 04c6e917a84c..7172698e06ca 100644 --- a/drivers/video/tegra/host/nvhost_syncpt.c +++ b/drivers/video/tegra/host/nvhost_syncpt.c @@ -113,7 +113,8 @@ void nvhost_syncpt_cpu_incr(struct nvhost_syncpt *sp, u32 id) */ void nvhost_syncpt_incr(struct nvhost_syncpt *sp, u32 id) { - nvhost_syncpt_incr_max(sp, id, 1); + if (client_managed(id)) + nvhost_syncpt_incr_max(sp, id, 1); nvhost_module_busy(syncpt_to_dev(sp)->dev); nvhost_syncpt_cpu_incr(sp, id); nvhost_module_idle(syncpt_to_dev(sp)->dev); |