OpenCores
URL https://opencores.org/ocsvn/test_project/test_project/trunk

Subversion Repositories test_project

[/] [test_project/] [trunk/] [linux_sd_driver/] [Documentation/] [fb/] [sisfb.txt] - Blame information for rev 65

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 62 marcus.erl
 
2
What is sisfb?
3
==============
4
 
5
sisfb is a framebuffer device driver for SiS (Silicon Integrated Systems)
6
graphics chips. Supported are:
7
 
8
- SiS 300 series: SiS 300/305, 540, 630(S), 730(S)
9
- SiS 315 series: SiS 315/H/PRO, 55x, (M)65x, 740, (M)661(F/M)X, (M)741(GX)
10
- SiS 330 series: SiS 330 ("Xabre"), (M)760
11
 
12
 
13
Why do I need a framebuffer driver?
14
===================================
15
 
16
sisfb is eg. useful if you want a high-resolution text console. Besides that,
17
sisfb is required to run DirectFB (which comes with an additional, dedicated
18
driver for the 315 series).
19
 
20
On the 300 series, sisfb on kernels older than 2.6.3 furthermore plays an
21
important role in connection with DRM/DRI: Sisfb manages the memory heap
22
used by DRM/DRI for 3D texture and other data. This memory management is
23
required for using DRI/DRM.
24
 
25
Kernels >= around 2.6.3 do not need sisfb any longer for DRI/DRM memory
26
management. The SiS DRM driver has been updated and features a memory manager
27
of its own (which will be used if sisfb is not compiled). So unless you want
28
a graphical console, you don't need sisfb on kernels >=2.6.3.
29
 
30
Sidenote: Since this seems to be a commonly made mistake: sisfb and vesafb
31
cannot be active at the same time! Do only select one of them in your kernel
32
configuration.
33
 
34
 
35
How are parameters passed to sisfb?
36
===================================
37
 
38
Well, it depends: If compiled statically into the kernel, use lilo's append
39
statement to add the parameters to the kernel command line. Please see lilo's
40
(or GRUB's) documentation for more information. If sisfb is a kernel module,
41
parameters are given with the modprobe (or insmod) command.
42
 
43
Example for sisfb as part of the static kernel: Add the following line to your
44
lilo.conf:
45
 
46
     append="video=sisfb:mode:1024x768x16,mem:12288,rate:75"
47
 
48
Example for sisfb as a module: Start sisfb by typing
49
 
50
     modprobe sisfb mode=1024x768x16 rate=75 mem=12288
51
 
52
A common mistake is that folks use a wrong parameter format when using the
53
driver compiled into the kernel. Please note: If compiled into the kernel,
54
the parameter format is video=sisfb:mode:none or video=sisfb:mode:1024x768x16
55
(or whatever mode you want to use, alternatively using any other format
56
described above or the vesa keyword instead of mode). If compiled as a module,
57
the parameter format reads mode=none or mode=1024x768x16 (or whatever mode you
58
want to use). Using a "=" for a ":" (and vice versa) is a huge difference!
59
Additionally: If you give more than one argument to the in-kernel sisfb, the
60
arguments are separated with ",". For example:
61
 
62
   video=sisfb:mode:1024x768x16,rate:75,mem:12288
63
 
64
 
65
How do I use it?
66
================
67
 
68
Preface statement: This file only covers very little of the driver's
69
capabilities and features. Please refer to the author's and maintainer's
70
website at http://www.winischhofer.net/linuxsisvga.shtml for more
71
information. Additionally, "modinfo sisfb" gives an overview over all
72
supported options including some explanation.
73
 
74
The desired display mode can be specified using the keyword "mode" with
75
a parameter in one of the following formats:
76
  - XxYxDepth or
77
  - XxY-Depth or
78
  - XxY-Depth@Rate or
79
  - XxY
80
  - or simply use the VESA mode number in hexadecimal or decimal.
81
 
82
For example: 1024x768x16, 1024x768-16@75, 1280x1024-16. If no depth is
83
specified, it defaults to 8. If no rate is given, it defaults to 60Hz. Depth 32
84
means 24bit color depth (but 32 bit framebuffer depth, which is not relevant
85
to the user).
86
 
87
Additionally, sisfb understands the keyword "vesa" followed by a VESA mode
88
number in decimal or hexadecimal. For example: vesa=791 or vesa=0x117. Please
89
use either "mode" or "vesa" but not both.
90
 
91
Linux 2.4 only: If no mode is given, sisfb defaults to "no mode" (mode=none) if
92
compiled as a module; if sisfb is statically compiled into the kernel, it
93
defaults to 800x600x8 unless CRT2 type is LCD, in which case the LCD's native
94
resolution is used. If you want to switch to a different mode, use the fbset
95
shell command.
96
 
97
Linux 2.6 only: If no mode is given, sisfb defaults to 800x600x8 unless CRT2
98
type is LCD, in which case it defaults to the LCD's native resolution. If
99
you want to switch to another mode, use the stty shell command.
100
 
101
You should compile in both vgacon (to boot if you remove you SiS card from
102
your system) and sisfb (for graphics mode). Under Linux 2.6, also "Framebuffer
103
console support" (fbcon) is needed for a graphical console.
104
 
105
You should *not* compile-in vesafb. And please do not use the "vga=" keyword
106
in lilo's or grub's configuration file; mode selection is done using the
107
"mode" or "vesa" keywords as a parameter. See above and below.
108
 
109
 
110
X11
111
===
112
 
113
If using XFree86 or X.org, it is recommended that you don't use the "fbdev"
114
driver but the dedicated "sis" X driver. The "sis" X driver and sisfb are
115
developed by the same person (Thomas Winischhofer) and cooperate well with
116
each other.
117
 
118
 
119
SVGALib
120
=======
121
 
122
SVGALib, if directly accessing the hardware, never restores the screen
123
correctly, especially on laptops or if the output devices are LCD or TV.
124
Therefore, use the chipset "FBDEV" in SVGALib configuration. This will make
125
SVGALib use the framebuffer device for mode switches and restoration.
126
 
127
 
128
Configuration
129
=============
130
 
131
(Some) accepted options:
132
 
133
off      - Disable sisfb. This option is only understood if sisfb is
134
           in-kernel, not a module.
135
mem:X    - size of memory for the console, rest will be used for DRI/DRM. X
136
           is in kilobytes. On 300 series, the default is 4096, 8192 or
137
           16384 (each in kilobyte) depending on how much video ram the card
138
           has. On 315/330 series, the default is the maximum available ram
139
           (since DRI/DRM is not supported for these chipsets).
140
noaccel  - do not use 2D acceleration engine. (Default: use acceleration)
141
noypan   - disable y-panning and scroll by redrawing the entire screen.
142
           This is much slower than y-panning. (Default: use y-panning)
143
vesa:X   - selects startup videomode. X is number from 0 to 0x1FF and
144
           represents the VESA mode number (can be given in decimal or
145
           hexadecimal form, the latter prefixed with "0x").
146
mode:X   - selects startup videomode. Please see above for the format of
147
           "X".
148
 
149
Boolean options such as "noaccel" or "noypan" are to be given without a
150
parameter if sisfb is in-kernel (for example "video=sisfb:noypan). If
151
sisfb is a module, these are to be set to 1 (for example "modprobe sisfb
152
noypan=1").
153
 
154
--
155
Thomas Winischhofer 
156
May 27, 2004
157
 
158
 

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.