projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e2822b7
)
drm/nvc0/fifo: use runlist event instead of polling
author
Ben Skeggs
<bskeggs@redhat.com>
Fri, 21 Feb 2014 15:05:01 +0000
(
01:05
+1000)
committer
Ben Skeggs
<bskeggs@redhat.com>
Wed, 26 Mar 2014 04:00:45 +0000
(14:00 +1000)
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/core/engine/fifo/nvc0.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/nouveau/core/engine/fifo/nvc0.c
b/drivers/gpu/drm/nouveau/core/engine/fifo/nvc0.c
index 97416c6a0d1b3843238a6d078e8a3d238624d422..d39651695029ceb9f90ed51f987a1cf703f2169e 100644
(file)
--- a/
drivers/gpu/drm/nouveau/core/engine/fifo/nvc0.c
+++ b/
drivers/gpu/drm/nouveau/core/engine/fifo/nvc0.c
@@
-96,8
+96,10
@@
nvc0_fifo_runlist_update(struct nvc0_fifo_priv *priv)
nv_wr32(priv, 0x002270, cur->addr >> 12);
nv_wr32(priv, 0x002274, 0x01f00000 | (p >> 3));
- if (!nv_wait(priv, 0x00227c, 0x00100000, 0x00000000))
- nv_error(priv, "runlist update failed\n");
+ if (wait_event_timeout(priv->runlist.wait,
+ !(nv_rd32(priv, 0x00227c) & 0x00100000),
+ msecs_to_jiffies(2000)) == 0)
+ nv_error(priv, "runlist update timeout\n");
mutex_unlock(&nv_subdev(priv)->mutex);
}