[ Skip to content]

Science and Engineering at The University of Edinburgh

School of GeoSciences

Personal Home Pages

Section Contents

Debian Linux and the Toshiba Tecra 9000

Disclaimer

I received this machine in August 2002, and got most of it working. There were a few odds and ends that I never sorted out yet, though. I retired the machine in June 2008, so much of this information is now historical. The recent postscript is that I dug it out of the cupboard in July 2009 to run Debian Unstable. There is a brief note on this down at the end of the page.

Pros and Cons of this machine

Pros
  • Silvery space-age styling
  • Nice fast processor
  • Lots of gizmos: CD-writer, built-in wireless networking
  • No missing ports: USB (x2) Firewire, IR, serial, parallel all present.
Cons
  • Moderately heavy
  • Display is only 1024x768
  • No 3-D accelerated support (No tuxracer, no AQFH...)
  • Winmodem useless under Linux New driver available -- see below.
  • builtin mouse is one of those horrid nipple things in the middle of the keyboard. I will never again buy a machine which has one of these instead of a touchpad.
  • (In my case at least) Reliability. My machine had to have a new mainboard after a few months as first the sound, then the wireless failed and finally it wouldn't boot. My suppliers fixed it without erasing my HD, for which I was very grateful. I was amused by the note that came back that said "Customer Software is at fault. Customer must correct this." Clearly they don't like Debian as the installation is working well, as detailed below. I'd be interested to know if this model is generally fault-prone or if I was just unlucky with mine.
  • I can't get the parallel port to work. Works with 2.6.x kernel.

Other sources of Information

The first place to look for info is Toshiba's own pages, which are full of useful detail. Google didn't find these for me, so it may be helpful to state that they are at http://newsletter.toshiba-tro.de/main. Another vital source of information is the Toshiba Linux Utilities web site. In particular, it tells you how to join the tlinux-users mailing list -- you will definitely want to do this. General info about Linux on laptops is at the Linux on laptops pages, including a link back to this page.

Finally, another user has detailed his experiences installing Mandrake linux on this machine.

Co-existance with WinXP

The machine came with Windows XP on a FAT32 file system. I wanted to keep this, so I tried to shrink the Windows partition. It is the first machine I have tried FIPS on and have it fail. Next I tried GNU parted This comes with a 2-floppy mini-Linux distro, which I couldn't boot on the T9000s USB floppy drive. Well, I could boot the first (boot) floppy, but I couldn't load the second (root) floppy. Bah! Next I tried a bootable business-card, which wouldn't boot. Bah again. I decided to remove WXP and have a Linux-only machine. Sorry, Bill. If you hadn't made it so hard for me, I might have been tempted to give WinXP more of a chance. Clearly the old "DOS ain't done until Lotus won't run" motto is now "XP ain't done until FIPS won't run." But in this case I consider M$ to have shot themselves in the foot.

Installing Woody

The woody install went exactly as a Debian installs usually go. The biggest problem was getting X to work, as I describe below. I have since upgraded to testing which fixes the X problem. Following a HD failure, I re-installed the new Debian stable (sarge) from scratch. This install was no problem as Sarge has a new enough X to work properly.

Network Card

This requires the eepro100 module or else Intel EtherExpressPro/100 support built into the kernel. Toshiba's pages suggest the e100 driver instead of the eepro100 driver. Initially I ignored this advice as I couldn't find the e100 driver in the kernel sources. I switched to it when I upgraded from 2.4.18 to 2.4.20 -- the e100 driver must have made it into the kernel at about that time. I have noticed no difference between the two drivers

Getting X to run

This was an instructive saga, but it should now all work in 2-D OK if you are running XFree 4.2. That includes Debian testing as of November 2002 and the current stable (sarge). There is no OpenGL (3-D acceleration) support for this machine.

When I first got the machine and installed Woody on it, lspci identified the graphics "card" as: S3. Inc.:Unknown device 8c2e. Initially, I assumed that this would not be supported by X as
X -configure

