kernel_optimize_test/drivers/video/nvidia
Paul Mundt 74f482cca5 fb: nvidiafb: Try harder at initial mode setting.
The current nvidiafb_check_var() simply bails out if the selected mode is
out of range of the panel dimensions.  A good question would be why the
bogus mode is being selected in the first place -- the panel dimensions
that are read back are certainly bogus, but alas, I have no idea where to
even begin looking at the i2c/EDID/DDC mess:

nvidiafb: Device ID: 10de0165
nvidiafb: CRTC0 analog not found
nvidiafb: CRTC1 analog not found
nvidiafb: EDID found from BUS1
nvidiafb: CRTC 0 is currently programmed for DFP
nvidiafb: Using DFP on CRTC 0
nvidiafb: Panel size is 1280 x 1024
nvidiafb: Panel is TMDS
nvidiafb: unable to setup MTRR
nvidiafb: Flat panel dithering disabled
nvidiafb: PCI nVidia NV16 framebuffer (64MB @ 0xC0000000)

In my .config I presently have:

CONFIG_FIRMWARE_EDID=y
CONFIG_FB_DDC=y
CONFIG_FB_NVIDIA_I2C=y

I've not tried fiddling with these options, as I haven't the vaguest idea
what I should be looking at.

As a workaround, simply groveling for a new mode based on the probed
dimensions seems to work ok.  While it would be nice to debug this further
and sort out why the panel information is bogus, I think it's still worth
retrying the mode based on the panel information at hand as a last-ditch
effort, rather than simply bailing out completely.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Cc: Antonino A. Daplas <adaplas@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-06 10:41:16 -08:00
..
Makefile [PATCH] Rewritten backlight infrastructure for portable Apple computers 2006-06-25 10:00:59 -07:00
nv_accel.c nvidiafb: prevent triggering of softlockup 2007-05-08 11:15:32 -07:00
nv_backlight.c backlight: Convert from struct class_device to struct device 2007-07-16 01:20:23 +01:00
nv_dma.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
nv_hw.c nvidiafb: Add proper support for Geforce 7600 chipset 2007-07-17 10:23:11 -07:00
nv_i2c.c nvidiafb: Correctly assign the i2c class with the port reversal 2007-10-16 09:43:20 -07:00
nv_local.h nvidiafb: prevent triggering of softlockup 2007-05-08 11:15:32 -07:00
nv_of.c [POWERPC] Rename get_property to of_get_property: drivers 2007-05-02 20:04:32 +10:00
nv_proto.h backlight: Remove uneeded nvidia set_power calls 2007-02-20 08:38:45 +00:00
nv_setup.c nvidiafb: Add proper support for Geforce 7600 chipset 2007-07-17 10:23:11 -07:00
nv_type.h nvidiafb: Add boot option to reverse i2c port assignment 2007-10-16 09:43:19 -07:00
nvidia.c fb: nvidiafb: Try harder at initial mode setting. 2008-02-06 10:41:16 -08:00