diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2012-08-22 15:03:07 +0300 |
---|---|---|
committer | Simone Willett <swillett@nvidia.com> | 2012-08-23 14:45:51 -0700 |
commit | 255b6f0b8936112beed3dcd403b2a57a163aa215 (patch) | |
tree | daace2a95d970540fb20dbe0579349fcbe944ad7 /drivers/video/tegra/host/host1x/host1x_channel.c | |
parent | 13694b6bf1dc4572752e13d42f278aa9b624f043 (diff) |
video: tegra: host: Clear intr list at intr_put
Process wait list when removing a waiter. This clears the interrupt
once it is no longer needed.
Bug 1031724
Change-Id: Ifb46672f70c8bbd6359d0a8aeaac0d718a5394b2
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: http://git-master/r/125230
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Juha Tukkinen <jtukkinen@nvidia.com>
Diffstat (limited to 'drivers/video/tegra/host/host1x/host1x_channel.c')
-rw-r--r-- | drivers/video/tegra/host/host1x/host1x_channel.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/video/tegra/host/host1x/host1x_channel.c b/drivers/video/tegra/host/host1x/host1x_channel.c index 3c074604b675..0274413ff698 100644 --- a/drivers/video/tegra/host/host1x/host1x_channel.c +++ b/drivers/video/tegra/host/host1x/host1x_channel.c @@ -470,7 +470,8 @@ static int host1x_channel_read_3d_reg( wait_event(wq, nvhost_syncpt_is_expired(&nvhost_get_host(channel->dev)->syncpt, p->syncpt, syncval - 2)); - nvhost_intr_put_ref(&nvhost_get_host(channel->dev)->intr, ref); + nvhost_intr_put_ref(&nvhost_get_host(channel->dev)->intr, p->syncpt, + ref); /* Read the register value from FIFO */ err = host1x_drain_read_fifo(channel, value, 1, &pending); @@ -622,7 +623,7 @@ static int host1x_save_context(struct nvhost_channel *ch) nvhost_syncpt_is_expired(&nvhost_get_host(ch->dev)->syncpt, syncpt_id, syncpt_val)); - nvhost_intr_put_ref(&nvhost_get_host(ch->dev)->intr, ref); + nvhost_intr_put_ref(&nvhost_get_host(ch->dev)->intr, syncpt_id, ref); nvhost_cdma_update(&ch->cdma); |