Contents


Updates:

2004/06/08: ipw2100 working without WEP
2004/06/04: new johnh page
2004/05/28: Fedora Core 2 works out of the box

Introduction

This document describes experiences with running Linux on a number of Toshiba Protege R100 (P-M ?) Model PPR10E-00LGH-EN (gaia, oyster, papagana [2004/04]) - see also freed and johnh.

This page was started the day the first machine arrived, and is developing.

As they are working sufficiently, they are given to their users, so I no longer have access to the machines (unless they happen to be on the internet, which is rare).

This report is listed at TuxMobil - Linux on laptops, notebooks, PDAs and mobile phones under Toshiba


Overall Description

The R100 comes with a 900MHz Pentium M (Centrino) with a 64KB/1MB cache, 256MB onboard, 12" XGA-TFT 1024x768, 30GBi.

Initial system Load

Pre-load

The machine comes with no external drive, i.e. no floppy or CD. It appears that it expects a USB floppy and a PCMCIA CD. It does a PXE boot and boots off a generic USB floppy, but the CD is less simple, as only some USB drives seem to work. I used PQMagic (using a Sony DRX-500UL USB DVD writer [did not see a Lacie DVD writer, even if it WAS designed by F.A.PORCHE!], which weighted about 10 times the R100!) and shrank the FAT32 FS from 30GB to 3GB (asking it to keep 16K clusters). On rebooting, it said that there was 500MB free, so I suspect PQMagic might have changed the cluster size.

A user reports

I've borrowed a USB CDROM drive that the BIOS is able to boot off just fine. However, if I try and use the Toshiba recovery CD, it boots the kernel fine (into Windows98) and then fails to see the CD as it only contains drivers for a very specific 16bit PCMCIA (i.e. not 32 bit PC Card) CDROM drive. I've tried a horrid hack using the USB drive to boot and then the VAIO PCMCIA card to try and get at the Win98 filesystem, but the drivers still don't work with the VAIO drive. Reading the Toshiba support site, it turns out that even if you have a Toshabia drive you may need to purchase a special "16 bit cable" to get it to work with the recovery CD.

The CD sounds like a complete and utter crock - It's obviously just a ghost image with a crappy Win98 wrapper to auto install it.

