The cdclock sanitization patch reviewed and merged at -
http://patchwork.freedesktop.org/patch/msgid/[email protected]

made the assumptions that DPLL should not be enabled when pre-os does not 
enable display and if it does then verify that the cdclock is corectly 
programmed as well. The BIOS was actually enabling DPLL as well while not 
following BSPEC sequence and writing cdclk register directly. I was working 
with BIOS team to correct this and found that due to a WA needed where audio 
codec will not be enumerated in OS if BIOS did not program the audio verbs 
which needed PG2 and DPLL enabling. More discussion revealed the following 
logic - 

1. BIOS puts max cdclk for the platform in CDCLK_CTL. VBIOS/GOP reads that 
value and then programs cdclk to desired value.
2. It also then sets SWF18 to indicate to the OS that it has enabled display. 
Used for fastmodeset actually in windows.
3. It also sets SWF06 with this max cdclock(from what bios programmed in 
CDCLK_CTL) for OS to know.

This patch uses point 2 above while sanitizing the cdclk. We can also update 
our logic for deciding max cdclock based on SWF06 if pre-os enables else 
directly from CDCLK_CTL (no pre-os display). That is not part of this patch.

Shobhit Kumar (1):
  drm/i915/skl: While sanitizing cdclock check the SWF18 as well

 drivers/gpu/drm/i915/i915_reg.h      | 3 +++
 drivers/gpu/drm/i915/intel_display.c | 8 ++++++++
 2 files changed, 11 insertions(+)

-- 
2.4.3

_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to