--- linux-source-2.6.32/drivers/video/uvesafb.c.orig 2010-05-03 05:18:42.000000000 +0200 +++ linux-source-2.6.32/drivers/video/uvesafb.c 2010-05-03 19:54:29.000000000 +0200 @@ -1743,7 +1743,19 @@ static int __devinit uvesafb_probe(struc goto out_mode; } - info->screen_base = ioremap(info->fix.smem_start, info->fix.smem_len); + switch (mtrr) { + case 1: /* uncachable */ + info->screen_base = ioremap_nocache(info->fix.smem_start, info->fix.smem_len); + break; + case 2: /* write-back */ + case 3: /* write-combining */ + case 4: /* write-through */ + info->screen_base = ioremap_wc(info->fix.smem_start, info->fix.smem_len); + break; + default: + info->screen_base = ioremap(info->fix.smem_start, info->fix.smem_len); + break; + } if (!info->screen_base) { printk(KERN_ERR