Christian Merkle | d463d34 | 2006-08-22 10:07:01 +1000 | [diff] [blame] | 1 | Intel 830M/845G/852GM/855GM/865G/915G/945G Framebuffer driver |
Sylvain Meyer | 4ff45f5 | 2005-06-21 17:17:03 -0700 | [diff] [blame] | 2 | ================================================================ |
| 3 | |
| 4 | A. Introduction |
Christian Merkle | d463d34 | 2006-08-22 10:07:01 +1000 | [diff] [blame] | 5 | This is a framebuffer driver for various Intel 8xx/9xx compatible |
Sylvain Meyer | 4ff45f5 | 2005-06-21 17:17:03 -0700 | [diff] [blame] | 6 | graphics devices. These would include: |
| 7 | |
| 8 | Intel 830M |
Christian Merkle | d463d34 | 2006-08-22 10:07:01 +1000 | [diff] [blame] | 9 | Intel 845G |
Sylvain Meyer | 4ff45f5 | 2005-06-21 17:17:03 -0700 | [diff] [blame] | 10 | Intel 852GM |
| 11 | Intel 855GM |
| 12 | Intel 865G |
| 13 | Intel 915G |
Christian Merkle | d463d34 | 2006-08-22 10:07:01 +1000 | [diff] [blame] | 14 | Intel 915GM |
| 15 | Intel 945G |
| 16 | Intel 945GM |
Phil Endecott | 3f7a26b | 2008-10-15 22:03:35 -0700 | [diff] [blame] | 17 | Intel 945GME |
Maik Broemme | 0e170c7 | 2008-04-28 02:15:43 -0700 | [diff] [blame] | 18 | Intel 965G |
| 19 | Intel 965GM |
Sylvain Meyer | 4ff45f5 | 2005-06-21 17:17:03 -0700 | [diff] [blame] | 20 | |
| 21 | B. List of available options |
| 22 | |
| 23 | a. "video=intelfb" |
| 24 | enables the intelfb driver |
| 25 | |
| 26 | Recommendation: required |
| 27 | |
| 28 | b. "mode=<xres>x<yres>[-<bpp>][@<refresh>]" |
| 29 | select mode |
| 30 | |
| 31 | Recommendation: user preference |
| 32 | (default = 1024x768-32@70) |
| 33 | |
| 34 | c. "vram=<value>" |
| 35 | select amount of system RAM in MB to allocate for the video memory |
| 36 | if not enough RAM was already allocated by the BIOS. |
| 37 | |
| 38 | Recommendation: 1 - 4 MB. |
| 39 | (default = 4 MB) |
| 40 | |
| 41 | d. "voffset=<value>" |
| 42 | select at what offset in MB of the logical memory to allocate the |
| 43 | framebuffer memory. The intent is to avoid the memory blocks |
| 44 | used by standard graphics applications (XFree86). Depending on your |
| 45 | usage, adjust the value up or down, (0 for maximum usage, 63/127 MB |
| 46 | for the least amount). Note, an arbitrary setting may conflict |
| 47 | with XFree86. |
| 48 | |
| 49 | Recommendation: do not set |
| 50 | (default = 48 MB) |
| 51 | |
| 52 | e. "accel" |
| 53 | enable text acceleration. This can be enabled/reenabled anytime |
| 54 | by using 'fbset -accel true/false'. |
| 55 | |
| 56 | Recommendation: enable |
| 57 | (default = set) |
| 58 | |
| 59 | f. "hwcursor" |
| 60 | enable cursor acceleration. |
| 61 | |
| 62 | Recommendation: enable |
| 63 | (default = set) |
| 64 | |
| 65 | g. "mtrr" |
| 66 | enable MTRR. This allows data transfers to the framebuffer memory |
| 67 | to occur in bursts which can significantly increase performance. |
| 68 | Not very helpful with the intel chips because of 'shared memory'. |
| 69 | |
| 70 | Recommendation: set |
| 71 | (default = set) |
| 72 | |
| 73 | h. "fixed" |
| 74 | disable mode switching. |
| 75 | |
| 76 | Recommendation: do not set |
| 77 | (default = not set) |
| 78 | |
| 79 | The binary parameters can be unset with a "no" prefix, example "noaccel". |
| 80 | The default parameter (not named) is the mode. |
| 81 | |
| 82 | C. Kernel booting |
| 83 | |
| 84 | Separate each option/option-pair by commas (,) and the option from its value |
| 85 | with an equals sign (=) as in the following: |
| 86 | |
Christian Merkle | d463d34 | 2006-08-22 10:07:01 +1000 | [diff] [blame] | 87 | video=intelfb:option1,option2=value2 |
Sylvain Meyer | 4ff45f5 | 2005-06-21 17:17:03 -0700 | [diff] [blame] | 88 | |
| 89 | Sample Usage |
| 90 | ------------ |
| 91 | |
| 92 | In /etc/lilo.conf, add the line: |
| 93 | |
Ph. Marek | 6bf1d73 | 2006-10-03 01:14:38 -0700 | [diff] [blame] | 94 | append="video=intelfb:mode=800x600-32@75,accel,hwcursor,vram=8" |
Sylvain Meyer | 4ff45f5 | 2005-06-21 17:17:03 -0700 | [diff] [blame] | 95 | |
| 96 | This will initialize the framebuffer to 800x600 at 32bpp and 75Hz. The |
| 97 | framebuffer will use 8 MB of System RAM. hw acceleration of text and cursor |
| 98 | will be enabled. |
| 99 | |
Ph. Marek | 6bf1d73 | 2006-10-03 01:14:38 -0700 | [diff] [blame] | 100 | Remarks |
| 101 | ------- |
| 102 | |
| 103 | If setting this parameter doesn't work (you stay in a 80x25 text-mode), |
| 104 | you might need to set the "vga=<mode>" parameter too - see vesafb.txt |
| 105 | in this directory. |
| 106 | |
| 107 | |
Sylvain Meyer | 4ff45f5 | 2005-06-21 17:17:03 -0700 | [diff] [blame] | 108 | D. Module options |
| 109 | |
| 110 | The module parameters are essentially similar to the kernel |
| 111 | parameters. The main difference is that you need to include a Boolean value |
| 112 | (1 for TRUE, and 0 for FALSE) for those options which don't need a value. |
| 113 | |
| 114 | Example, to enable MTRR, include "mtrr=1". |
| 115 | |
| 116 | Sample Usage |
| 117 | ------------ |
| 118 | |
| 119 | Using the same setup as described above, load the module like this: |
| 120 | |
| 121 | modprobe intelfb mode=800x600-32@75 vram=8 accel=1 hwcursor=1 |
| 122 | |
| 123 | Or just add the following to /etc/modprobe.conf |
| 124 | |
| 125 | options intelfb mode=800x600-32@75 vram=8 accel=1 hwcursor=1 |
| 126 | |
| 127 | and just do a |
| 128 | |
| 129 | modprobe intelfb |
| 130 | |
| 131 | |
| 132 | E. Acknowledgment: |
| 133 | |
| 134 | 1. Geert Uytterhoeven - his excellent howto and the virtual |
| 135 | framebuffer driver code made this possible. |
| 136 | |
| 137 | 2. Jeff Hartmann for his agpgart code. |
| 138 | |
| 139 | 3. David Dawes for his original kernel 2.4 code. |
| 140 | |
| 141 | 4. The X developers. Insights were provided just by reading the |
| 142 | XFree86 source code. |
| 143 | |
| 144 | 5. Antonino A. Daplas for his inspiring i810fb driver. |
| 145 | |
| 146 | 6. Andrew Morton for his kernel patches maintenance. |
| 147 | |
| 148 | ########################### |
| 149 | Sylvain |