Merge branch 'master' into for-upstream
[linux-2.6] / Documentation / fb / intelfb.txt
1 Intel 830M/845G/852GM/855GM/865G/915G/945G Framebuffer driver
2 ================================================================
3
4 A. Introduction
5         This is a framebuffer driver for various Intel 8xx/9xx compatible
6 graphics devices.  These would include:
7
8         Intel 830M
9         Intel 845G
10         Intel 852GM
11         Intel 855GM
12         Intel 865G
13         Intel 915G
14         Intel 915GM
15         Intel 945G
16         Intel 945GM
17         Intel 945GME
18         Intel 965G
19         Intel 965GM
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
87 video=intelfb:option1,option2=value2
88
89 Sample Usage
90 ------------
91
92 In /etc/lilo.conf, add the line:
93
94 append="video=intelfb:mode=800x600-32@75,accel,hwcursor,vram=8"
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
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
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