XFree86 on a Toshiba Satellite P25 17" laptop

Somebody brought one of these behemoths into my office and asked me to help them install Linux on it. It took a little fiddling (well, ok, 2 hours or so) to get XFree86 to display at the 1400x900 resolution of the screen. Here's the XF86Config file (goes in /etc/X11/XF86Config), hopefully it will save someone else some pain. The important bit is the ModeLine in the Monitor section. Note that it is configured for using NVIDIA's 'nvidia' driver. I got nothing but a black screen with the stock XFree86 'nv' driver.

How I Created the Mode Line

I've received several emails about this, the config file works for some and not others. Since I don't actually own or have access to one of these laptops, the best I can do is explain how I came up with my configuration and hopefully if the config file doesn't work directly on your laptop you can muck around with it. If you come up with a variation that works for you, let me know and maybe I can come up with a more general solution.

I started by looking at the XFree86 Video Timings HOWTO, which is aimed at creating mode lines for CRT displays, but at least gives an explaination of what the various numbers mean.

Here's the mode line I came up with for reference:

ModeLine "1400x900" 77 1400 1408 1416 1424 900 901 902 903

1400 1408 1416 1424 are the horizontal timings. 1400 is obviously the resolution we want. The other values are really only applicable to a CRT display. I initially tried setting them all to 1400, but XFree86 wouldn't take that. Then I tried 1400 1401 1402 1403, and then it complained that they had to be multiples of 8. So that's how I ended up with those numbers.

900 901 902 903 are the vertical timings. I arrived at these in a similar fashion, but they don't have to be multiples of 8.

Last but not least, 77 is the "dot clock" to use. The dot clock is the number of millions of pixels per second that the card should write to the screen. (The units typically given in hardware documentation are MHz.) This, combined with the horizontal and vertical resolutions, leads to the refresh rate of the screen. Based on the output from XFree86, I believe the video card in the Toshiba is capable of a dot clock up to 400. However, 400M / (1424 * 903) = 311 Hz, which is too fast of a refresh rate for the LCD screen. From what I've heard, LCD screens usually use a 60 Hz refresh rate. So 1424 * 903 * 60 = 77.2 MHz. I tried rounding up to 78 but that didn't work, so I rounded down to 77.

jheiss at aput.net
$Id: index.shtml,v 1.2 2003/08/20 17:45:10 jheiss Exp $