Anyway, I have made some progress. It turns out that RH9 boot CD works fine in text mode (there's no XF86 driver). Booting it up to a shell, I can then bring the LAN up, which seems to work fine.
and Rodrigo Castro reports
I bought a Toshiba PCMCIA DVD unit (external Slimline DVD-ROM), I have checked that PCIC="yenta_socket", but I can't make it run in Linux.

RedHat 9 network Load

I used a PXE boot, giving it `lang= devfs=nomount text' as the X server has poor colours.
I tried a Knoppix boot, but it failed to find the FS.
On papagana I use an iomega USB Floppy to start a RH 9 net install, then did a `std Lab' NFS install just hitting `RETURN' all the time.

Note that the screen appears to show only a section of console window (reed.net says to use `video=vga16:off' but this doesn't work for me). This made running `fdisk /dev/hda' tricky, but my fingers can configure a disk without help from my brain :-)

Set up hda3 as 917-1041 (1GB), hda4 as extended partition, hda5 as 1GB swap, and hda6 as an LVM partition to hold separate partitions for /tmp, /usr/share and a `cache' partition we use.
It all `just worked'.

`lspci' knows about most of the devices.

  
Fedora Core 2

John Heidemann reports: but he hasn't tried to use the onboard WiFi.

Device Tuning

Graphics - OK under FC2 - under RH9 CVS trident driver or fbdev (no suspend) or 8 bit vesa or 24 bit vesa (reselect VC)

FC2 `-configure' generates a usable trident configuration which works OK with ACPI suspend. Unfortunately RH9 is not nearly so simple.

  
CVS trident driver

A locally built copy of the trident driver for RH 9, from the CVS from the XFree86 4.3 live CVS tree as of mid September 2003 works with this config, but has no acceleration.
The user notes:
External VGA output seems to work too, though I'd recommend enabling it before starting X as I've seen some weirdness doing it after.
John Heidemann notes:
Whenever screen power status changes (ex. plugging or unplugging, or the screen blanks, etc.), the screen comes back at a low-resolution. Flipping to a different virtual terminal and back fixes the problem.

  
fbdev (no suspend)

If the kernel is booted with the flag `vga=791' (1024x768@16) or vga=792' (1024x768@24) then the fbdev driver works at the corresponding depth, using a pretty standard locally generated XF86Config file. 16bpp (791) is faster than 24bpp (792), but if 24 bpp or PAN are needed, accept the slightly slower response.
However, on resumption, the screen is blank with a flashing cursor at the TLHC.

8 bit vesa

Using the vesa driver and forcing `DefaultDepth 8' works fine.

  
24 bit vesa (reselect VC)

If you want more depth Rodrigo Castro points out that 24 bit vesa works, but X always starts up with an `odd' colour map. To fix this, select VC1 (Ctrl-Alt-F1) and then return to VC7 (Ctrl-Alt-F7).

Network - Intel PRO/100 (e100 UTP) OK

The e100 works out of the box under RH9 and FC2.

  
Network - WiFi needs tweaks

The WiFi is Centrino based, and isn't yet usable `out of the box' - lspci lists it as `Unknown device 1043 (rev 04)' under RH9 and `02:0a.0 Network controller: Intel Corp. PRO/Wireless LAN 2100 3B Mini PCI Adapter (rev 04)' under FC2. See the ipw2100 page, or download prebuilt RPMs hostap (WEP modules : kernel-module-hostap-2.6.5-1.358-0.1.3-4.rhfc2.at.i686.rpm and hostap-driver-0.1.3-4.rhfc2.at.i386.rpm), firmware (firmware : ipw2100-firmware-1.1-2.at.noarch.rpm), and finally ipw2100 (kernel drivers : kernel-module-ipw2100-2.6.5-1.358-0.45-4.rhfc2.at.i686.rpm ipw2100-0.45-4.rhfc2.at.i386.rpm). Then load atrpms-54-1.rhfc2.at.noarch.rpm atrpms-package-config-66-1.rhfc2.at.noarch.rpm (needed `--force') kernel-module-hostap ipw2100-firmware kernel-module-ipw2100 hostap-driver ipw2100 and modprobe the ipw2100 kernel module, and without an ifcfg-eth1, it was immediately associated with our AP, having found the broadcast ESSID which uses no WEP. dmesg shows:
ipw2100: Intel(R) PRO/Wireless 2100 Network Driver, 0.45
ipw2100: Copyright(c) 2003-2004 Intel Corporation
ipw2100: Compiled with LEGACY FW load.
divert: allocating divert_blk for eth1
Detected ipw2100 PCI device at 0000:02:0a.0, dev: eth1, mem: 0xDFDFE000-0xDFDFEFFF -> 53950000, irq: 11
eth1: Using legacy firmware load.
ipw2100: Associated with 'wgb-public' at 11Mbps, channel 1
See the ipw2100 INSTALL for more details.

PCMCIA - yenta_socket just works

PCMCIA seems to `just work' using the default yenta_socket.

audio - i810_audio or snd-intel8x0 just works

It uses i810_audio (and ac97_codec and soundcore) under RH9, and snd-intel8x0 (and snd_pcm_oss snd_mixer_oss snd_intel8x0 snd_ac97_codec snd_pcm snd_timer snd_page_alloc gameport snd_mpu401_uart snd_rawmidi snd_seq_device snd and soundcore ) under FC2.

USB - ehci-hcd / usb-uhci just work

Don't know which version of USB 2 it is, but it works.

APM - just works under RH9

`apm -s' puts it to sleep, and power button wakes it up.

There seems to be no way to `resume' mode in the BIOS, so the on/off switch cannot be set to suspend.

ACPI - S3 works under FC2

`echo 3 > /proc/acpi/sleep' correctly suspends it. Other numbers have no effect.

IDE tuning - RH9 no DMA so use 32-bit w/sync 4.75MB/s - FC2 dma 16MB/s

Under FC2 it works `out of the box' and gives 16MB/s. Under RH9 `hdparm -d1 /dev/hda' fails, so DMA cannot be enabled (even if the kernel is given `ide0=dma'). As such, use `hdparm -c3 /dev/hda' to raise the raw speed from 3MB/s to neare to 5MB/s - e.g. un comment out the `# EIDE_32BIT=3 ' in /etc/sysconfig/harddisks.

  
WinModem - needs patched slmdm-2.7.10 driver (50Kb)

Use the one character edit to make PCI_DEVICE_ID_ICH3 0x24C6 and slmdm-2.7.10 just works, manging 50666 to our 3Com TC box.

It appears to have no IRDA

  
User approach to centrino - use VMWare / cygwin

The majority of our users of these machines are doing OS research, and are deeply into Virtual Machines. As such, their approach1is to run the provided M$ OS, using cygwin to do the `easy' bits, and Linux running under VMWare for the `harder' bits. With native vern shareware Virtual Window Manager, M$'s TweakUI from PowerToys to enable `X-mouse' so that focus follows mouse, VMWare's hgfs, etc, all three worlds share a single home directory, and M$ (C:\Documents and Settings\$user\unix_home), cygwin (`mount c:\Documents and Settings\$user\unix_home /home/$user') and VMWare (`mount -bind /mnt/hgfs/$user /home/$user') worlds share the same filespace.
A .bat in startup starts X using `xwin -multiwindow -emulate3buttons', runs `xrdb -load .Xresources' to set up X resources and `ssh-agent xterm' to ensure that all X processes have an ssh agent. `rxvt -ls -sl 5000 -e bash' might be considered better than using M$ terminal windows. are all treated the same.
VMWare NpAT is used, with the guest OS always getting the same local DHCP IP address (e.g. 192.168.57.1), which should be added to the guest's /etc/hosts so that DISPLAY can be set to point at it.

This way Linux has access to devices and full control of the machine. Neat.

Remaining niggles

WiFi, Native X, DMA IDE, SpeedStep.

Footnotes

... approach1
I use the native MS XP OS, but try and make it looks as much like Linux as possible.

I installed Microsoft TweakUI from the Microsoft PowerToys and enabled 'X-Mouse' to get focus follows mouse (rather than click to focus). Rather than using the virtual window manager included with PowerToys, I use 'vern' which seems better once properly configured (there are loads of options).

I've also installed cygwin/XFree86, and found it much improved over the version I tried a year ago. I used 'setup' to install all packages.

I use the 'mount' command in the cygwin profile to mount c:/Documents and Settings/iap10/unix_home on /home/iap10 This keeps all 'user' files under the same subtree.

I start the xserver using 'xwin -multiwindow -emulate3buttons'. This allows Windows and X windows to nicely coexist on the same screen. I have a .bat file in my windows 'startup' directory that starts the xserver, 'xrdb -load .Xresources', starts 'ssh-agent', and pops up a terminal window.

Rather than using windows terminal windows, I find that 'rxvt' works rather better. I use 'rxvt -ls -sl 5000 -e bash' to get a login shell running bash with some decent scrollback.

I found that copying across all my normal .profile, .bashrc and .ssh directories worked just fine. It's also possible to run sshd, but I haven't used this much.

The other thing I've experimented with is VMWare Workstation for windows 4.0. I've installed a RH9 VM (guest) under this, into a 4GB file rather than a real partition. I then installed the vmware tools into the guest, which is well worth doing. I have VMWare configured to export c:/Documents and Settings/iap10 to the guest. It's available in the guest as /mnt/hgfs/iap10 which I then 'mount -bind' to /home/iap10 I end up with a unified directory tree, which is very nice.

I currently have guest networking configured to use NAT, but may switch to using a seperate IP. From the guest, the host always appears as 192.168.57.1 Adding an entry for this in the guest's /etc/hosts is really useful, as it enables you to set the DISPLAY variable such that all windows you create in the guest appear on the hosts' display. I never have to use the vmware console window at all (I start it auto-minimised, and ssh in from the host).

This setup seems to work pretty well for me as I wean myself off Linux and onto Windows...



Piete Brooks 2005-05-02