[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

NVidia-Driver not working on Satellite 5200-901



Hi,

we bought the Satellite 5200-901 and got around a couple of
problems. Kernel 2.4.21rc8 with acpi-20030523-2.4.21-rc3 is working
ok, now the i810_audio can be inserted and works as well. But the main
problem is still the graphics (XFree 4.1 from Debian woody, 4.2 didn't
cure it).

The "vesa"-driver is working ok, even with 1600x1200 but (of course)
ridiculously slow. The "nv" driver doesn't know the GeForce GX Go5600
yet, so it won't work. Maybe this could be fixed by using XFree 4.3
but then having a 3D-Acceleration would be quite pointless. Ok,
getting and building the non-free "nvidia"-Driver (version 4363) was
no problem, the kernel-module fits into the kernel nicely, X start but
displays utter crap: strange and large characters scattered around the
screen, the background is black and over the time filling with more
and more white pixels... The driver itself is quite happy, nothing
interesting in the logs (attached to this mail)...

The interesting this is: the driver really works! I've connected an
external LCD to the notebook, booted it and started X. The driver
correctly asked the LCD about it's specs and simply worked! About 2800
fps for the glxgears isn't that bad either... but using the internal
LCD would be a bit better ;)

However, I've narrowed down the problem a bit. This is what the
nvidia-driver thinks it is connected to (output from X -verbose 5):

(II) NVIDIA(0): NVIDIA GPU detected as: GeForce FX Go5600
(II) NVIDIA(0): Chip Architecture: 0x30
(II) NVIDIA(0): Chip Implementation: 0x31
(II) NVIDIA(0): Chip Revision: 0xa1
(--) NVIDIA(0): VideoBIOS: 04.31.20.33.b2
(--) NVIDIA(0): VideoRAM: 65536 kBytes
(II) NVIDIA(0): Connected display device(s): DFP-0
(--) NVIDIA(0): Detected TV Encoder: NVIDIA
(II) NVIDIA(0): Enabled display device(s): DFP-0
(II) NVIDIA(0): Mapping display device 0 (DFP-0) to CRTC 0
(--) NVIDIA(0): Display device DFP-0: maximum pixel clock at  8 bpp: 400 MHz
(--) NVIDIA(0): Display device DFP-0: maximum pixel clock at 16 bpp: 400 MHz
(--) NVIDIA(0): Display device DFP-0: maximum pixel clock at 32 bpp: 400 MHz
(II) Loading sub module "ddc"
(II) LoadModule: "ddc"
(II) Reloading /usr/X11R6/lib/modules/libddc.a
(II) NVIDIA(0): --- EDID Information for display device DFP-0 ---
(II) NVIDIA(0): Manufacturer: NVD  Model: 100  Serial#: 0
(II) NVIDIA(0): Year: 2002  Week: 45
(II) NVIDIA(0): EDID Version: 1.3
(II) NVIDIA(0): Digital Display Input
(II) NVIDIA(0): Max H-Image Size [cm]: horiz.: 29  vert.: 22
(II) NVIDIA(0): Gamma: 1.00
(II) NVIDIA(0): DPMS capabilities: StandBy Suspend Off; RGB/Color Display
(II) NVIDIA(0): First detailed timing is preferred mode
(II) NVIDIA(0): redX: 0.600 redY: 0.342   greenX: 0.295 greenY: 0.570
(II) NVIDIA(0): blueX: 0.147 blueY: 0.111   whiteX: 0.312 whiteY: 0.328
(II) NVIDIA(0): Manufacturer's mask: 0
(II) NVIDIA(0): Supported additional Video Mode:
(II) NVIDIA(0): clock: 65.0 MHz   Image Size:  286 x 215 mm
(II) NVIDIA(0): h_active: 1024  h_sync: 1048  h_sync_end 1184 h_blank_end 1344 h_border: 0
(II) NVIDIA(0): v_active: 768  v_sync: 771  v_sync_end 777 v_blanking: 806 v_border: 0
(II) NVIDIA(0): Monitor name: Nvidia Defaul
(II) NVIDIA(0): Monitor name: t Flat Panel
(II) NVIDIA(0): Ranges: V min: 0  V max: 60 Hz, H min: 29  H max: 49 kHz, PixClock max 70 MHz
(II) NVIDIA(0): --- End of EDID Information for display device DFP-0 ---

Of course, XFree kicks out all Modes > 1024x768... and displays
crap... I've tried several tricks: with 

   Option "IgnoreEDID" "true"

I can force the driver to 1600x1200-modes but the display is always
the same (strange characters, background getting lighter). Also, I've
forced him to certain modelines I found on the web, nothing
worked. Windows XP tells me that it's using a "1600x1200@60Hz"-mode,
I've provided the VESA-Modeline for this -- no luck. Other
frequencies, no luck as well.

We tried to ask the "vesa"-driver for a modeline with "xvidtune" but
that just fails with a SIGFPE (known bug). However, the logfile
contains the data the X-server wanted to tell xvidtune: all zeros in
it. Which is no great wonder, because the driver just asks the
VESA-functions to display a certain mode, IIRC it never has to deal
with modelines... The XFree-Log (attached as well) for vesa shows a
lot of mode-info but nothing which can be used to construct a modeline
(at least I haven't found that...).

But ok, there was still a trick left: by googling/reading the
Nvidia-README I tried

  modprobe nvidia NVreg_SoftEDIDs=0 NVreg_Mobile=X

but for no value of X (I tried the documented 1-5 and several random
numbers) the display showed something correct! Different, but always
incorrect. This is what the different values of X reported as
EDID-info: 

1  1400x1050 NVIDIA_SXGA
2  1400x1050 TOSHIBA Internal 1400x1050 pixels
3  1024x768  NVIDIA_XGA
4  1024x768  NVIDIA_XGA
5  1024x768  NVIDIA_XGA  

"strings nvidia.o | grep TOSH" finds the string "TOSHB_UXGA" in the
kernel-module but I've found no way of activating that...

I've further found a paragraph about that the nvidia-driver asks the
BIOS about what kind of hardware is attached. Thus I looked for a
newer BIOS. The highest version available for download is 1.20, the
notebook has got 1.30...


Does anyone on this list have an idea what else to try? Is there a
possibility to get the display specs to calculate a modeline? 

Cheers
   Thimo


P.S.: I've asked this on the toshiba-linux-list as well, but got no
      answer yet (after two weeks)

Attachment: xlog.nvidia.gz
Description: Binary data

Attachment: xlog.vesa.gz
Description: Binary data

Attachment: pgpmooaoGOwFm.pgp
Description: PGP signature


Reply to: