radeon_hd: ss_probe reads the pixel clock; set before calling.

* CID 743876
This commit is contained in:
Alexander von Gluck IV
2015-07-07 15:16:36 -05:00
committed by Alexander von Gluck IV
parent 310cd0e731
commit 0de3a59590
+10 -1
View File
@@ -1002,6 +1002,12 @@ pll_external_set(uint32 clock)
} }
/**
* pll_external_init - Sets external default pll to sane value
*
* Takes the AtomBIOS ulDefaultDispEngineClkFreq and applies it
* back to the card's external PLL clock via SetPixelClock
*/
void void
pll_external_init() pll_external_init()
{ {
@@ -1012,15 +1018,18 @@ pll_external_init()
} else if (info.dceMajor >= 4) { } else if (info.dceMajor >= 4) {
// Create our own pseudo pll // Create our own pseudo pll
pll_info pll; pll_info pll;
pll.pixelClock = gInfo->displayClockFrequency;
pll_asic_ss_probe(&pll, ASIC_INTERNAL_SS_ON_DCPLL); pll_asic_ss_probe(&pll, ASIC_INTERNAL_SS_ON_DCPLL);
if (pll.ssEnabled) if (pll.ssEnabled)
display_crtc_ss(&pll, ATOM_DISABLE); display_crtc_ss(&pll, ATOM_DISABLE);
pll_external_set(gInfo->displayClockFrequency); pll_external_set(pll.pixelClock);
if (pll.ssEnabled) if (pll.ssEnabled)
display_crtc_ss(&pll, ATOM_ENABLE); display_crtc_ss(&pll, ATOM_ENABLE);
} }
} }
/** /**
* pll_usage_mask - Calculate which PLL's are in use * pll_usage_mask - Calculate which PLL's are in use
* *