diff options
-rw-r--r-- | src/i830_display.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/i830_display.c b/src/i830_display.c index adc7479e..69653377 100644 --- a/src/i830_display.c +++ b/src/i830_display.c @@ -958,11 +958,17 @@ i830_crtc_mode_set(xf86CrtcPtr crtc, DisplayModePtr mode, else pipeconf &= ~PIPEACONF_DOUBLE_WIDE; } -#if 1 - dspcntr |= DISPLAY_PLANE_ENABLE; - pipeconf |= PIPEACONF_ENABLE; - dpll |= DPLL_VCO_ENABLE; -#endif + /* + * This "shouldn't" be needed as the dpms on code + * will be run after the mode is set. On 9xx, it helps. + * On 855, it can lock up the chip (and the entire machine) + */ + if (IS_I9XX (pI830)) + { + dspcntr |= DISPLAY_PLANE_ENABLE; + pipeconf |= PIPEACONF_ENABLE; + dpll |= DPLL_VCO_ENABLE; + } /* Disable the panel fitter if it was on our pipe */ if (i830_panel_fitter_pipe (pI830) == pipe) |