gave an error along the lines of "I don't know [Aabout this device yet". I tried telling Debian's config tool that it was an S3 card and then an S3 Virge card, but neither worked. The same thing happened when I went to testing and XFree 4.2 from the sources mentioned above. Bummer. My first answer was to build a kernel with framebuffer support and use the framebuffer driver for the X server. To get the frame buffer support in the kernel, you need to select
Console Drivers--->Frame-buffer support--->VESA VGA graphics console
You then need to tell the kernel at boot-time that you want a 1024x768x16 framebuffer. To do this, you need the line
vga=0x317
to /etc/lilo.conf . (If you want to play with available graphics modes, use
vga=ask
instead.) The docs you need to read are in the kernel source tree, in Documentation/fb/vesafb.txt and Documentation/svga.txt . This all works, but does seem to crash the machine quite often, reducing it to a state where it hears neither Ctrl-Alt-Backspace, Ctrl-Alt-Delete nor even Alt-Sysrq-Anything.

Then I found Toshiba's web site which says that the card is an S3 SuperSavage /IXC (Tristar64C). So I then ran Debian's configure tool again ( dpkg-reconfigure xserver-xfree86) and told it the device was "savage" . Worked first time. But you _do_ need a newer version of the savage driver than the one in Woody. My first source for this was to install XFree 4.2. When new versions (pre1v3) of XFree 4.2 appeared in the unofficial sites above, the debs were for unstable only and wouldn't install on testing, so I went back to the version of XFree 4.1 that was in testing at the time -- as I said, the savage driver does not work. My first fix for this was to grab the file xserver-common_4.2.0-0pre1v2_i386.deb (quick, before they remove it). Hand install that on top of the X packages from testing and everything works again. Hoorah. Well worth doing -- crashes much less often than the framebuffer X server. A better alternative is to get the savage driver itself from The savage driver web page. Duuh. You can even get it as a deb, which tidily diverts the original driver.

The most recent twist in the saga happened when XFree 4.2 made it into testing. If you go to testing now, you will find that XFree supports the card out of the box and lspci also knows what the device is called. You may need the options

        Option          "NoAccel"
        Option          "shadowFB"
in Section "Device" in your XF86Config-4 file. This is a thing that seems to change from release to release.

Dealing with the bouncy keys

A hugely annoying thing that occurs when using X on this machine (and many other Toshibas) is that the keys tend to bounce, mmeanning tthat mmannyy letttterrs get ttypped ttwwicce. To suppress this behaviour, one has to tinker with some obscure accessibility features of X. The simplest way to do this is to obtain the xkbset program from here (or just apt-get it if you are running testing or unstable). If you do
xkbset bouncekeys 20
then the keyboard suddenly becomes much more friendly. This friendly behaviour expires after a given period of inactivity. You will want to do
xkbset exp =bouncekeys
in order to have it persist indefinitely.

Now, it would be nice to have this behaviour be the default for your X server. If you run the program xf86cfg which probably came with Xfree 4.x and choose "configure AccessX from the menu at the top left, you will find you can choose to enable bouncekeys. The settings get written to the file /usr/X11R6/lib/X11/xkb/X0-config.keyboard, which you will want to edit by hand afterwards, since xf86cfg isn't geared up to setting bouncekeys to a value as small as 20. I have not yet found how to do the equivalent of xkbset exp =bouncekeys in this file.

This problem is common to many Toshiba laptops and various other solutions have been suggested. These include turning off xkb (not great if you have a non US keyboard) and patching the kernel (yowch!).

Annoying brightness feature

