This patch fixes the black screen bug on Dell e6510:
https://bugs.freedesktop.org/show_bug.cgi?id=29278

It adds two delays to give the eDP panel time to turn on before we
continue with the next write.


--- drivers/gpu/drm/i915/intel_dp.c.orig        2010-09-23 20:13:36.046856913 
+0200
+++ drivers/gpu/drm/i915/intel_dp.c     2010-09-23 19:27:00.682282002 +0200
@@ -27,6 +27,7 @@

 #include <linux/i2c.h>
 #include <linux/slab.h>
+#include <linux/delay.h>
 #include "drmP.h"
 #include "drm.h"
 #include "drm_crtc.h"
@@ -772,6 +773,7 @@ static void ironlake_edp_panel_on (struc
        pp |= PANEL_UNLOCK_REGS | POWER_TARGET_ON;
        I915_WRITE(PCH_PP_CONTROL, pp);

+       msleep(300);
        if (wait_for(I915_READ(PCH_PP_STATUS) & PP_ON, 5000, 10))
                DRM_ERROR("panel on wait timed out: 0x%08x\n",
                          I915_READ(PCH_PP_STATUS));
@@ -805,6 +807,7 @@ static void ironlake_edp_panel_off (stru
        pp |= EDP_FORCE_VDD | PANEL_POWER_RESET; /* restore panel reset bit */
        I915_WRITE(PCH_PP_CONTROL, pp);
        POSTING_READ(PCH_PP_CONTROL);
+       msleep(300);
 }
_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to