cant get (vesa) framebuffer device to work on nvidia card, kernel 2.6.13.4, 'current'
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
cant get (vesa) framebuffer device to work on nvidia card, kernel 2.6.13.4, 'current'
First for the computer specs:
graphic card: NVIDIA GeForce 4 MX 440
kernel: Linux 2.6.13.4
boot loader: LILO 22.5.9
slackware version: current
NVIDIA driver: 1.0-7667
Driver I'm using in xorg.conf is nvidia
---------------------------------------------
So far the framebuffer is what has caused the most trouble. In suse 9.1 and 8.2 live eval and ubuntu 5.04 live it worked straight. No matter what, I can't get framebuffer to work on slackware. I've tried searching google and linuxquestions for help to this situation and tried every help I've found but nothing seems to work. I would appreciate if you would help me with this.
Here is what I've (recently) included on kernel on graphics:
Code:
#
# Graphics support
#
CONFIG_FB=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
CONFIG_FB_SOFT_CURSOR=y
# CONFIG_FB_MACMODES is not set
CONFIG_FB_MODE_HELPERS=y
# CONFIG_FB_TILEBLITTING is not set
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
CONFIG_FB_VGA16=m
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
# CONFIG_FB_HGA is not set
# CONFIG_FB_NVIDIA is not set
# CONFIG_FB_RIVA is not set
# CONFIG_FB_I810 is not set
# CONFIG_FB_INTEL is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON_OLD is not set
# CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_SAVAGE is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_GEODE is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_VIRTUAL is not set
#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
# CONFIG_FONT_8x16 is not set
# CONFIG_FONT_6x11 is not set
# CONFIG_FONT_7x14 is not set
# CONFIG_FONT_PEARL_8x8 is not set
# CONFIG_FONT_ACORN_8x8 is not set
# CONFIG_FONT_MINI_4x6 is not set
# CONFIG_FONT_SUN8x16 is not set
# CONFIG_FONT_SUN12x22 is not set
# CONFIG_FONT_10x18 is not set
#
# Logo configuration
#
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
Note that this is what I last time had when I tried to get framebuffer to work. I have tried many combinations but none of them worked.
On lilo, there are resolutions available for VESA framebuffer. None of them work: I always get the same font, even if I have 'vga' set as 'vga = ask', and even if I had no vga option. I get a prompt about choosing the amount of cols 'n rows. I tried choosing 80x50, which looked good. But after this line:
Code:
Loading 256-char 8x16 font from file
/usr/share/kbd/consolefonts/default8x16.psfu.gz
After that it goes back to the big ugly font.
In case there might be something bad in my lilo.conf, I'll post it here:
Code:
# LILO configuration file
# generated by 'liloconfig'
#
# Start LILO global section
boot = /dev/hda
message = /boot/boot_message.txt
prompt
timeout = 1200
# Override dangerous defaults that rewrite the partition table:
change-rules
reset
# Normal VGA console
# vga = normal
# VESA framebuffer console @ 1024x768x64k
# vga = 791
# VESA framebuffer console @ 1024x768x32k
# vga = 790
# VESA framebuffer console @ 1024x768x256
vga = 773
# VESA framebuffer console @ 800x600x64k
# vga = 788
...
...
# Linux bootable partition config begins
image = /boot/vmlinuz
root = /dev/hda9
label = Linux
read-only
# Linux bootable partition config ends
# Windows bootable partition config begins
other = /dev/hda1
label = Windows
table = /dev/hda
# Windows bootable partition config ends
Note that it is missing some commented 'vga' options. As you can see, the last vga option I tried was 'vga = 773', but it didn't have any affect.
Somewhere I was told to put 'video=vesa:ypan' to my lilo.conf and do command lilo. I put it and executed the command but the lilo gave me this:
Code:
Unrecognized token "video" at or above line 12 in file '/etc/lilo.conf'
One howto told me to do this:
Code:
mknod /dev/fb0 c 29 0
Yeah, it created /dev/fb0, but after I booted, it had disappeared.
I've got framebuffer support working fine with 2.6.13.4 and an FX5200, here are the differences I have to .config from yours:
Code:
#
# Graphics support
#
CONFIG_FB_VGA16=y
#
# Console display driver support
#
# CONFIG_FONT_8x8 is not set
CONFIG_FONT_8x16=y
CONFIG_FONT_7x14=y
CONFIG_FONT_SUN8x16=y
I believe I've had problems before not compiling some usable fonts into the kernel, maybe by limiting yourself to the one 8x8 font it's not able to create the characters.
Originally posted by ciotog I've got framebuffer support working fine with 2.6.13.4 and an FX5200, here are the differences I have to .config from yours:
Code:
#
# Graphics support
#
CONFIG_FB_VGA16=y
#
# Console display driver support
#
# CONFIG_FONT_8x8 is not set
CONFIG_FONT_8x16=y
CONFIG_FONT_7x14=y
CONFIG_FONT_SUN8x16=y
I believe I've had problems before not compiling some usable fonts into the kernel, maybe by limiting yourself to the one 8x8 font it's not able to create the characters.
I tried enabling more fonts but still I get the same font size shown. Can the problem be in that I havent got fb device in /dev? Can I add it somehow, maybe with udev or something? Also is there any good guides that really work? I might have missed something.
Originally posted by ciotog Maybe I misunderstood your original issue - I think framebuffer support is working (you get the penguin while everything is being initialized, right?)
Try running setconsolefont as root to select a different font.
No, I don't get a penguin and I cant start mplayer (which should work on framebuffer). I don't have /dev/fb either. I haven't got framebuffer at all.
<edit>
I tried the command and chose default 8x16. It looked fine and I was hoping it would last. Then I switched back to X with ctrl-F7 and then to console and the font was back in the ugly big 8x16.
</edit>
<another_edit>
Could it be the nvidia driver that I'm using? Did someone have to use another driver than nvidia to get framebuffer working?
</another_edit>
Originally posted by ciotog You are in fact copying the newly compiled kernel to /boot/vmlinuz I hope? I imagine the problem is something simple like that that gets overlooked...
After compiling I copied the System.map to /boot/System.map, .config to /boot/config and the bzImage from arch/i386/boot/ to /boot/vmlinuz ...if that's what you are asking.
Originally posted by keefaz First you don't need CONFIG_FB_VGA16, even as module.
I remember having problem with this option enabled and a nvidia 440MX card...
Second try to disable the font loaded with rc.font :
Code:
chmod -x /etc/rc.d/rc.font
And finally try to edit your lilo.conf under the label = Linux line and add :
Code:
append="video=vesa:ywrap,mtrr"
(run lilo to take the change in account)
Ok, I did those and still got the 8x16 font, thou rc.font is disabled.
Now my config looks like this:
Code:
...
#
# Graphics support
#
CONFIG_FB=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
CONFIG_FB_SOFT_CURSOR=y
# CONFIG_FB_MACMODES is not set
CONFIG_FB_MODE_HELPERS=y
# CONFIG_FB_TILEBLITTING is not set
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
# CONFIG_FB_HGA is not set
# CONFIG_FB_NVIDIA is not set
# CONFIG_FB_RIVA is not set
# CONFIG_FB_I810 is not set
# CONFIG_FB_INTEL is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON_OLD is not set
# CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_SAVAGE is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_CYBLA is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_GEODE is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_VIRTUAL is not set
#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
# CONFIG_FONT_6x11 is not set
CONFIG_FONT_7x14=y
# CONFIG_FONT_PEARL_8x8 is not set
# CONFIG_FONT_ACORN_8x8 is not set
# CONFIG_FONT_MINI_4x6 is not set
CONFIG_FONT_SUN8x16=y
# CONFIG_FONT_SUN12x22 is not set
CONFIG_FONT_10x18=y
#
# Logo configuration
#
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
...
and my lilo.conf looks like this:
Code:
# LILO configuration file
# generated by 'liloconfig'
#
# Start LILO global section
boot = /dev/hda
message = /boot/boot_message.txt
prompt
timeout = 1200
# Override dangerous defaults that rewrite the partition table:
change-rules
reset
# Normal VGA console
# vga = normal
# VESA framebuffer console @ 1024x768x64k
# vga = 791
# VESA framebuffer console @ 1024x768x32k
# vga = 790
# VESA framebuffer console @ 1024x768x256
vga = 773
# VESA framebuffer console @ 800x600x64k
# vga = 788
# VESA framebuffer console @ 800x600x32k
# vga = 787
# VESA framebuffer console @ 800x600x256
# vga = 771
# VESA framebuffer console @ 640x480x64k
# vga = 785
# VESA framebuffer console @ 640x480x32k
# vga = 784
# VESA framebuffer console @ 640x480x256
# vga = 769
# Let the user enter the desired mode
# vga = ask
# End LILO global section
# Linux bootable partition config begins
image = /boot/vmlinuz
root = /dev/hda9
label = Linux
append="video=vesa:ywrap,mtrr"
read-only
# Linux bootable partition config ends
# Windows bootable partition config begins
other = /dev/hda1
label = Windows
table = /dev/hda
# Windows bootable partition config ends
Originally posted by keefaz Try change in lilo.conf :
Code:
append="video=vesa:ywrap,mtrr"
to :
Code:
append="video=vesa:ywrap,mtrr,font:8x8"
and run lilo
You can also try 7x14, 10x18 or SUN8x16 the same way as you compiled them in kernel
Code:
append="video=vesa:ywrap,mtrr,font:7x14"
# or
append="video=vesa:ywrap,mtrr,font:SUN8x16"
...
you need to run lilo after each lilo.conf change
Again no luck.
I was thinking of buying a new graphic card, so I could play newer games like Doom3 and Quake4. I've heard that Matrox cards have a good Linux support. Is this true? Can Matrox card run new games? Is it expensive?
First I was thinking of buying a newer nvidia card. Do other nvidia cards have problems with fb?
I use the same card on another comp, it works well, why change it ?
At least you could edit your /etc/rc.d/rc.font and choose a font
in /usr/share/kbd/consolefonts, then chmod +x /etc/rc.d/rc.font
and execute /etc/rc.d/rc.font, change the font until you satisfy
You might find that the nvidia driver garbles the console when fb is enabled (ctrl-alt F1 while in x).
I solved it by disabling fb support whuch means using vga-normal and have large fonts, but at least I can read the console now.
framebuffer works well with nvidia driver, the thing is to make
sure that the kernel hasn't CONFIG_FB_VGA16 feature built-in
(which is enabled in the default kernel I believe)
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.