1fb.modes(8)                Linux frame buffer utils                fb.modes(8)
2
3
4

NAME

6       fb.modes - frame buffer modes file
7

DESCRIPTION

9       /etc/fb.modes  contains an unlimited number of video mode descriptions.
10       The general format of a video mode is:
11
12       mode
13              geometry <xres> <yres> <vxres> <vyres> <depth>
14              timings  <pixclock>  <left>  <right>  <upper>  <lower>   <hslen>
15              <vslen>
16              options <value>
17       endmode
18

OPTIONS

20       geometry options:
21
22              xres   visible horizontal resolution (in pixels)
23
24              yres   visible vertical resolution (in pixels)
25
26              vxres  virtual horizontal resolution (in pixels)
27
28              vyres  virtual vertical resolution (in pixels)
29
30              depth  display depth (in bits per pixel)
31
32       timing options:
33
34              pixclock
35                     length of one pixel (in picoseconds)
36
37              left   left margin (in pixels)
38
39              right  right margin (in pixels)
40
41              upper  upper margin (in pixel lines)
42
43              lower  lower margin (in pixel lines)
44
45              hslen  horizontal sync length (in pixels)
46
47              vslen  vertical sync length (in pixel lines)
48
49       other options:
50              the first value of this options is the default
51
52              hsync {low|high}
53                     the horizontal sync polarity
54
55              vsync {low|high}
56                     the vertical sync polarity
57
58              csync {low|high}
59                     the composite sync polarity
60
61              extsync {false|true}
62                     enable  or  disable  external resync. If enabled the sync
63                     timings are not generated by the frame buffer device  and
64                     must  be  provided  externally  instead.  Note  that this
65                     option may not be supported by every frame buffer device
66
67              laced {false|true}
68                     enable or disable interlace. If enabled the display  will
69                     be split in two frames, each frame contains only even and
70                     odd lines respectively. These two  frames  will  be  dis‐
71                     played  alternating, this way twice the lines can be dis‐
72                     played and the vertical frequency for monitor  stays  the
73                     same, but the visible vertical frequency gets halved
74
75              double {false|true}
76                     enable  or disable doublescan. If enabled every line will
77                     be displayed twice and this way the horizontal  frequency
78                     can easily be doubled, so that the same resolution can be
79                     displayed on different monitors, even if  the  horizontal
80                     frequency  specification  differs.  Note that this option
81                     may not be supported by every frame buffer device
82

INTERNALS

84       Generally a frame buffer display is organized as follows:
85
86                            +---+---------------+---+---+
87                            |   |       ^       |   |   |
88                            |   |       | 5     |   |   |
89                            |   |       v       |   |   |
90                            +---#################---+---+
91                            |   #       ^       #   |   |
92                            |   #       |       #   |   |
93                            |   #       |       #   |   |
94                            | 1 #       |   2   # 3 | 4 |
95                            |<->#<------+------>#<->|<->|
96                            |   #       |       #   |   |
97                            |   #       | 6     #   |   |
98                            |   #       |       #   |   |
99                            |   #       v       #   |   |
100                            +---#################---+---+
101                            |   |       ^       |   |   |
102                            |   |       | 7     |   |   |
103                            |   |       v       |   |   |
104                            +---+---------------+---+---+
105                            |   |       ^       |   |   |
106                            |   |       | 8     |   |   |
107                            |   |       v       |   |   |
108                            +---+---------------+---+---+
109
110              1  left margin
111              2  xres
112              3  right margin
113              4  horizontal sync len
114              5  upper margin
115              6  yres
116              7  lower margin
117              8  vertical sync len
118
119       The area bordered with `#' is the visible display area. Horizontal  and
120       vertical  frequencies can now easily be calculated, for this the sum of
121       horizontal or vertical values are important
122
123              htotal = left + xres + right + hslen
124              vtotal = upper + yres + lower + vslen
125
126       The length of one line can now be calculated with pixclock
127
128              line = pixclock * htotal
129
130       and we have the horizontal frequency
131
132              hfreq = 1E12 / line = 1E12 / (pixclock * htotal)
133
134       To get the vertical frequency vtotal must eventually adjusted.  If  the
135       display is laced, vtotal must be halved or if the display is a doubles‐
136       can one, vtotal must be doubled. Now we can calculate the length of one
137       frame
138
139              if (lace)   vtotal /= 2
140              if (double) vtotal *= 2
141
142              frame = vtotal * line
143
144       and we get also the vertical frequency
145
146              vfreq = 1E12 / frame = hfreq / vtotal
147
148

SEE ALSO

150       fbset(8), fbdev(4)
151
152
153
154local                              Aug 1996                        fb.modes(8)
Impressum