Linux on a Toshiba Satellite 310 CDS
Note: this information is related to 2.2.x Linux kernel version series, so it can be outdated or inaccurate. Anyway, it can still be useful.
Fear and Loathing in the Laptop
Installing Linux in a laptop computer isn't easy, mostly because of the vendor's usual obscurity and the usage of strange or poorly documented hardware. This page tells the thing I had to do to set up innsmouth.
The X Server to use is the
XF86_SVGA and it should run straightforward as
configured with the usual tools. The bundled video card is a Chips and
Technologies VGA, as
First video: Super-VGA Chipset: Chips & Tech F65555 (Port Probed) Memory: 2048 Kbytes RAMDAC: Generic 8-bit pseudo-color DAC (with 6-bit wide lookup tables (or in 6-bit mode))
After visiting several pages with wrong information about the setting up of laptops like this, I found this configuration working for me. I have it directly compiled into kernel, but it should work as modules too.
<*> Sound card support <*> OSS sound modules <*> Support for Yamaha OPL3-SA2, SA3, and SAx bases PnP cards (-1) Chipset (-1 for autoprobe, 2, or 3) (530) OPL3SA2 audio I/O base (530 - F48 valid) (9) OPL3SA2 audio IRQ 5, 7, 9, 11, 12, or 15 (1) OPL3SA2 audio DMA 0, 1, or 3 (0) OPL3SA2 second (duplex) DMA 0, 1 or 3 (370) OPL3SA2 control I/O base (100 - FFE valid) (330) OPL3SA2 MIDI I/O base (300 - 334 valid) (9) OPL3SA2 MIDI IRQ 5, 7, 9, 11, 12, 15
All this info (can differ) is available in the BIOS setup. You can get to it pushing Esc while it shows the stupid Toshiba splash screen (be fast).
For musicians, users of equipment like this: as you can see, there are two parameters that talks about a MIDI interface, concretely a base address and IRQ. This seems to say that the Yamaha OPL3SA2 chip includes complete support for controlling external syntesizers, but I didn't find a word about this in Toshiba (of course not) nor Internet. If anyone knows is it's possible to attach (modifying the external case, I suppose) a MIDI connector to this internal interface, please drop me a note.
IrDA and the Palm Pilot
To HotSync a Palm Pilot, you must correctly configure the messy IrDA stack protocols. PalmOS version must be at least 3.3, that lets you sync using the infrared port. The kernel options to set are as following:
IrDA (infrared) support ---> <M> IrDA subsystem support --- IrDA protocols <M> IrLAN protocol <M> IrCOMM protocol [*] Ultra (connectionless) protocol [*] IrDA protocol options --- IrDA option [*] Cache last LSAP Infrared-port device drives ---> --- SIR device drivers <M> IrTTY (uses Linux serial driver) <M> IrPORT (IrDA serial driver) --- FIR device drivers <M> Toshiba Type-O IR Port
As can be seen, everything is compiled as modules (I couldn't get them to
work directly compiled into kernel). Also, for some reason, the modules
aren't automaticly loaded; I have to force them to load with
modprobe ircomm-tty, as told below.
Next, we must ensure that the necessary devices
created (these let us use the infrared port as a standard serial port, by
the IrCOMM protocol). If not, you must create them using
mknod /dev/ircomm0 c 160 0 mknod /dev/ircomm1 c 160 1
Now, to force autoload of Toshiba's IrDA specific driver, we must add
these lines to
alias char-major-161 ircomm-tty alias irda0 toshoboe alias tty-ldisc-11 irtty
The nightmare goes on. Now we must download the IrDA/Utils package from
http://irda.sourceforge.net . The tool we need is
irattach, and is used this way:
modprobe ircomm-tty irattach irda0
This has forced the
toshoboe module to load. Running
we can see:
Module Size Used by toshoboe 5440 1 ircomm-tty 16832 0 (unused) ircomm 5700 0 [ircomm-tty] irda 72225 1 [toshoboe ircomm-tty ircomm]
plus other modules not related. Now we can use
/dev/ircomm0 as a
serial port, we must only tell
coldsync to use
it as the communication port. Last but not least, I have to start the
HotSync in the Palm first for this to work.
The chipset bundled with these laptops is automatically detected by the PCMCIA installer and I hadn't any trouble.
The X mouse cursor always was too small; in LCD laptops like this, it's not
only small but impossible to find due to the blurry redraw of the screen.
To substitute the original cursor with a bigger one, you can get Marc
BigCursor2.pcf. To install (as root):
cd /usr/X11R6/lib/X11/fonts/misc mv cursor.pcf.gz cursor_old.pcf.gz # copy BigCursor2.pcf here gzip BigCursor2.pcf ln -s BigCursor2.pcf.gz cursor.pcf.gz