aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/vmwgfx
diff options
context:
space:
mode:
authorJakob Bornecrantz <jakob@vmware.com>2010-05-28 05:21:55 -0400
committerDave Airlie <airlied@redhat.com>2010-05-31 19:36:59 -0400
commit6a591a96d7315fbe81acc33e20bab4956d1f02a3 (patch)
tree8be64f96e6ab6c766a66d6a86fefcc3d3f5b2901 /drivers/gpu/drm/vmwgfx
parent7e71f8a59e1c9adbbc3b737b4b818c8aa4169d0e (diff)
drm/vmwgfx: Fix single framebuffer detection.
V2: Fix a typo. Signed-off-by: Jakob Bornecrantz <jakob@vmware.com> Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/vmwgfx')
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
index 90891593bf6c..a348fec22137 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
@@ -130,6 +130,7 @@ static int vmw_ldu_del_active(struct vmw_private *vmw_priv,
130 if (list_empty(&ldu->active)) 130 if (list_empty(&ldu->active))
131 return 0; 131 return 0;
132 132
133 /* Must init otherwise list_empty(&ldu->active) will not work. */
133 list_del_init(&ldu->active); 134 list_del_init(&ldu->active);
134 if (--(ld->num_active) == 0) { 135 if (--(ld->num_active) == 0) {
135 BUG_ON(!ld->fb); 136 BUG_ON(!ld->fb);
@@ -208,6 +209,8 @@ static int vmw_ldu_crtc_set_config(struct drm_mode_set *set)
208 209
209 /* ldu only supports one fb active at the time */ 210 /* ldu only supports one fb active at the time */
210 if (dev_priv->ldu_priv->fb && vfb && 211 if (dev_priv->ldu_priv->fb && vfb &&
212 !(dev_priv->ldu_priv->num_active == 1 &&
213 !list_empty(&ldu->active)) &&
211 dev_priv->ldu_priv->fb != vfb) { 214 dev_priv->ldu_priv->fb != vfb) {
212 DRM_ERROR("Multiple framebuffers not supported\n"); 215 DRM_ERROR("Multiple framebuffers not supported\n");
213 return -EINVAL; 216 return -EINVAL;