diff options
author | Jakob Bornecrantz <jakob@vmware.com> | 2010-05-28 11:21:55 +0200 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-06-01 09:36:59 +1000 |
commit | 6a591a96d7315fbe81acc33e20bab4956d1f02a3 (patch) | |
tree | 8be64f96e6ab6c766a66d6a86fefcc3d3f5b2901 /drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | |
parent | 7e71f8a59e1c9adbbc3b737b4b818c8aa4169d0e (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/vmwgfx_ldu.c')
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 3 |
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 90891593bf6..a348fec2213 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, if (list_empty(&ldu->active)) return 0; + /* Must init otherwise list_empty(&ldu->active) will not work. */ list_del_init(&ldu->active); if (--(ld->num_active) == 0) { BUG_ON(!ld->fb); @@ -208,6 +209,8 @@ static int vmw_ldu_crtc_set_config(struct drm_mode_set *set) /* ldu only supports one fb active at the time */ if (dev_priv->ldu_priv->fb && vfb && + !(dev_priv->ldu_priv->num_active == 1 && + !list_empty(&ldu->active)) && dev_priv->ldu_priv->fb != vfb) { DRM_ERROR("Multiple framebuffers not supported\n"); return -EINVAL; |