Comment 161 for bug 129910

Revision history for this message
caravel (ey469) wrote : [Solved] Re: tty[1-6] are active but display nothing in Gutsy

Hi folks.

Bug confirmed on Gutsy amd64/nvidia (Asus V1S-AS004E laptop)

Solution *confirmed*, even went a tiny bit further: now got all 6 tty working and visible in 180x60 characters mode -- 1440x900/24bit. Outstanding :)

Please also note I have met no conflit, whatsoever, between nvidiafb and nvidia-glx-new (as installed by restricted manager). Running Gutsy's default Xorg and Compiz, nVidia's TwinView with two cubes, and all sorts of effects enabled. Besides loosing Emerald decorations sometimes (I assume it's unrelated), I can switch between X and ttys as expected.

$uname -a
Linux venus 2.6.22-14-generic #1 SMP Sun Oct 14 21:45:15 GMT 2007 x86_64 GNU/Linux)
$lspci | grep VGA
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8600M GT (rev a1)
$ apt-cache showpkg nvidia-glx-new
Versions: 100.14.19+2.6.22.4-14.9 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_gutsy_restricted_binary-amd64_Packages)
Provides: 100.14.19+2.6.22.4-14.9 - xserver-xorg-video nvidia-gl

Not sure if all I did was necessary, but since it took me a long time with quite a few reboots, and that it now works with no limit so far, I'll give up testing and just write it all down here.

I started from these comments above (thanks very much, chaps):
https://bugs.launchpad.net/ubuntu/+source/initramfs-tools/+bug/129910/comments/145
https://bugs.launchpad.net/ubuntu/+source/initramfs-tools/+bug/129910/comments/89

Finding the solution was hard because:
- I was blind, since I first got no output from hwinfo --framebuffer
- reading the following refs, I tried vga=791 then 868 and 869 respectively, but none of them worked. Later I tried 877, which did not work either
  http://gentoo-wiki.com/HARDWARE_Lenovo_Thinkpad_T61#1440x900:_vga.3D869_kernel_parameter
  http://en.wikipedia.org/wiki/VESA_BIOS_Extensions#Linux_video_mode_numbers
- in facts the kernel does not seem to accept any vga=[decimals] equivalent as parameter, only the [hexa] form
- I finally obtained some output from hwinfo --framebuffer, once I did modprobing fbcon, nvidiafb and vga16fb (only after I realized I had to sudo the command, therefore I am not sure if I needed them all)

Anyway, to paraphrase Wiktor, here's the procedure I've used to enable MAXIMUM resolution on consoles:

1. loaded modules
$ sudo modprobe fbcon
$ sudo modprobe nvidiafb
$ sudo modprobe vga16fb

* note that I did not need vesafb here, as I expected
* if anyone had the time to try without vga16fb, that would be great

2. get the list of supported modes from the graphic card
$ sudo apt-get install hwinfo
$ sudo hwinfo --framebuffer

* that did show me a lot of modes, the one that most interested me was:
Mode 0x0365: 1440x900 (+5760), 24 bits

3. was happy to read that, so did just in case:
$ sudo depmod -a

4. went to discover the console setup program
$ sudo dpkg-reconfigure console-setup

* I also selected "Fixed" font in framebuffer mode
* WARNING: almost every default option came fine, except the Alt-Gr key
* (I have one, selected Right-Alt. That works, and surprisingly almost
* all keys output something with this modifier, nice discovery)

5. therefore, specified 0x365 as kernel parameters:
$ sudo nano /boot/grub/menu.lst
# defoptions=splash vga=0x365

6. and confidently broadcasted changes to all magic entries :)
$ sudo update-grub

7. then I modified usplash configuration:
$ sudo nano /etc/usplash.conf
xres=1440
yres=900

8. enabled modules autoloading, at the end of this file:
$ sudo nano /etc/initramfs-tools/modules
fbcon
vesafb
nvidiafb

* note that I did not need vga16fb here, as I expected
* if anyone had the time to try without vesafb, that would be great

9. to allow module loading, I commented two blacklist lines in this file:
$ sudo nano /etc/modprobe.d/blacklist-framebuffer
# blacklist vesafb
# blacklist vga16fb

* if anyone had the time to try without vesafb, that would be great

10. took some unnecessary risks, since if it went wrong I would not have had
any booting kernel left, and would have needed to chroot :)
$ sudo update-initramfs -u -k all
$ sudo dpkg-reconfigure usplash

After restart all is right, and was much better than in Feisty!

So finally, I got to discover that usplash's default theme was indeed similar to Feisty's default one, and that is is definitely designed for a 4:3 screen.

Having read a lot about the ways to splash the booting sessions, I will now give a try to splashy's useless-but-super-fun animated themes. Plus if that works, that will put me a tiny bit closer to Debian (nostalgy...)

Hope this helps.
Thanks.