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