Print Version | Search Site

Overview

The following is some information I collected when installing Linux on my Toshiba Satellite 1415-S173 laptop. I am assuming that the following information will apply to all versions of Toshiba laptops in the 1410 and 1415 series.

This web page is listed at TuxMobil which is a great resource for information on using Linux with not only laptops but other mobile devices such as cell phones and PDA's.

Feel free to email me at chris at cnpbagwell dot com for further information.

The laptop contains the following hardware and

  • Mobile Intel(R) Cleron(R) CPU 1.80GHz (Works)
  • Intel 82801 I/O Controller (Works)
    • 2 USB Hubs (Works)
    • IDE U100 Controller (Works)
    • AC'97 Audio (Works)
    • AC'97 Modem (Works)
    • PRO/100 VE Ethernet (Works)
  • 15 inch 1024x760 LCD display (Works)
  • nVidia GeForce4 420 Go Video Controller with 16Meg (Works)
    • RGB Output (Untested)
    • TV Output (Untested)
  • Toshiba 30G Harddrive (Works)
  • TEAC DW-224E 24x10x24 CD-ROM and 8x DVD-ROM Combo Drive (Works)
  • ALPS Touchpad

Before Installing Linux

The system came with Windows XP pre-installed. Although I tend to avoid using Windows as much as possible, its nice to keep around for the occasional game or whatever that doesn't have Linux support. Normally, its very easy to install Linux on a computer that comes pre-installed with Windows 9x by using the program FIPS to shrink the FAT or FAT32 partition size. Unfortunately, Toshiba's version of Windows XP comes pre-installed using the higher performance file system NTFS which FIPS doesn't support.

The easiest thing would have been to shell out another $50 and buy a graphically program that can handle resizing an NTFS partition. This wasn't my prefered solution size my wallet was already a little lighter from buying the laptop.

Luckly, the Open Source community is catching up in this area and offers a free solution to resizing a NTFS partition; thanks to the Linux-NTFS Project. If you visit their site, you can download the NTFS Tools package (also called ntfsprogs). If you install this package, it will contain a command line program ntfsresize. The included man page explains how to use it.

I recommend downloading the Knoppix live CD. It not only works as a great resque CD, it also includes the NTFS Tools as well as a program called QtPartEd. The later program has a nice GUI for creating/modifying/resizing partitions; including NTFS partiions.

Once you get the partition how you want it, installing Linux is a breeze with most modern Linux Distributions. For instance, I used Fedora Core 5 and it recognized all the hardware except for the winmodem and installed working drivers. No downloading or messing with config files was required.

Keyboard Issue

When using some older distributions, you might notice a keyboard issue. While using X windows, keys could some time repeat themselves. For example, typing "ls[enter]" would often result in "lls[enter]" or "lss[enter]" which is quite annoying.

This problem appears to have been fixed by the X server included with Fedora Core 3. So I suggest upgrading to the latest version of your distribution if your having keyboard issues.

If you can't upgrade then do some research on using the SlowKeys accessability feature included in most modern X window servers. This feature ignores key repeats.

Xorg and ALPS Touchpad

Starting with Fedora Core 5, the touchpad is detected as a synaptics and the approriate synaptics driver is used. The hardware is really an ALPS touchpad but seems to be compatible.

The synaptics driver allows advanced features like a psuedo-scroll wheel on right edge of pad and pseudo-mouse buttons by tapping at the top of the pad. See the Synaptics Toubhpad Driver page for more information on features.

If possible, I suggest upgrading to Fedora Core 5 if you want to use the synaptics driver. It was very difficult to come up with proper option values with older distributions. The Synaptics Touchpad Driver page will give more information on that though.

NVIDIA XFree86 Drivers

NOTICE: This information was written based on Fedora Core 2 and 3. I have stopped using the closed source NVIDIA drivers and so have stopped updated this information.

Xorg server comes with a "nv" driver that supports most NVIDIA chipsets but only includes support for 2D acceleration. For people running older XFree86 software, the "vesa" driver will work but doesn't include any acceleration.

To get 3D acceleration, you will need to use NVIDIA's binary-only (closed soure) drivers. There are a couple of gotchas with doing this. The first is that you will need to modify your Linux kernel to get the NVIDIA drivers to work. All open source drivers make use of "DRI" that is built into the linux kernel to get the direct access to hardware required for acceleration. NVIDIA chose not to use this same interface and so you will need to modify your linux kernel to add in their interface. Luckly, NVIDIA released a nice install program that does all this modifications for you. You can find this program at NVIDIA's Linux site.

Since I was using a standard Fedora Core configuration, I simply followed the program instructions and had their software installed any my kernel was modified in seconds. I did have to modify my /etc/X11/xorg.conf file as directed by the /usr/share/doc/NVIDIA*/README installed by the program.

