Re: Framebuffer in Debian
On Thu, 23 May 2002, Jeff Flowers wrote:
> Can I run a framebuffer console with 2.2r6?
Yes you can ... but you have to recompile the kernel by yourself because
the standard kernel image does not support the framebuffer
> For example, can I download or enable a kernel module for this
you do not have to do this ... only install the kernel-source package
... start with your actual configuration (copy the kernel-configuration
file from your /boot-folder to /usr/src/kernel-source-your-kernel ...
start make menuconfig and load the copied config-file ... then read the
HOWTO-Framebuffer:
#####################################################################
4.2. How do I activate the vesafb drivers?
Assuming you are using menuconfig, you will need to do the following
steps:
If your processor (on Intel platforms) supports MTRRs, enable this. It
speeds up memory copies between the processor and the graphic card,
but not strictly necessary. You can of course, do this after you have
the console device working.
IMPORTANT: For 2.1.x kernels, go into the Code Maturity Level menu,
and enable the prompt for development andor incomplete drivers. This
is no longer necessary for the 2.2.x kernels.
Go into the Console Drivers menu, and enable the following:
· VGA Text Console
· Video Selection Support
· Support for frame buffer devices (experimental)
· VESA VGA Graphic console
· Advanced Low Level Drivers
· Select Mono, 2bpp, 4bpp, 8bpp, 16bpp, 24bpp and 32bpp packed pixel
drivers
VGA Chipset Support (text only) - vgafb - used to be part of the list
above, but it has been removed as it is now deprecated and no longer
supported. It will be removed shortly. Use VGA Text Console (fbcon)
instead. VGA Character/Attributes is only used with VGA Chipset
Support, and doesn't need to be selected.
Ensure that the Mac variable bpp packed pixel support is not enabled.
Linux kernel release 2.1.111 (and 112) seemed to enable this
automatically if Advanced Low Level Drivers was selected for the first
time. This no longer happens with 2.1.113.
There is also the option to compile in fonts into memory, but this
isn't really necessary, and you can always use kbd-0.99's (see section
on fonts) setfont utility to change fonts by loading fonts into the
console device.
Make sure these aren't going to be modules. [Not sure if it's possible
to build them as modules yet - please correct me on this]
You'll need to create the framebuffer device in /dev. You need one per
framebuffer device, so all you need to do is to type in mknod /dev/fb0
c 29 0 for the first one. Subsequent ones would be in multiples of 32,
so for example to create /dev/fb1, you would need to type in mknod
/dev/fb1 c 29 32, and so on up to the eighth framebuffer device (mknod
/dev/fb7 c 29 224)
Then rebuild the kernel, modify /etc/lilo.conf to include the VGA=ASK
parameter, and run lilo, this is required in order for you to be able
to select the modes you wish to use.
Here's a sample LILO configuration (taken from my machine)
# LILO configuration file
boot = /dev/hda3
delay = 30
prompt
vga = ASK # Let user enter the desired modes
image = /vmlinuz
root = /dev/hda3
label = Linux
read-only # Non-UMSDOS filesystems should be mounted read-only for checking
Reboot the kernel, and as a simple test, try entering 0301 at the VGA
prompt (this will give you 640x480 @ 256), and you should be able to
see a cute little Penguin logo.
Note, that at the VGA prompt, you're required to type in the number in
the format of "0" plus the 3 digit figure, and miss out the 'x'. This
isn't necessary if you're using LILO.
Once you can see that's working well, you can explore the various VESA
modes (see below) and decide on the one that you like the best, and
hardwire that into the "VGA=x" parameter in lilo.conf. When you have
chosen the one you like the best, look up the equivalent hexadecimal
number from the table below and use that (i.e. for 1280x1024 @ 256,
you just use "VGA=0x307"), and re-run lilo. That's all there it is to
it. For further references, read the LoadLin/LILO HOWTOs.
NOTE! vesafb does not enable scrollback buffering as a default. You
will need to pass to the kernel the option to enable it. Use
video=vesa:ypan or video=vesa:ywrap to activate it. Both does the same
thing, but in different ways. ywrap is a lot faster than ypan but may
not work on slightly broken VESA 2.0 graphic cards. ypan is slower
than ywrap but a lot more compatible. This option is only present in
kernel 2.1.116 and above. Earlier kernels did not have the ability to
allow scrollback buffering in vesafb.
#######################################################################
... a good vga parameter is 791 ... have fun
Oliver
--
... don't touch the bang-bang fruit ...
--
To UNSUBSCRIBE, email to debian-user-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Reply to: