diff --git a/src/i830_display.c b/src/i830_display.c index f61d3c4..406b8e9 100644 --- a/src/i830_display.c +++ b/src/i830_display.c @@ -1086,6 +1086,11 @@ i830_crtc_mode_set(xf86CrtcPtr crtc, DisplayModePtr mode, if (IS_I965G(pI830)) dpll |= (6 << PLL_LOAD_PULSE_PHASE_SHIFT); } else { + /* for i830M, always set DVO bit to make LVDS work with + * external display */ + if (IS_I830(pI830)) + dpll |= DPLL_DVO_HIGH_SPEED; + if (is_lvds) { dpll |= (1 << (clock.p1 - 1)) << DPLL_FPA01_P1_POST_DIV_SHIFT; } else {