The second gotcha was that the new X driver would only run in 800x600 at most. The output from the X server (readable at /var/log/Xorg.0.log under Fedore Core) showed that the display's EDID was indicating that 916 was the highest resolution that could be displayed. I know this isn't true since the open source drivers would do 1024x768 just fine.

I found a suggestion on the internet that you could add the "IgnoreEDID" option to the xorg.conf file. This kinda worked and allowed me to use 1024x760 mode but the other modes were displayed off center or only showed portions.

After consulting the /usr/share/doc/NVIDIA*/README file again, I noticed that NVIDIA's drivers on laptops read the EDID data from a non-standard location and they allowed an option to override it. Following their laptop directions I was able to get all modes working. This was done by modifying the /etc/modprobe.conf (used to be /etc/modules.conf for Linux 2.4) file and adding the following line:

 options nvidia NVreg_SoftEDIDs=0

UPDATE: January 23, 2005 - With Fedore Core 3 and version 1.0-6629 of the nvidia drivers, the NVreg_SoftEDIDs option seems to be ignored (I do not know what the exact problem is). So I have reverted back to the "nv" drivers for the time being (I can still use the IgnoreEDID solution but games that run at 800x600 are off center").

Sound Issues

Sound worked for me right away. After running several different audio programs I did start to notice a problem. Any time I tried to play an audio file with a sample rate of 44100Hz some programs would say that the sound driver does't support that rate. mpg123 and ogg123 both failed this way.

Other programs, such as sox and xmms, were able to handle the problem and play the audio file; even though it was playing them at the slightly wrong rate. Those programs would print out that the sound driver also didn't like 44100Hz and instead used 48000Hz.

The problem is that the hardware only supports 16-bit signed stereo samples at a rate of 48000Hz. If your working with audio data of a different format and rate then either your application or audio device driver will have to convert it to this fixed format.

Since audio is working for the most part, I haven't bothered to look into any possible work arounds.

Software Modem

Another Linux user was kind enough to send me information on getting the internal software modem working (Thanks Moss!). It seems that the internal modem must be related to the Smart Link line of modems. It is possible to use their software drivers to get the modem working. The bad news is that this driver is partially binary which means it will always have to be manually installed after any OS upgrades.

Browse around their Driver Download section of the web site and look for the Linux Drivers page. The provided README provides good installation instructions.

Using their driver, I was able to get the modem to dail out but didn't bother trying to actually connect to another modem. Also, I only tested it with a Linux 2.4 kernel. Their latest drivers mention 2.6 support but I have not verified this was working.

USB

I have successfully used a wireless mouse and infrared adapter using the laptops USB ports. The laptop appears not to have any unusual USB issues.

ACPI

ACPI feature seems to be working good with Linux 2.6 kernels. I was only able to get Suspend to RAM working. The main trick is that to come out of suspend, you often use the power button. If your not careful, the power button event will be passed to the acpid process on resume and the system will shut right back down.

I got the following information from a post by Charles Curley on the Fedora Core mailing list.

To get Suspend to RAM working, create a file called /etc/acpi/events/power.button.conf and place the following data inside it.

 # Power button instruction for ACPI

# Time-stamp: <2004-10-25 root power.button>

event=button/power.*
action=/etc/acpi/actions/power.button.sh

Next, create the file /etc/acpi.actions/power.button.sh and add the following content. Be sure and do a "chmod 755 /etc/acpi.actions/power.button.sh" afterwards.

UPDATE: January 23, 2005 - Any time I use the nvidia X drivers, I must add a "rmmod nvidia" to the script below or the laptop is unable to shut down. As of late, I tend not to use the nvidia driver and so do not have the issue.

 # Run this script when the user hits the power button.

# Time-stamp: <2004-10-09 19:04:16 root power.button.sh>

# Check for hint to ignore power button. This is useful for wake from
# suspend to RAM, etc. If we don't do this, the computer will cycle
# through suspensions forever, or until it runs out of power. There
# seems to be a debounce problem. From
# http://memebeam.org/toys/ToshibaLibretto

POWER_IGNORE=/var/run/ignore_powerbtn
if [ -f $POWER_IGNORE ]; then
    rm -f $POWER_IGNORE
    exit 0
fi

sync

rmmod uhci_hcd
/sbin/service pcmcia stop

# So we know to ignore this script on the way back up...
touch /var/run/ignore_powerbtn
sleep 1

# Do the deed...
echo 3 > /proc/acpi/sleep

sleep 4

/sbin/service pcmcia start
modprobe uhci_hcd

exit 0

I was also able to get the Fn keys to control things like LCD brightness by using John Belmonte's libretto-hotkeys script. The only difference is that I moved the Fan toggle to F3 to match my keyboard pictures. To use it, I suggest saving the script as /usr/local/sbin/satellite-hotkeys, "chmod 755 /usr/local/sbin/satellite-hotkeys", and then modify /etc/rc.d/rc.local to run this script in the background ("/usr/local/sbin/satellite-hotkeys &").

Powered by PmWiki Last modified: January 21, 2006, at 04:14 PM