drm: Only set DPMS once on the CRTC not after every encoder.
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 6 Aug 2010 14:03:31 +0000 (15:03 +0100)
committerDave Airlie <airlied@redhat.com>
Tue, 10 Aug 2010 00:46:53 +0000 (10:46 +1000)
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/drm_crtc_helper.c

index 11fe9c870d17f5ce07e06786878f99cf40c50307..7b1eb2fcf6165f0f916b922906eff6ed7b0a267a 100644 (file)
@@ -817,12 +817,12 @@ int drm_helper_resume_force_mode(struct drm_device *dev)
                                if (encoder_funcs->dpms)
                                        (*encoder_funcs->dpms) (encoder,
                                                                drm_helper_choose_encoder_dpms(encoder));
-
-                               crtc_funcs = crtc->helper_private;
-                               if (crtc_funcs->dpms)
-                                       (*crtc_funcs->dpms) (crtc,
-                                                            drm_helper_choose_crtc_dpms(crtc));
                        }
+
+                       crtc_funcs = crtc->helper_private;
+                       if (crtc_funcs->dpms)
+                               (*crtc_funcs->dpms) (crtc,
+                                                    drm_helper_choose_crtc_dpms(crtc));
                }
        }
        /* disable the unused connectors while restoring the modesetting */