The display has three brightness settings (rather pathetically called semi-bright, bright and super-bright where anyone who didn't work in advertising would have called them dim, medium and bright). You can set the brightness easily with the toshset program. The laptop has a very annoying feature in that it turns the brightness down to semi-bright as soon as the battery gets down to 50% full. I'm sure it is just trying to be helpful, but there are many places where the lighting level means that one would prefer 40 minutes of super-bright to 60 minutes of semi-bright. So far, my only solution is this:

#!/bin/sh

while [ 1 ]
do
toshset -lcd super
sleep 0.1
done
There is a better way to control this, but it involves an acpi kernel patch so I have not yet got around to trying it.

Kernel

It is worth building your own kernel to get the Toshiba-specific things to work. And Debian's kernel-package makes this sooooo easy. You (probably) need to do this for the Toshiba Linux utilities to work -- turn on the Toshiba option in the "Processor type and features" section.

Power Management

If you have a kernel with APM enabled, you should be able to see how full your battery is, either by typing apm or by running a suitable graphical applet like the GNOME battery applet. You can also suspend to memory by logging in as root and doing apm -s The keyboard switch for this (Fn-F3) doesn't seem to work. Standby (suspend to disc) doesn't seem to work. There was never a separate partition for this on the HD like there has been on the Dell and Compaq boxes I have had in the past. This is because Toshibas handle suspend to disc differently from other portables. The Toshiba Linux Utilities project aims to support this sometime soon. You will want to install those utilities as they provide the only way to control the panel brightness etc. A command line version called toshset is available from here

Mouse

The internal pointer device (one of those horrid nipple in the middle of the keyboard things) is a PS2 mouse, as they usually are. If you plug an external PS2 mouse in the port at the back, nothing happens until you do a suspend-resume cycle, (and if the mouse wasn't plugged in at boot time, a re-boot is needed). By default, if the external mouse works then the internal nipple is disabled. This is very different behaviour to the Dell and Sony machines I have had in the past, where you could plug in the external mouse at any time and both it and the internal one would work at the same time.

You can get a bit more control over the mouse by using the toshset program mentioned above. In particular, if you do
toshset -pointer 3
then both internal and external mice will work at the same time. As with the act of plugging in an external mouse, you have to do a suspend-resume cycle before your command takes effect.

Function Keys

Not all of the magic things work that are done by pressing the Fn key and another key. The Fn-lock and Num-Lock work and the Internal/external/both display control (Fn-F5) seems to work. The Fn-Esc (Sound vol), Fn-F1 (padlock), Fn-F2 (lightbulb), Fn-F3 (suspend to memory), Fn-F4 (suspend to disc), Fn-F6 and Fn-F7 (brightness) all seem to do nothing at all.

Floppy Disc

The optional floppy disc drive does not plug into a proprietary connector or the removable drive bay as all the older ones I have met did. Instead it is a USB device. Your kernel therefore needs the USB mass storage device driver to use it (OK, so "mass" is overstating the case for this particular device.) Plug it in, and mount it like this:
mount -t vfat /dev/sda /floppy.
Of course, anything that assumes that your floppy drive is /dev/fd0 is going to have a nasty surprise with this piece of gear -- this, I think, is why I couldn't boot a 2-floppy mini-distro off it.

CD-ROM

This works as a perfectly ordinary ATAPI cdrom, appearing as /dev/hdc. If, however, you want to use it as a CD writer, you need the SCSI emulation support for IDE devices. You'll also need the generic SCSI support and the SCSI CD-ROM support turned on. You will also need the ordinary ATAPI CD-ROM support off (or at least built as a module and not loaded) as this gets used by default. Once you have done this, you should be able to write CDs. My biggest problem was learning to use XCDRoast as I have never written CDs before.

A (possibly Debian-only) CD quirk is that you need to add users to group "disk" before they can listen to audio CDs on an ATAPI CDROM. Once you switch to SCSI emulation, you need to add them to group "cdrom" instead. An oddity that I came across was that I needed to give my non-root users rw access to /dev/sg1 before they could use cdparanoia to get audio tracks off an audio CD-ROM.

Modem

The version of lspci in Woody lists this as Modem: Intel Corp. Unknown device 2486. The lspci in testing agrees with the list of PCI devices that it is an 82801CA AC ’97 Modem Controller. Toshiba's own pages suggest that it is a Softmodem (Lucent SCORPIO); maybe this is the same thing really.

Until very recently I believed that this modem was a driver-less dud. (Toshiba's web site used to give that impression by stating that there would never be a driver.) However, I just tried a new driver for it, and behold, it seems to work. I found the driver at emdete.de/mp-xp -- a site describing a much smaller machine with a similar modem. You need the tarball slmdm-2.7.8.tar.gz -- earlier versions are reported to not work. You can also get these drivers from Linmodems.org. The tarball was created by Smartlink

Sound

lspci lists this device as an Intel Corp AC97 audio controller. Toshiba's web pages list it as an AC 97 (YAMAHA YMF753). The OSS modules that you actually need are i810_audio (Intel ICH audio support) and ac97_codec (Yamaha YMF7xx PCI Audio (native mode)). What you don't need is the module ymfpci (Yamaha YMF7xx PCI Audio (native mode)).

This sound card won't work at low speeds or with u-law encoded sound like Sun's .au files. This means that many older programs that send 8kHz 8-bit audio directly to /dev/audio don't work or make odd chirpy noises. (Including xboing and Doom. Bummer!). I'm wondering if there is some way to remove /dev/audio and replace it with some magic that sends the sound via esd. It was suggested to me that the right thing to do was to use ALSA instead of OSS. I tried that, and indeed it is a huge improvement -- xboing and doom now make the right noises again. Configuring ALSA under Debian was a bit of an adventure, mind you. The module you need is called snd-intel8x0. There are still a few apps which have odd or jerky sound. (QuicktimePlayer.exe running under wine is one.)

PCMCIA/Cardbus

There are 2 cardbus slots, but I don't know if they work as I have no cards to plug in. Yet. I have built the PCMCIA modules that come with the kernel, not the separate package. You need modules pcmcia-core, yenta-socket and ds. Some of this happens by magic, but you _do_ need to edit /etc/defaults/pcmcia so that
PCIC=i82365
is replaced by
PCIC=yenta_socket
(Other distros: you may need to edit /etc/sysconfig/pcmcia or /etc/init.d/pcmcia)

Oddly, the built-in wireless card that came with the machine appears as a PCMCIA card even though you can't take it out. It needs the modules orinoco, orinoco_cs, hermes. At long last I have found a base station to test it with and it works fine.

Parallel Port

This doesn't work with 2.4.x kernels. I only realised this when I tried to resurrect an old printer and found that modprobe parport_pc causes an error. Most googling suggestions say to turn off PnP for the port in your BIOS, but Toshiba's weird bios doesn't support this. Switching to a 2.6.x kernel, the boot messages now say
pnp: Device 00:12 activated.
parport: PnPBIOS parport detected.
parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE,EPP]
and printing works as it should.

SD card slot

This is a thoroughly evil piece of proprietory hardware. There are no drivers for it at present and it appears unlikely that there ever will be. A pity, as I now have a camera that uses these cards. Drivers have recently been developed for some SD/MMC card readers (See here for details.) But they do not work with the device in the t9000.

IrDA, Bluetooth, Firewire

The box is supposed to have all these interfaces, but I have not tried to use them as I don't have any other gear with those interfaces for the computer to talk to. The 2.6 kernel recognises the Firewire device and sometimes causes trouble by attempting to make it be the first network device, eth0.

Postscript: the bleeding edge

In Summer 2009 I needed a spare machine to run Debian unstable, so I could have bleeding edge Evolution. So the t9000 came out of the cupboard. I wanted a clean install and anyway I had forgotten the root password. However the optical drive was worn out so I couldn't boot off that. And the machine wouldn't boot from the bootable USB stick that I set up. And I couldn't find a floppy-based distro that would successfully boot from a USB floppy. Eventually I set up a bootp server and a tftp server on another Debian box and net booted it.

With that sorted, the install was easy. I did a stock install of stable (lenny) with only the base system and immediately upgraded it to unstable (squeeze). The I installed X, Gnome and Evolution. Everything I tried seemed to just work. X needed no configuring and I even think that hardware 3-D acceleration is working. The stupid "bouncy keys" problem has vanished into the mists of history. However, I have not tried the wireless, any of the ports, the modem, the sound card or any of the ACPI features. (This in addition to the things I never tried with earlier releases of Debian.)

© School of GeoSciences --- Privacy & Cookies --- Last modified: 06 Aug, 2009 --- Page contact: