Go Back   nV News Forums > Linux Support Forums > NVIDIA Linux

Newegg Daily Deals

Reply
 
Thread Tools
Old 07-04-09, 07:53 AM   #1
Bockeman
Registered User
 
Join Date: Jul 2009
Posts: 4
Default How do I load nvidiafb in place of vesafb?

Hi,

My Fedora 10 x86-64 system at runlevel 3 level (i.e. not using X11) has an nVidia GeForce 8600 GT.

I can load the vesafb successfully using this boot command line (snipped from /var/log/messages)
Jul 4 12:01:55 localhost kernel: Command line: ro root=/dev/sda2 rhgb quiet video=nvidiafb vga=0x34A 3
Jul 4 12:01:55 localhost kernel: vesafb: framebuffer at 0xe1000000, mapped to 0xffffc20002980000, using 14336k, total 14336k
Jul 4 12:01:55 localhost kernel: vesafb: mode is 1600x1200x32, linelength=6400, pages=1
Jul 4 12:01:55 localhost kernel: vesafb: scrolling: redraw
Jul 4 12:01:55 localhost kernel: vesafb: Truecolor: size=8:8:8:8, shift=24:16:8:0
Jul 4 12:01:55 localhost kernel: Console: switching to colour frame buffer device 200x75
Jul 4 12:01:55 localhost kernel: fb0: VESA VGA frame buffer device

But I cannot load the nvidiafb. Please can you tell me how I am supposed to do this.

The nvidia module is loaded (snipped shell log):
# lsmod | egrep nvidia
nvidiafb 50944 0
fb_ddc 10496 1 nvidiafb
vgastate 15744 1 nvidiafb
nvidia 8119400 0
i2c_algo_bit 13956 3 nvidiafb,...
i2c_core 29216 10 nvidiafb,fb_ddc,nvidia,v4l2_common,i2c_...

The latest kmod_nvidia is compiled and loaded for my kernel version (snipped from /var/log/messages)
Jul 4 12:01:55 localhost kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel Module 185.18.14 Wed May 27 01:23:47 PDT 2009
(The module version is correct, but the date relates to the kernel. The module was compiled and installed (again) today)

Regards,
Bockeman
Attached Files
File Type: gz nvidia-bug-report.log.gz (37.5 KB, 85 views)
Bockeman is offline   Reply With Quote
Old 07-04-09, 08:45 AM   #2
Vla
Registered User
 
Join Date: Aug 2006
Posts: 26
Default Re: How do I load nvidiafb in place of vesafb?

You should go with uvesafb http://dev.gentoo.org/~spock/projects/uvesafb/

the nvidiafb module is not related to the NVidia X.org driver.
Vla is offline   Reply With Quote
Old 07-04-09, 09:26 AM   #3
Bockeman
Registered User
 
Join Date: Jul 2009
Posts: 4
Default Re: How do I load nvidiafb in place of vesafb?

Vla,

Thanks for responding. However, it is not clear to me what you are suggesting. I do not want to move to something different until I have understood what is wrong with what I am trying to do.

The name nvidiafb suggests that this is a frame buffer, of the same ilk as vesafb. Is this correct?

Since I am not running X11, I am not concerned if another module, nvidia, is purely to support X11.

With the vesafb loaded, I get
# fbset -i
Name : VESA VGA
but I want nvidiafb loaded, and I am looking for something like
# fbset -i
Name : ...NVIDIA...

By analogy, I have seen in other postings (relating to DirectFB) with two different responses to "dfbinfo":
# dfbinfo
(*) DirectFB/FBDev: Found 'VESA VGA' (ID 0) with frame buffer at 0xe1000000, 14336k (MMIO 0x00000000, 0k)
and
# dfbinfo
(*) DirectFB/Graphics: nVidia NV4C (04c0) 0.6 (directfb.org)

Although I want to use DirectFB, I am inclined to think my problem has nothing to with DirectFB, but rather in loading the required frame buffer.

I do not want a software frame buffer (my understanding of vesafb), but a hardware accelerated frame buffer (my understanding of nvidiafb).

Could someone please put me right where my understanding is flawed, or tell me how to get the nvidiafb loaded?

Regards,
Bockeman
Bockeman is offline   Reply With Quote
Old 07-04-09, 09:50 AM   #4
Dragoran
Registered User
 
