]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
gma500: Fix Poulsbo suspend/resume crash on devices with SDVO ports
authorAlan Cox <alan@linux.intel.com>
Mon, 21 May 2012 14:27:44 +0000 (15:27 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 1 Jun 2012 07:18:24 +0000 (15:18 +0800)
commit 7beff62ee39d3ccf088bb77f61a63037f714d235 upstream.

Reported-by: Guillaume Clément <guillaume@baobob.org>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/gma500/psb_device.c

index 95d163e4f1f465e5c6d44ee502f4d98e858e1f4b..328a19309f01c702bebdd09c4f06e07031a6aeca 100644 (file)
@@ -197,7 +197,8 @@ static int psb_save_display_registers(struct drm_device *dev)
        }
 
        list_for_each_entry(connector, &dev->mode_config.connector_list, head)
-               connector->funcs->save(connector);
+               if (connector->funcs->save)
+                       connector->funcs->save(connector);
 
        mutex_unlock(&dev->mode_config.mutex);
        return 0;
@@ -235,7 +236,8 @@ static int psb_restore_display_registers(struct drm_device *dev)
                        crtc->funcs->restore(crtc);
 
        list_for_each_entry(connector, &dev->mode_config.connector_list, head)
-               connector->funcs->restore(connector);
+               if (connector->funcs->restore)
+                       connector->funcs->restore(connector);
 
        mutex_unlock(&dev->mode_config.mutex);
        return 0;