# nvidiafb detects wrong LCD panel size

## Joffer

I've just started to test the nvidiafb framebuffer driver and I can't get it to use 1600x1200 resolution on my Dell 2001FP 20" monitor. Removing everything that has something to do with nvidiafb and video from my grub line gives me a normal 80x25 console. I checked 'dmesg' and found nvidiafb detecting my LCD panel size as 1280x1024..

From dmesg:

```
...

nvidiafb: nVidia device/chipset 10DE0140

nvidiafb: nVidia Corporation NV43 [MSI NX6600GT-TD128E]

nvidiafb: CRTC0 not found

nvidiafb: CRTC1 found

nvidiafb: EDID found from BUS1

nvidiafb: CRTC 0 is currently programmed for DFP video=nvidia

nvidiafb: Using DFP on CRTC 0

Panel size is 1280 x 1024

nvidiafb: MTRR set to ON

nvidiafb: error setting initial video mode

...
```

Kernel menuconfig:

```
<*> Support for frame buffer devices

...

<*> nVidia Framebuffer Support

[*]   Enable DDC Support

...

Console display driver support  --->

     [*]   Video mode selection support

     <*> Framebuffer Console support

...
```

My grub:

```
timeout 10

default 0

fallback 1

splashimage=(hd1,0)/grub/gentoo.xpm.gz

#Windows XP

title Windows XP Pro 64bit Edition

rootnoverify (hd0,0)

makeactive

chainloader +1

#Gentoo nvidiafb 2.6.12-r7-ct1

title Gentoo Linux 2.6.12-r7 nvidiafb

root (hd1,0)

kernel (hd1,0)/kernel-2.6.12-gentoo-r7-ct1 root=/dev/hda6

#Gentoo nvidiafb 2.6.12-r7-ct1

title Gentoo Linux 2.6.12-r7 nvidiafb

root (hd1,0)

kernel (hd1,0)/kernel-2.6.12-gentoo-r7-ct1 root=/dev/hda6 nvidiafb:video=1600x1200-16@60
```

How can I get my card (Nvidia 6600GT PCIe) to detect the right panel size? I'm on AMD64, with amd64/64-bit installation. nvidiafb is compiled into the kernel.

Edit 1: I also tried with nvidiafb as a modules, but the same error in dmesg (and no beautiful fb)

Edit 2: Tried to add "video=1280x1024-16@60" into /etc/modules.d/nvidiafb but that did not seem to work either...

Edit 3: I use 1600x1200 resolution in X Window/Gnome, so there are no errors to the screen for showing the correct native resolution..

----------

## lunarg

Not sure how it works with nvidiafb, but with the closed-source driver for nvidia, you can disable monitor probing on the module level:

```

modprobe nvidia NVreg_SoftEDIDs=0 NVreg_Mobile=[i]a number[/i]

```

The explanation of the second parameter can be found in the readme of the driver:

 *Quote:*   

> 
> 
> The "Mobile" kernel option can be set to any of the following values:
> 
>     Value                              Meaning
> ...

 

Note that this is actually for laptops, but found it to work on standard TFT as well.

You could try it without the Mobile option first, as this alone was enough for my system.

EDIT: you could very well also try the vesafb-tng module (when you're running 2.6 kernel), which should work.

----------

## Joffer

Will try what you mention.

 *lunarg wrote:*   

> EDIT: you could very well also try the vesafb-tng module (when you're running 2.6 kernel), which should work.

 This is not possible on AMD64  :Sad:  And it's the reason why I'm trying nvidiafb, since vesafb is so slooooow.

Edit 1: Forgot to mention I am using gentoo-sources 2.6.12-r7, but I guess you could see that from my grub config.

----------

## krejler

I think you should use the 'video='-parameter as below, instead:

```
video=nvidiafb:1600x1200-16@60
```

----------

## Joffer

 *krejler wrote:*   

> I think you should use the 'video='-parameter as below, instead:
> 
> ```
> video=nvidiafb:1600x1200-16@60
> ```
> ...

 Did not work  :Sad:  I tried both module and built in. And the card is still setting the wrong panel size when I look in 'dmesg'.

And the option to set NVreg_ options did not work either.. but I guess that would only work for the nvidia X driver.

----------

## Doc7

If you get your framebuffer running at another resolution you might check /proc/fb0/modes (or something similar) for valid options.

e.g. on my laptop i gotta use 1024x768-24 (without the frequenzy)

i didn't try the nvidiabf though.

----------

## Joffer

I don't get any fb at the moment using nvidiafb. /proc/fb is empty (it acts like an empty file though, and not as a folder with more "files" in it)  :Sad: 

----------

## lunarg

 *Joffer wrote:*   

> I don't get any fb at the moment using nvidiafb. /proc/fb is empty (it acts like an empty file though, and not as a folder with more "files" in it) 

 

And using a lower resolution, and then looking at the modes in /proc?

----------

## Joffer

 *lunarg wrote:*   

>  *Joffer wrote:*   I don't get any fb at the moment using nvidiafb. /proc/fb is empty (it acts like an empty file though, and not as a folder with more "files" in it)  
> 
> And using a lower resolution, and then looking at the modes in /proc?

 Somehow i could not manage to get any framebuffer with nvidiafb, so I don't get anything in /proc/fb to look at  :Sad:  It just failed to set a resolution  :Sad:  I'm back at vesafb now, but I'm willing to try nvidiafb again.

----------

## lunarg

I have an nvidia card in my laptop, so I'll give it a try myself with nvidiafb (currently using vesafb-tng, but I'm running a P4, so that's not a problem).

I'll try it as soon as I get back from work, and post my findings here.

----------

## Joffer

 *lunarg wrote:*   

> I have an nvidia card in my laptop, so I'll give it a try myself with nvidiafb (currently using vesafb-tng, but I'm running a P4, so that's not a problem).
> 
> I'll try it as soon as I get back from work, and post my findings here.

 

Great. Which kernel source do/did you use?

----------

## lunarg

Sorry, with all the crazyness at work and at home, I haven't been able to test nvidiafb yet, but looks like I might have more time this evening.

I can tell you already this, though  :Wink: 

I'm running gentoo-sources-2.6.12-r6, and have a Geforce 4 420 go (32MB VRAM).

When I've tried nvidiafb, I'll post my findings back here, and hopefully it will bring us both more insights.

----------

## lunarg

Bad news. The result is the same as with you. nvidiafb doesn't want to jump to framebuffer mode, not even with low resolutions. In fact, I had to recompile the kernel again without nvidiafb for it broke vesafb-tng as well  :Sad: 

Looks like I won't be able to help after all. Sorry.

EDIT: also, using nvidiafb broke nvidia binary driver.

----------

