diff options
author | Deepak Nibade <dnibade@nvidia.com> | 2014-05-15 03:56:03 -0400 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2015-03-18 15:09:51 -0400 |
commit | dadaa5af564e9c5da56931c8f48882f985d5c5d1 (patch) | |
tree | dacca6d0b576c1770e49abd5fe0dcce292c87190 /drivers/gpu/nvgpu/gk20a | |
parent | 48239f5f8cb5763cf4b6dc5db4668257da153cf9 (diff) |
gpu: nvgpu: gk20a: fix syncpt names for gk20a
nvhost_get_syncpt_host_managed() creates syncpt name based on
platform_device pointer passed to it
Passing host1x's pointer to this API results in setting gk20a
syncpt names as "host1x_0" which is conflicting
Hence to restore this pass gk20a's device pointer
which gives syncpt names as "gk20a.0_0"
Also, add a syncpt check for sycnpt received.
Bug 1305024
Change-Id: I4ff96c7c9ebff2dca385c5787a85b4a9451b9514
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: http://git-master/r/410121
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Arto Merilainen <amerilainen@nvidia.com>
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c index 55ee5181..10a1001e 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c | |||
@@ -344,7 +344,12 @@ gk20a_channel_syncpt_create(struct channel_gk20a *c) | |||
344 | 344 | ||
345 | sp->c = c; | 345 | sp->c = c; |
346 | sp->host1x_pdev = c->g->host1x_dev; | 346 | sp->host1x_pdev = c->g->host1x_dev; |
347 | sp->id = nvhost_get_syncpt_host_managed(sp->host1x_pdev, c->hw_chid); | 347 | sp->id = nvhost_get_syncpt_host_managed(c->g->dev, c->hw_chid); |
348 | if (!sp->id) { | ||
349 | kfree(sp); | ||
350 | gk20a_err(&c->g->dev->dev, "failed to get free syncpt"); | ||
351 | return NULL; | ||
352 | } | ||
348 | 353 | ||
349 | sp->ops.wait_cpu = gk20a_channel_syncpt_wait_cpu; | 354 | sp->ops.wait_cpu = gk20a_channel_syncpt_wait_cpu; |
350 | sp->ops.is_expired = gk20a_channel_syncpt_is_expired; | 355 | sp->ops.is_expired = gk20a_channel_syncpt_is_expired; |