Messages in this thread Patch in this message | ![/](/images/icornerl.gif) | | From | Thomas Backlund <> | Subject | [PATCH] 2.4.21-rc8 vesafb memory remapping... | Date | Thu, 12 Jun 2003 23:43:49 +0300 |
| |
I noticed that the vesafb still remaps memory according to a calculation done in bits, even if should be done in bytes... This will remap more memory than old cards actually have...
An example: My laptop has 8192 KB of videoram I use it with videomode 1024x768x16
With current vesafb that will translate to 12288 KB remapping
So here is my suggestion, either grab the complete "fix" from rc7-ac1 (wich calculates in bytes), or If you dont like that, my second suggestion is to use the old vesafb code to take care of old cards like this:
----- cut ----- #diff -u rc8/drivers/video/vesafb.c rc8/drivers/video/vesafb.c.new --- rc8/drivers/video/vesafb.c 2003-06-12 23:13:29.000000000 +0300 +++ rc8/drivers/video/vesafb.c.new 2003-06-12 23:18:03.000000000 +0300 @@ -521,6 +521,11 @@ video_height = screen_info.lfb_height; video_linelength = screen_info.lfb_linelength; video_size = screen_info.lfb_width * screen_info.lfb_height * video_bpp; + + /* check that we don't remap more memory than old cards have */ + if (video_size > screen_info.lfb_size * 65536) + video_size = screen_info.lfb_size * 65536; + video_visual = (video_bpp == 8) ? FB_VISUAL_PSEUDOCOLOR : FB_VISUAL_TRUECOLOR;
----- cut ----- Like this we would keep both old and new systems happy AFAIK...
-- Regards
Thomas Backlund
http://www.iki.fi/tmb/ tmb@iki.fi
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| ![\](/images/icornerr.gif) |