drm/i915: Explain why we need to write DPLL twice
... it's because setting the Pixel Multiply bits only takes effect once the PLL is enabled and stable. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
parent
17fe698110
commit
a589b9f429
|
@ -4089,13 +4089,13 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc,
|
|||
}
|
||||
I915_WRITE(DPLL_MD(pipe), temp);
|
||||
} else {
|
||||
/* write it again -- the BIOS does, after all */
|
||||
/* The pixel multiplier can only be updated once the
|
||||
* DPLL is enabled and the clocks are stable.
|
||||
*
|
||||
* So write it again.
|
||||
*/
|
||||
I915_WRITE(dpll_reg, dpll);
|
||||
}
|
||||
|
||||
/* Wait for the clocks to stabilize. */
|
||||
POSTING_READ(dpll_reg);
|
||||
udelay(150);
|
||||
}
|
||||
|
||||
intel_crtc->lowfreq_avail = false;
|
||||
|
|
Loading…
Reference in a new issue