瀏覽代碼

atyfb: halve XCLK with Mobility and 32bit memory

Laptops with Rage Mobility and 32bit memory interface seem to require halved
XCLK to operate correctly.

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>
Ville Syrjala 18 年之前
父節點
當前提交
159dde9369
共有 2 個文件被更改,包括 4 次插入0 次删除
  1. 3 0
      drivers/video/aty/atyfb_base.c
  2. 1 0
      include/video/mach64.h

+ 3 - 0
drivers/video/aty/atyfb_base.c

@@ -2377,6 +2377,9 @@ static int __devinit aty_init(struct fb_info *info)
 		/* for many chips, the mclk is 67 MHz for SDRAM, 63 MHz otherwise */
 		if (par->pll_limits.mclk == 67 && par->ram_type < SDRAM)
 			par->pll_limits.mclk = 63;
+		/* Mobility + 32bit memory interface need halved XCLK. */
+		if (M64_HAS(MOBIL_BUS) && par->ram_type == SDRAM32)
+			par->pll_limits.xclk = (par->pll_limits.xclk + 1) >> 1;
 	}
 #endif
 

+ 1 - 0
include/video/mach64.h

@@ -885,6 +885,7 @@
 #define SDRAM			4
 #define SGRAM			5
 #define WRAM			6
+#define SDRAM32			6
 
 #define DAC_INTERNAL		0x00
 #define DAC_IBMRGB514		0x01