diff options
author | Ville Syrjala <syrjala@sci.fi> | 2007-05-08 00:39:47 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-08 11:15:32 -0700 |
commit | 159dde93692ef549a0b2012c9f25feb4df638c9c (patch) | |
tree | 177bcb3ca3210664d3f594acaa560b8d9b8aa5bc | |
parent | b4e124c138558a0cff51398ddff9a8e44ed0b529 (diff) |
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>
-rw-r--r-- | drivers/video/aty/atyfb_base.c | 3 | ||||
-rw-r--r-- | include/video/mach64.h | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/drivers/video/aty/atyfb_base.c b/drivers/video/aty/atyfb_base.c index b61ab3b4c922..ea67dd902d4e 100644 --- a/drivers/video/aty/atyfb_base.c +++ b/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 diff --git a/include/video/mach64.h b/include/video/mach64.h index 09a7f4a7289f..a8332e528ec1 100644 --- a/include/video/mach64.h +++ b/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 |