diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2013-12-04 07:13:58 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2013-12-17 19:49:08 -0500 |
commit | 73e9efd4bddbf42d2938a150ba680b73b6126b77 (patch) | |
tree | 146a8b66778c04efcd05f7b22c4fcb13c859ff7f /drivers/gpu/drm/omapdrm/omap_fb.c | |
parent | ee61c7303f84e2ef978aaed9b9640476c63ba586 (diff) |
drm: Push dirtyfb ioctl kms locking down to drivers
Not all drivers will need take all the modeset locks for dirtyfb, so
push the locking down to the drivers.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/omapdrm/omap_fb.c')
-rw-r--r-- | drivers/gpu/drm/omapdrm/omap_fb.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/omapdrm/omap_fb.c b/drivers/gpu/drm/omapdrm/omap_fb.c index f2b8f0668c0c..f466c4aaee94 100644 --- a/drivers/gpu/drm/omapdrm/omap_fb.c +++ b/drivers/gpu/drm/omapdrm/omap_fb.c | |||
@@ -123,12 +123,16 @@ static int omap_framebuffer_dirty(struct drm_framebuffer *fb, | |||
123 | { | 123 | { |
124 | int i; | 124 | int i; |
125 | 125 | ||
126 | drm_modeset_lock_all(fb->dev); | ||
127 | |||
126 | for (i = 0; i < num_clips; i++) { | 128 | for (i = 0; i < num_clips; i++) { |
127 | omap_framebuffer_flush(fb, clips[i].x1, clips[i].y1, | 129 | omap_framebuffer_flush(fb, clips[i].x1, clips[i].y1, |
128 | clips[i].x2 - clips[i].x1, | 130 | clips[i].x2 - clips[i].x1, |
129 | clips[i].y2 - clips[i].y1); | 131 | clips[i].y2 - clips[i].y1); |
130 | } | 132 | } |
131 | 133 | ||
134 | drm_modeset_unlock_all(fb->dev); | ||
135 | |||
132 | return 0; | 136 | return 0; |
133 | } | 137 | } |
134 | 138 | ||