aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2015-03-22 19:34:32 -0400
committerDave Airlie <airlied@redhat.com>2015-03-22 19:34:32 -0400
commitae10c2248593fb84c6951d67c98c9c934997e56a (patch)
tree6f8d0348fc13a398bf777cda1f26f006298a34ba
parente8b6fe6990643daac9bccbe957a253a7e6bf947d (diff)
parent6dbe686b598912051a976bb351bdd06e4abf7c49 (diff)
Merge branch 'drm/next/rcar-du' of git://linuxtv.org/pinchartl/fbdev into drm-next
rcar-du fixes * 'drm/next/rcar-du' of git://linuxtv.org/pinchartl/fbdev: drm: rcar-du: Enable the atomic updates API drm: rcar-du: Don't initialize event->pipe field drm: rcar-du: Fix framebuffer reference leak through plane state MAINTAINERS: Remove rcar-du.h entry
-rw-r--r--MAINTAINERS1
-rw-r--r--drivers/gpu/drm/rcar-du/rcar_du_crtc.c2
-rw-r--r--drivers/gpu/drm/rcar-du/rcar_du_drv.c3
-rw-r--r--drivers/gpu/drm/rcar-du/rcar_du_plane.c3
4 files changed, 5 insertions, 4 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index 6239a305dff0..ab44a48d53bb 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3378,7 +3378,6 @@ T: git git://people.freedesktop.org/~airlied/linux
3378S: Supported 3378S: Supported
3379F: drivers/gpu/drm/rcar-du/ 3379F: drivers/gpu/drm/rcar-du/
3380F: drivers/gpu/drm/shmobile/ 3380F: drivers/gpu/drm/shmobile/
3381F: include/linux/platform_data/rcar-du.h
3382F: include/linux/platform_data/shmob_drm.h 3381F: include/linux/platform_data/shmob_drm.h
3383 3382
3384DSBR100 USB FM RADIO DRIVER 3383DSBR100 USB FM RADIO DRIVER
diff --git a/drivers/gpu/drm/rcar-du/rcar_du_crtc.c b/drivers/gpu/drm/rcar-du/rcar_du_crtc.c
index 9e72133bb64b..7d0b8ef9bea2 100644
--- a/drivers/gpu/drm/rcar-du/rcar_du_crtc.c
+++ b/drivers/gpu/drm/rcar-du/rcar_du_crtc.c
@@ -486,8 +486,6 @@ static void rcar_du_crtc_atomic_begin(struct drm_crtc *crtc)
486 unsigned long flags; 486 unsigned long flags;
487 487
488 if (event) { 488 if (event) {
489 event->pipe = rcrtc->index;
490
491 WARN_ON(drm_crtc_vblank_get(crtc) != 0); 489 WARN_ON(drm_crtc_vblank_get(crtc) != 0);
492 490
493 spin_lock_irqsave(&dev->event_lock, flags); 491 spin_lock_irqsave(&dev->event_lock, flags);
diff --git a/drivers/gpu/drm/rcar-du/rcar_du_drv.c b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
index 1d9e4f8568ae..da1216a73969 100644
--- a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
+++ b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
@@ -252,7 +252,8 @@ static const struct file_operations rcar_du_fops = {
252}; 252};
253 253
254static struct drm_driver rcar_du_driver = { 254static struct drm_driver rcar_du_driver = {
255 .driver_features = DRIVER_GEM | DRIVER_MODESET | DRIVER_PRIME, 255 .driver_features = DRIVER_GEM | DRIVER_MODESET | DRIVER_PRIME
256 | DRIVER_ATOMIC,
256 .load = rcar_du_load, 257 .load = rcar_du_load,
257 .unload = rcar_du_unload, 258 .unload = rcar_du_unload,
258 .preclose = rcar_du_preclose, 259 .preclose = rcar_du_preclose,
diff --git a/drivers/gpu/drm/rcar-du/rcar_du_plane.c b/drivers/gpu/drm/rcar-du/rcar_du_plane.c
index 35a2f04ab799..210e5c3fd982 100644
--- a/drivers/gpu/drm/rcar-du/rcar_du_plane.c
+++ b/drivers/gpu/drm/rcar-du/rcar_du_plane.c
@@ -316,6 +316,9 @@ rcar_du_plane_atomic_duplicate_state(struct drm_plane *plane)
316static void rcar_du_plane_atomic_destroy_state(struct drm_plane *plane, 316static void rcar_du_plane_atomic_destroy_state(struct drm_plane *plane,
317 struct drm_plane_state *state) 317 struct drm_plane_state *state)
318{ 318{
319 if (state->fb)
320 drm_framebuffer_unreference(state->fb);
321
319 kfree(to_rcar_du_plane_state(state)); 322 kfree(to_rcar_du_plane_state(state));
320} 323}
321 324