diff options
author | Rob Clark <robdclark@gmail.com> | 2014-03-24 09:12:24 -0400 |
---|---|---|
committer | Rob Clark <robdclark@gmail.com> | 2014-03-31 10:27:46 -0400 |
commit | 30b6f8f6792abe582ef25100984a113ac9bc88dd (patch) | |
tree | 63e3bd92ed563fd972ed92ef93f4a7014f37d9fd /drivers/gpu/drm/msm | |
parent | 93ddb0d3b022dfbd963f243bd01741643cebfb28 (diff) |
drm/msm/mdp: add timeout for irq wait
Make things recover a bit more gracefully if we get stuck with no vblank
irq ever coming.
Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm')
-rw-r--r-- | drivers/gpu/drm/msm/mdp/mdp_kms.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/mdp/mdp_kms.c b/drivers/gpu/drm/msm/mdp/mdp_kms.c index 3be48f7c36be..03455b64a245 100644 --- a/drivers/gpu/drm/msm/mdp/mdp_kms.c +++ b/drivers/gpu/drm/msm/mdp/mdp_kms.c @@ -101,7 +101,8 @@ void mdp_irq_wait(struct mdp_kms *mdp_kms, uint32_t irqmask) .count = 1, }; mdp_irq_register(mdp_kms, &wait.irq); - wait_event(wait_event, (wait.count <= 0)); + wait_event_timeout(wait_event, (wait.count <= 0), + msecs_to_jiffies(100)); mdp_irq_unregister(mdp_kms, &wait.irq); } |