Here are some things you can try:
(Please read the whole post and note where variables are shown my settings are in parentheses)
Edit your /etc/modules.conf file so that it ignores EDID values:
options nvidia NVreg_Mobile=N
(options nvidia NVreg_Mobile=2)
where N is equal to the listing from the README under the Laptop section (since you're using a Toshiba, yours is probably N=2). NOTE: This must be after the aliasing of the device therefore if you install the driver again you need to re-edit this file.
Tip: You can see the values for N by doing the following - (alternatively just download it)
1. Extract the package from the run script:
% ./NVIDIA-Linux-x86-1.0-xxxx.run --extract-only
(The % is a shell prompt)
where xxxx is the driver batch version
2. Do a grep on the README:
% cat NVIDIA-Linux-x86-1.0-xxxx/usr/share/doc/README | grep laptop
In addition there is a hex value of 0xFFFFFFFF to indicate auto-detect, which is the default value
Also add this to your XF86Config file:
Under Section Monitor set your HorizSync and VertRefresh:
where a and b represent the lower and higher bounds for the Horizontal Sync Rate and c and d represent the lower and higher bounds of the Vertical Refresh Rate
Under Section Device (for the video card):
Option "IgnoreEDID" "1"
Make sure you use the native res for the screen:
Where # is equal to your desired color bpp and NATIVE is equal to your native resolution.
It should also be noted that I personally have problems with the latest drivers (I get a lot of visual tearing and a vertical bar down the center). If you have these kinds of problems consider using the last set of drivers - the 4363 batch.
If you get lots of distortion/tearing check to make sure you have high enough frequencies under the monitor section.
If you get a blank or a "trippy" looking screen make sure you disabled the EDID lookup. NOTE: There is also a kernel module option for SoftEDIDs, I've tried to use this and it fails for me. Instead use the IgnoreEDID setting.
For a convenient way to gather a list of most (if not all) the options do this (Must be run as root):
% XFree86 -configure
(That % is the shell prompt)
It should make a dummy XF86Config file in your /root directory.
Once you have this file edit it accordingly:
1. Change Freqs.
2. Add bool for IgnoreEDID
3. Add DefaultDepth and Modes
4. Change mouse to correct device handle (i.e. /dev/usbmouse or /dev/mouse)
5. Change the protocol to "IMPS/2" (if you are using the X for Linux, *BSDs can ignore this)
6. Add Option "ZAxisMapping" "x y" where x and y correspond to the wheel buttons (usually 4 and 5) (FreeBSD has another directive to do this check the FreeBSD home page).
7. In addition disable Modules dri and GLcore if applicable and ensure that you have Module glx on
8. Do any other modifications you need
9. Move the file to /etc/X11 or as appropriate
Just for your information I have an 1955 Toshiba Series Satellite and the above works for me well enough.
If you need to, always test to make sure you can get X to load up with just a basic driver (i.e. the vesa driver). That way you know that it is the Nvidia configuration giving you problems.