Suspend: ttys work now, too

Tux
For some weeks now my suspend works surprisingly well. The only problem was that the ttys were not able to get back to a usable state. This changed now by using the framebuffer for the tty displays.

I actually solved to problems with the framebuffer: first I have now a much better screen resolution on the ttys, making me capable of really using them. 80×15 is just not my world. And second, by using the framebuffer the ttys have no problem with suspend. So when I switch to a tty (Ctrl+Alt+F1) after coming back from suspend they just look normal.

The framebuffer can be activated as a kernel parameter at boot time. The easiest way is to add the parameter to the /boot/grub/grub.conf file. Mine looks now like this:

kernel /boot/vmlinuz-2.6.19-1.2911.6.5.fc6 ro root=LABEL=/ vga=0x317

The number, however, must be determinated before: it depends on the resolution you want to set. Here is a list of possible values.

Colour 640×480 800×600 1024×768 1280×1024
256 0x301 0x303 0x305 0x307
32k 0x310 0x313 0x316 0x319
64k 0x311 0x314 0x317 0x31A
16M 0x312 0x315 0x318 0x31B

You can check if your framebuffer supports a given mode by changing to a tty and calling vbetest. vbetest will provide a list of possibly supported modes, and you can test-run one of those. If it works, add it to your kernel line, and there you are.

Btw.: several distributions ship with an already enabled framebuffer (I think Suse does, for example), but Fedora unfortunately doesn’t.