I have a Nvidia 7050PV onboard videocard connected to a 46" LCD TV via HDMI which has a 1920x1080 reolution.
When i run vbetest it reports 1400x1050 as highest selectable resolution.
attatching output of vbetest and cat /sys/bus/platform/drivers/uvesafb/uvesafb.0/vbe_modes.
Created attachment 138207 [details]
Created attachment 138208 [details]
uvesafb vbe_modes output
Created attachment 138210 [details]
dmesg | grep vesa
Please emerge v86d with the 'debug' USE flag and attach the output of `testvbe`.
Created attachment 138274 [details]
Since uvesafb and testvbe use exactly the same mechanism to get a list of supported modes and since the list from uvesafb lacks modes listes by testvbe, I guess the mode list returned by the Video BIOS is actually dependent on the time at which it is requested.
Could you please try building uvesafb as a module and loading it manually _after_ boot (i.e. at the same time you'd normally run testvbe)?
Created attachment 138333 [details]
uvesafb compiled as module
It seems to work as you say, now there are more modes listed now.
Are you also using the binary nvidia drivers?
If you are, try not loading the nvidia kernel module before uvesafb. My guess is that the mode list reported by uvesafb or testvbe will be the same as the original one which caused you to file this bug.
You are correct. I have now removed the nvidia binary module, rebooted and modprobed the uvesafb module. It now reports the same modes uvesafb does when compiled into the kernel. Also testvbe reports the same as uvesafb compiled into the kernel.
Unfortunately, there is nothing I can do there. Apparently the binary nvidia module somehow modifies the BIOS or the state of the video card so that more video modes are reported. If you need to use one of these modes, you can try loading the nvidia module before uvesafb (I realize this is very inconvenient).
Well its nvidia that sucks then :)
Now I at least know what the problem is, thanks.
This bug may have to be reponed, since the workaround with loading the binary drivers dont work anymore!
First i had uvesafb compiled into kernel, but i could not use my TFT native resolution (1440x900).
Then i followed the suggestions on this page to workaround this problem, but it did not helped:
nvidia module is loaded before uvesafb:
NVRM: loading NVIDIA UNIX x86 Kernel Module 177.82 Tue Nov 4 13:35:57 PST 2008
uvesafb: NVIDIA Corporation, G86 Board - p403h22 , Chip Rev , OEM: NVIDIA, VBE v3.0
An other thing to note: After loading uvesafb (doesnt matter kernel or module) with resolution 1440x900 it even sets to a higher resolution, which in my case isnt that bad since my monitor can still display things, but which will not work for all:
# D: 161.057 MHz, H: 74.529 kHz, V: 60.007 Hz
geometry 1600 1200 1600 9175 8
timings 6209 281 108 38 1 172 3
Frame buffer device information:
Name : VESA VGA
Address : 0xd1000000
Size : 14680064
Type : PACKED PIXELS
Visual : PSEUDOCOLOR
XPanStep : 0
YPanStep : 1
YWrapStep : 0
LineLength : 1600
Accelerator : No
sorry for the previous comment, it only affects widescreen resolutions which are not supported by uvedafb.