atyfb: reorganize clock init
Reorganize atyfb clock init code so command line clock overrides are effective for all chips. The old code would silently ignore some of the command line clock overrides with some chips. Signed-off-by: Antonino Daplas <adaplas@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
94f45bcd1c
commit
b4e124c138
@ -2297,20 +2297,6 @@ static int __devinit aty_init(struct fb_info *info)
|
||||
par->pll_limits.xclk = 53;
|
||||
}
|
||||
#endif
|
||||
if (pll)
|
||||
par->pll_limits.pll_max = pll;
|
||||
if (mclk)
|
||||
par->pll_limits.mclk = mclk;
|
||||
if (xclk)
|
||||
par->pll_limits.xclk = xclk;
|
||||
|
||||
aty_calc_mem_refresh(par, par->pll_limits.xclk);
|
||||
par->pll_per = 1000000/par->pll_limits.pll_max;
|
||||
par->mclk_per = 1000000/par->pll_limits.mclk;
|
||||
par->xclk_per = 1000000/par->pll_limits.xclk;
|
||||
|
||||
par->ref_clk_per = 1000000000000ULL / 14318180;
|
||||
xtal = "14.31818";
|
||||
|
||||
#ifdef CONFIG_FB_ATY_GX
|
||||
if (!M64_HAS(INTEGRATED)) {
|
||||
@ -2392,7 +2378,25 @@ static int __devinit aty_init(struct fb_info *info)
|
||||
if (par->pll_limits.mclk == 67 && par->ram_type < SDRAM)
|
||||
par->pll_limits.mclk = 63;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Allow command line to override clocks. */
|
||||
if (pll)
|
||||
par->pll_limits.pll_max = pll;
|
||||
if (mclk)
|
||||
par->pll_limits.mclk = mclk;
|
||||
if (xclk)
|
||||
par->pll_limits.xclk = xclk;
|
||||
|
||||
aty_calc_mem_refresh(par, par->pll_limits.xclk);
|
||||
par->pll_per = 1000000/par->pll_limits.pll_max;
|
||||
par->mclk_per = 1000000/par->pll_limits.mclk;
|
||||
par->xclk_per = 1000000/par->pll_limits.xclk;
|
||||
|
||||
par->ref_clk_per = 1000000000000ULL / 14318180;
|
||||
xtal = "14.31818";
|
||||
|
||||
#ifdef CONFIG_FB_ATY_CT
|
||||
if (M64_HAS(GTB_DSP)) {
|
||||
u8 pll_ref_div = aty_ld_pll_ct(PLL_REF_DIV, par);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user