Logo ©1994-2007 Kevin Boone
My professional interests
Computing
Law
Education
Science and research

My leisure interests
Martial arts
Heritage railways
Garden railways
Motorcycles
DIY

Downloads
Linux downloads
Windows downloads
Java downloads
Perl downloads
Home automation downloads

About me
Home & family
My CV

Site info
Contact the author
Download policy
Keyword index

  Home > Computing > Linux

Running Linux on the Toshiba Tecra M1

Last modified: Thu Jul 8 11:49:19 2004

Overview

The Toshiba Tecra M1 is a reasonably highly-specified laptop, with a good set of features and facilities. Like many modern laptops, it suffers somewhat as a result of the `Designed for Windows XP' mentality of its manufacturers. Consequently, it is not an ideal machine for running Linux, particularly compared with most Dell laptops, for example. If I were buying a laptop to run Linux on, the Tecra M1 would not be at the top of my list. Nevertheless, with a bit of fiddling around, most of the M1's components can be made to work with Linux to an extent that won't have you tearing out your hair.

Hardware

Here is a list of the hardware fitted in the M1.
  • CPU is an Intel Mobile Pentium running at 1400 MHz
  • The basic motherboard functionality is provided by the Intel 82801 (`Centrino') chipset, which provides USB, ethernet, IDE, modem, and audio support.
  • There are three USB ports on the machine. The Centrino USB controller is supported by the uhci module
  • The on-board ethernet adapter supports gigabit modes with the appropriate infrastructure, and is supported by the e1000 module
  • The on-board audio adapter is notionally supported by the i810_audio module; more on this below
  • The on-board VGA adapter is based on an unspecified Trident chipset, and has proven troublesome to get working
  • There is a single Firewire port on the machine; this is supported by the ohci1394 module
  • Some M1 models include a wireless ethernet adapter, based on Intel's PRO/Wireless 2100 chip. This was troublesome to get even partially working; see below
  • There are two standard CardBus PCMCIA slots, supported by the standard Linux kernel PCMCIA drivers
  • Some M1's have a built-in bluetooth adapter; mine doesn't, so I can't comment on it one way or the other
  • There is a built-in SD card reader, based on a proprietary Toshiba chip. To the best of my knowledge, there is no Linux support for this chip at all.
  • Some (all?) models have a CD writer; this works fine with the cdrecord utility, and the ide-scsi module to make it look like a SCSI CD.

Installation

I started with a RedHat 9 distribution, but it was necessary after installation to install a later kernel to get the wireless networking to work. So, if you're installing a packaged distribution, make sure you elect to install the C compiler and other development tools so that you can rebuild the kernel later. I think that the basic RedHat 9 installation would have been fine for everything except the built-in wireless ethernet adapter.

Because the video hardware is wrongly detected by the RedHat installer, it's easiest to run the installer in text mode (enter linux text at the installer boot prompt). Apart from this, the RedHat installation was unproblematic.

Kernel

You'll need kernel 2.4.23 or later to use the experimental driver for the wireless ethernet adapter. If you're using a stock kernel from kernel.org, don't forget to enable support for `generic IDE DMA chipset', or you won't get DMA on your hard disk.

Wireless ethernet

There is no support for the Intel 2100 wireless unit in the stock kernel. However, it turns out that there is an experimental driver under development at ipw.sourceforge.net. Don't fall into the trap of forgetting that the wireless transmitter has an on-off switch on the front of the case! I spent several hours fiddling around with the driver before I realized that the hardware was switched off. In unencrypted mode, the driver sort-of works. That is, you can communicate for a while, then it slows right down. Reloading the driver sometimes helps. I noticed the same behaviour in Windows XP as well, so this may be a BIOS/hardware problem, and not the fault of the driver. I could not get it to work at all in WEP mode. In reality, with wireless ethernet PCMCIA cards selling for about 20 quid, it's hardly worth worrying too much about. In any case, the built-in unit only supports 802.11b, which is rapidly becoming obsolete.

Video adapter

The video adapter is support (sort of) by the trident driver in XFree86 4.3.0. The trick is to specify the option ShadowFB in the device section of XF86Config:
Option	    "ShadowFB" "true"
Even then, the display sometimes appears as if zooming in to the top-left corner. Pressing the Fn+F5 key combination (which switches the video output device) a few times usually fixes it.

The enduring problem is that there doesn't seem to be any accelaration support, which will be a show-stopper for many people. Neither the xv extension or hardware direct rendering (dri) work. The former is usually necessary for playing video, because it speeds up the process of scaling bitmaps to fit the display. The latter is necessary for most games. It is possible to play DVD movies on the M1 under Linux, and the display quality isn't too bad; but if you try to play a video which is recorded in VHS quality (usually 356x288 pixels), you'll really notice the problem if you try to scale it to full screen. The lack of acceleration even seems to be apparent when, for example, dragging windows around on the screen. It isn't a problem, but it's noticeable.

Sound

Sound has proven to be almost as big a problem as video. The hardware is supported, to the extent that it is supported at all, by the i810_audio driver. However, it only accepts a limited range of sample rates. This means that software which plays audio, but lacks the ability to resample to an accepted sample rate, will produce very poor quality, broken sound. This affects me because my digital camera records movies with sound sampled at 8000 samples per second. Movies players like xine are unable to play these movies, because they don't seem to be able to resample properly. mplayer can be made to work, by doing the sound output through the SDL plugin. Presumably, the SDL layer takes care of resample. So I can play movies like this: mplayer -vo x11 -ao sdl {filename}

Power management

I'm happy to report that the M1 BIOS seems to offer proper APM support. APM is becoming increasing uncommon on new machines, which are tending to support ACPI instead. If you've read my other laptop articles, you'll be aware of how much more difficult it still is to get ACPI set up under Linux that good old APM. On the M1, fan control seems to work properly, and there doesn't seem to be any obvious overheating even under full load. Suspend and resume also work, although if you suspend with X running, the display tends to come back distorted. A couple of presses of Fn+F5 seems to fix it.

   
Search

WebThis site

Shameless plug

By the author of this site. Buy on-line from Amazon USA | UK

Editorial
So you want to be a university lecturer? Read this first!

Speak like your boss: new developments in managerese

Computing features
File handling in the Linux kernel: an in-depth look at how Linux handles files, filesystems, and file I/O

All sorts of Linux stuff

Confused about CLASSPATH? answers are here

First steps in EJB using jBoss (recently revised for jBoss 3.2)