Join Date: May 2004
Posts: 711
Default Re: How do I load nvidiafb in place of vesafb?

The nvidiafb module is blacklisted by default in fedora see
Quote:
/etc/modprobe.d/blacklist.conf
Dragoran is offline   Reply With Quote
Old 07-04-09, 10:13 AM   #5
Bockeman
Registered User
 
Join Date: Jul 2009
Posts: 4
Default Re: How do I load nvidiafb in place of vesafb?

Dragoran,

Thanks. I had spotted that ages ago, and commented at the time.

Anyway, the module is loaded as evidenced by
# lsmod | egrep nvidia
nvidiafb 50944 0
fb_ddc 10496 1 nvidiafb
vgastate 15744 1 nvidiafb
nvidia 8119400 0
i2c_algo_bit 13956 3 nvidiafb,...
i2c_core 29216 10 nvidiafb,fb_ddc,nvidia,v4l2_common,i2c_...

What have I got to do so that nvidiafb gets loaded in such a way that
fbset -i
recognises it?


Regards,
Bockeman
Bockeman is offline   Reply With Quote
Old 07-04-09, 02:21 PM   #6
Bockeman
Registered User
 
Join Date: Jul 2009
Posts: 4
Default Re: How do I load nvidiafb in place of vesafb?

All,

I have made some progress, but I am still stuck with a missing "device".

Can anyone suggest what I have to do get the device node for the nvidiafb, such as
/dev/fb0
?

I now have the nvidiafb module loaded, and not the nvidia module (though this does get loaded later if I switch to runlevel 5 [init 5]). My evidence is:

# egrep -i "nvidia|vesa|command|frame\ buffer" /var/log/messages
Jul 4 19:30:32 localhost kernel: Command line: ro root=/dev/sda2 3
Jul 4 19:30:32 localhost kernel: Kernel command line: ro root=/dev/sda2 3
Jul 4 19:30:32 localhost kernel: nvidiafb 0000:02:00.0: PCI INT A -> Link[APC6] -> GSI 16 (level, low) -> IRQ 16
Jul 4 19:30:32 localhost kernel: nvidiafb: Device ID: 10de0402
Jul 4 19:30:32 localhost kernel: nvidiafb: unknown NV_ARCH

# lsmod | egrep nvidia
nvidiafb 50944 0
fb_ddc 10496 1 nvidiafb
i2c_algo_bit 13956 3 cx88_vp3054_i2c,cx88xx,nvidiafb
vgastate 15744 1 nvidiafb
i2c_core 29216 9 dvb_pll,cx22702,cx88_vp3054_i2c,v4l2_common,cx88xx ,tveeprom,nvidiafb,fb_ddc,i2c_algo_bit

However, when I attempt to examine this frame buffer device, I get this response:
# fbset -i
open /dev/fb0: No such file or directory

I conclude that there is some step which I am missing which creates the correct device nodes. (I have tried creating the device node manually with
mknod /dev/fb0 c 29 0
but I get the same response from fbset.


Does anyone have any clues how /dev/fb0 is created (even if your system is not Fedora)?

Regards,
Bockeman
-----

For those of you that are curious (or even desperate because of the same/similar problem), here is the story of how I got nvidiafb to load in place of vesafb (as reported by dmesg).

The short answer is: "I do not know!".

In the process of rebooting a considerable number of times, I have tried various grub command line options playing around with the "rhgb quiet video=...". I also placed "blacklist nvidia" in the /etc/modprobe.d/blacklist. I have gone round the loop, unwinding what I did and eliminating things one at a time. Throughout I have kept a meticulous log of each step.
My conclusion is that the problem has nothing to do with the blacklist and nothing to do with the grub command line options (apart from the vga= statement which forces or explicitly asks for vesafb). I now have nvdiafb lines in my dmesg where previously, under identical grub and other settings I used to have vesafb.

My conclusion, is that something is sticky which I had considered to be only of immediate relevance. The only commands that could fall into this category are this sequence:

init 3
rmmod nvidia
lsmod | egrep nvidia
rmmod nvidiafb
lsmod | egrep nvidia
modprobe nvidiafb mode_option=1920x1200-32@75

This really is not much help to anyone with the same problem, but I am hoping some more knowledgeable person will enlighten us all. (Please). ((Thank you)).
Bockeman is offline   Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 11:29 PM.


Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.