nvidiafb: Some chipsets need a buffer pitch divisible by 64
PATCH 6/10 nvidiafb: Some chipsets need a buffer pitch divisible by 64
The Geforce2 cards crashes at 800x600-8, but not at 640x480 or 1024x768. Changing the xres_virtual to be divisible by 64 fixes the problem.
Signed-off-by Antonino Daplas <[email protected]>
---
nvidia.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-)
drivers/video/nvidia/nvidia.c +3 -2
@@ -1099,7 +1099,6 @@ var->transp.length =0 ; var->xres &= ~7 ; - var->xres_virtual &= ~7 ;if (var->bits_per_pixel <=8 ) var->bits_per_pixel =8 ;
@@ -1179,6 +1178,8 @@if (var->xres_virtual < var->xres) var->xres_virtual = var->xres; + var->xres_virtual = (var->xres_virtual +63 ) & ~63 ; + vramlen = info->fix.smem_len; pitch = ((var->xres_virtual * var->bits_per_pixel) +7 ) /8 ; memlen = pitch * var->yres_virtual;
@@ -1212,7 +1213,7 @@ var->xres_virtual =0x7fff ; } - var->xres_virtual &= ~8 ; + var->xres_virtual &= ~63 ;NVTRACE_LEAVE ();
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click