diff options
author | Dave Airlie <airlied@linux.ie> | 2006-05-27 18:56:02 +1000 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2006-05-27 18:56:02 +1000 |
commit | f728377f6786bcdf1dbf33394360164e86f40094 (patch) | |
tree | e1651c2772f53ebe28f135c024b619834ae5eca2 | |
parent | c9daa873c3a7c769821ec6c8258adf098bb0435c (diff) |
sync modesetting code with X.org
Signed-off-by: Dave Airlie <airlied@linux.ie>
-rw-r--r-- | drivers/video/intelfb/intelfbhw.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/video/intelfb/intelfbhw.c b/drivers/video/intelfb/intelfbhw.c index 5a621df5bf0..16c9c192b4b 100644 --- a/drivers/video/intelfb/intelfbhw.c +++ b/drivers/video/intelfb/intelfbhw.c @@ -1359,6 +1359,10 @@ intelfbhw_program_mode(struct intelfb_info *dinfo, /* Wait for vblank. For now, just wait for a 50Hz cycle (20ms)) */ mdelay(20); + OUTREG(DVOB, INREG(DVOB) & ~PORT_ENABLE); + OUTREG(DVOC, INREG(DVOC) & ~PORT_ENABLE); + OUTREG(ADPA, INREG(ADPA) & ~ADPA_DAC_ENABLE); + /* Disable Sync */ tmp = INREG(ADPA); tmp &= ~ADPA_DPMS_CONTROL_MASK; @@ -1374,14 +1378,11 @@ intelfbhw_program_mode(struct intelfb_info *dinfo, OUTREG(dpll_reg, tmp); /* Set PLL parameters */ - OUTREG(dpll_reg, *dpll & ~DPLL_VCO_ENABLE); OUTREG(fp0_reg, *fp0); OUTREG(fp1_reg, *fp1); /* Enable PLL */ - tmp = INREG(dpll_reg); - tmp |= DPLL_VCO_ENABLE; - OUTREG(dpll_reg, tmp); + OUTREG(dpll_reg, *dpll); /* Set DVOs B/C */ OUTREG(DVOB, hw->dvob); |