mirror of
https://github.com/torvalds/linux.git
synced 2024-12-14 15:13:52 +00:00
drm/nv11: Fix bad PLL detection false positive.
Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
327ceae664
commit
5eb94fbba3
@ -519,11 +519,11 @@ nouveau_hw_fix_bad_vpll(struct drm_device *dev, int head)
|
||||
|
||||
struct pll_lims pll_lim;
|
||||
struct nouveau_pll_vals pv;
|
||||
uint32_t pllreg = head ? NV_RAMDAC_VPLL2 : NV_PRAMDAC_VPLL_COEFF;
|
||||
enum pll_types pll = head ? PLL_VPLL1 : PLL_VPLL0;
|
||||
|
||||
if (get_pll_limits(dev, pllreg, &pll_lim))
|
||||
if (get_pll_limits(dev, pll, &pll_lim))
|
||||
return;
|
||||
nouveau_hw_get_pllvals(dev, pllreg, &pv);
|
||||
nouveau_hw_get_pllvals(dev, pll, &pv);
|
||||
|
||||
if (pv.M1 >= pll_lim.vco1.min_m && pv.M1 <= pll_lim.vco1.max_m &&
|
||||
pv.N1 >= pll_lim.vco1.min_n && pv.N1 <= pll_lim.vco1.max_n &&
|
||||
@ -536,7 +536,7 @@ nouveau_hw_fix_bad_vpll(struct drm_device *dev, int head)
|
||||
pv.M1 = pll_lim.vco1.max_m;
|
||||
pv.N1 = pll_lim.vco1.min_n;
|
||||
pv.log2P = pll_lim.max_usable_log2p;
|
||||
nouveau_hw_setpll(dev, pllreg, &pv);
|
||||
nouveau_hw_setpll(dev, pll_lim.reg, &pv);
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user