| Intel 830M/845G/852GM/855GM/865G/915G/945G Framebuffer driver | 
 | ================================================================ | 
 |  | 
 | A. Introduction | 
 | 	This is a framebuffer driver for various Intel 8xx/9xx compatible | 
 | graphics devices.  These would include: | 
 |  | 
 | 	Intel 830M | 
 | 	Intel 845G | 
 | 	Intel 852GM | 
 | 	Intel 855GM | 
 | 	Intel 865G | 
 | 	Intel 915G | 
 | 	Intel 915GM | 
 | 	Intel 945G | 
 | 	Intel 945GM | 
 | 	Intel 945GME | 
 | 	Intel 965G | 
 | 	Intel 965GM | 
 |  | 
 | B.  List of available options | 
 |  | 
 |    a. "video=intelfb" | 
 | 	enables the intelfb driver | 
 |  | 
 | 	Recommendation: required | 
 |  | 
 |    b. "mode=<xres>x<yres>[-<bpp>][@<refresh>]" | 
 | 	select mode | 
 |  | 
 | 	Recommendation: user preference | 
 | 	(default = 1024x768-32@70) | 
 |  | 
 |    c. "vram=<value>" | 
 | 	select amount of system RAM in MB to allocate for the video memory | 
 | 	if not enough RAM was already allocated by the BIOS. | 
 |  | 
 | 	Recommendation: 1 - 4 MB. | 
 | 	(default = 4 MB) | 
 |  | 
 |    d. "voffset=<value>" | 
 |         select at what offset in MB of the logical memory to allocate the | 
 | 	framebuffer memory.  The intent is to avoid the memory blocks | 
 | 	used by standard graphics applications (XFree86). Depending on your | 
 |         usage, adjust the value up or down, (0 for maximum usage, 63/127 MB | 
 |         for the least amount).  Note, an arbitrary setting may conflict | 
 |         with XFree86. | 
 |  | 
 | 	Recommendation: do not set | 
 | 	(default = 48 MB) | 
 |  | 
 |    e. "accel" | 
 | 	enable text acceleration.  This can be enabled/reenabled anytime | 
 | 	by using 'fbset -accel true/false'. | 
 |  | 
 | 	Recommendation: enable | 
 | 	(default = set) | 
 |  | 
 |    f. "hwcursor" | 
 | 	enable cursor acceleration. | 
 |  | 
 | 	Recommendation: enable | 
 | 	(default = set) | 
 |  | 
 |    g. "mtrr" | 
 | 	enable MTRR.  This allows data transfers to the framebuffer memory | 
 | 	to occur in bursts which can significantly increase performance. | 
 | 	Not very helpful with the intel chips because of 'shared memory'. | 
 |  | 
 | 	Recommendation: set | 
 | 	(default = set) | 
 |  | 
 |    h. "fixed" | 
 | 	disable mode switching. | 
 |  | 
 | 	Recommendation: do not set | 
 | 	(default = not set) | 
 |  | 
 |    The binary parameters can be unset with a "no" prefix, example "noaccel". | 
 |    The default parameter (not named) is the mode. | 
 |  | 
 | C. Kernel booting | 
 |  | 
 | Separate each option/option-pair by commas (,) and the option from its value | 
 | with an equals sign (=) as in the following: | 
 |  | 
 | video=intelfb:option1,option2=value2 | 
 |  | 
 | Sample Usage | 
 | ------------ | 
 |  | 
 | In /etc/lilo.conf, add the line: | 
 |  | 
 | append="video=intelfb:mode=800x600-32@75,accel,hwcursor,vram=8" | 
 |  | 
 | This will initialize the framebuffer to 800x600 at 32bpp and 75Hz. The | 
 | framebuffer will use 8 MB of System RAM. hw acceleration of text and cursor | 
 | will be enabled. | 
 |  | 
 | Remarks | 
 | ------- | 
 |  | 
 | If setting this parameter doesn't work (you stay in a 80x25 text-mode), | 
 | you might need to set the "vga=<mode>" parameter too - see vesafb.txt | 
 | in this directory. | 
 |  | 
 |  | 
 | D.  Module options | 
 |  | 
 | 	The module parameters are essentially similar to the kernel | 
 | parameters. The main difference is that you need to include a Boolean value | 
 | (1 for TRUE, and 0 for FALSE) for those options which don't need a value. | 
 |  | 
 | Example, to enable MTRR, include "mtrr=1". | 
 |  | 
 | Sample Usage | 
 | ------------ | 
 |  | 
 | Using the same setup as described above, load the module like this: | 
 |  | 
 | 	modprobe intelfb mode=800x600-32@75 vram=8 accel=1 hwcursor=1 | 
 |  | 
 | Or just add the following to a configuration file in /etc/modprobe.d/ | 
 |  | 
 | 	options intelfb mode=800x600-32@75 vram=8 accel=1 hwcursor=1 | 
 |  | 
 | and just do a | 
 |  | 
 | 	modprobe intelfb | 
 |  | 
 |  | 
 | E.  Acknowledgment: | 
 |  | 
 | 	1.  Geert Uytterhoeven - his excellent howto and the virtual | 
 |                                  framebuffer driver code made this possible. | 
 |  | 
 | 	2.  Jeff Hartmann for his agpgart code. | 
 |  | 
 | 	3.  David Dawes for his original kernel 2.4 code. | 
 |  | 
 | 	4.  The X developers.  Insights were provided just by reading the | 
 | 	    XFree86 source code. | 
 |  | 
 | 	5.  Antonino A. Daplas for his inspiring i810fb driver. | 
 |  | 
 | 	6.  Andrew Morton for his kernel patches maintenance. | 
 |  | 
 | ########################### | 
 | Sylvain |