Linux on the Toshiba T400CDT Notebook

DISCLAIMER: There is no guarantee that the information on this page is accurate. I have no connection to Toshiba.


Kernel

All Linux-2.0.x kernels have been running without problems on this machine. Kernel patches are no longer necessary. (Though, noblink is recommendable.)

IDE (Harddisk and CD-ROM drive)

Works right out of the box. No additional kernel boot parameters necessary. System log messages:

hda: TOSHIBA MK1926FCV, 777MB w/128kB Cache, LBA, CHS=789/32/63
hdc: TOSHIBA CD-ROM XM-1202B, ATAPI CDROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
Make sure that /dev/hdc has major,minor 22,0.

Output of hdparm -t /dev/hda:

 Timing buffer-cache reads:   32 MB in  1.41 seconds =22.70 MB/sec
 Timing buffered disk reads:  16 MB in  6.57 seconds = 2.44 MB/sec
 Estimating raw driver speed: 16 MB in  5.87 seconds = 2.73 MB/sec

Advanced Power Management

APM including suspend/resume works fine. As kernel config, I use:

CONFIG_APM=y
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
# CONFIG_APM_DO_ENABLE is not set
# CONFIG_APM_CPU_IDLE is not set
# CONFIG_APM_DISPLAY_BLANK is not set
CONFIG_APM_POWER_OFF=y
System log messages:

APM BIOS version 1.1 Flags 0x02 (Driver version 1.2)
    Entry f000:e8e9 cseg16 f000 dseg f000 cseg len ffff, dseg len ffff
    Connection version 14.0
    AC on line, battery status charging, battery life 100%
    battery flag 0x09, battery life 184 minutes

PCMCIA

PCMCIA card services including hot-swapping work fine. Make sure to add PCIC_OPTS=irq_mask=0xefff to rc.pcmcia (or PCIC_OPTS=cs_irq=11 to /etc/sysconfig/pcmcia for a redhat setup) in order to avoid an IRQ12 conflict with the mousepoint. System log messages:

Linux PCMCIA Card Services 2.8.22 Intel PCIC probe:
  Intel i82365sl B step at 0x3e0, 2 sockets
  irq mask (scanned) = 0xe98, status change on irq 11
I have a 3c598 ethernet adapter which works fine.

XFree86

The T400CDT uses the CT65546 chipset on a VLB. It is fully supported by XFree86 3.2. On the 640x480 LCD panel, I run virtual screens of 1024x960x8bpp, 800x600x16bpp, 640x480x24bpp. Hooking up an external Monitor also poses no problems. Here is my XF86Config. X startup message (here for 24bpp):

XFree86 Version 3.2 / X Window System
(protocol Version 11, revision 0, vendor release 6100)
Release Date: Oct 26 1996
	If the server is older than 6-12 months, or if your card is newer
	than the above date, look for a newer version before reporting
	problems.  (see http://www.XFree86.Org/FAQ)
Operating System: Linux [ELF] 
Configured drivers:
  SVGA: server for SVGA graphics adaptors (Patchlevel 0):
      NV1, STG2000, et4000, et4000w32, et4000w32i, et4000w32p, et4000w32p,
      et6000, et3000, pvga1, wd90c00, wd90c10, wd90c30, wd90c24, wd90c31,
      wd90c33, gvga, ati, sis86c201, sis86c202, sis86c205, tvga8200lx,
      tvga8800cs, tvga8900b, tvga8900c, tvga8900cl, tvga8900d, tvga9000,
      tvga9000i, tvga9100b, tvga9200cxr, tgui9320lcd, tgui9400cxi, tgui9420,
      tgui9420dgi, tgui9430dgi, tgui9440agi, tgui9660xgi, tgui9680,
      cyber938x, clgd5420, clgd5422, clgd5424, clgd5426, clgd5428, clgd5429,
      clgd5430, clgd5434, clgd5436, clgd5446, clgd5462, clgd5464, clgd6205,
      clgd6215, clgd6225, clgd6235, clgd7541, clgd7542, clgd7543, clgd7548,
      ncr77c22, ncr77c22e, mga2064w, oti067, oti077, oti087, oti037c,
      al2101, ali2228, ali2301, ali2302, ali2308, ali2401, cl6410, cl6412,
      cl6420, cl6440, video7, ct65520, ct65530, ct65540, ct65545, ct65546,
      ct65548, ct65550, ct65554, ark1000vl, ark1000pv, ark2000pv, ark2000mt,
      mx, realtek, AP6422, generic
(using VT number 7)

XF86Config: /usr/X11R6/lib/X11/XF86Config
(**) stands for supplied, (--) stands for probed/default values
(**) module pex5.so successfully loaded from /usr/X11R6/lib/modules
(**) module xie.so successfully loaded from /usr/X11R6/lib/modules
(**) XKB: rules: "xfree86"
(**) XKB: model: "pc102"
(**) XKB: layout: "de"
(**) XKB: variant: "nodeadkeys"
(**) Mouse: type: PS/2, device: /dev/mouse, baudrate: 1200,
       3 button emulation (timeout: 50ms)
(**) SVGA: Graphics device ID: "SVGA"
(**) SVGA: Monitor ID: "T400CDT Flatpanel"
(**) FontPath set to "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled,/usr/X11R6/lib/X11/fonts/misc/,/usr/X11R6/lib/X11/fonts/Type1/,/usr/X11R6/lib/X11/fonts/wri/:unscaled,/usr/X11R6/lib/X11/fonts/wri.Type1/,/usr/X11R6/lib/X11/fonts/wri/,/usr/X11R6/lib/X11/fonts/75dpi/"
(**) SVGA: Using 24 bpp.  Color weight: 888
(--) SVGA: ct65545+: chip revision: 3
(--) SVGA: ct65545+: 1024 kB VRAM
(--) SVGA: ct65545+: TFT probed.
(--) SVGA: ct65545+: LCD
(--) SVGA: ct65545+: Display Size: x=640; y=480
(--) SVGA: ct65545+: VL Bus
(--) SVGA: ct65545+: base address is set at 0x7800000.
(--) SVGA: ct65545+: Linear addressing is enabled at 0x7800000.
(**) SVGA: ct65545+: 24 bpp.
(--) SVGA: ct65545+: using programmable clocks.
(--) SVGA: chipset:  ct65546
(--) SVGA: videoram: 1024k
(--) SVGA: Effective pixel clocks available:

(--) SVGA: Maximum allowed dot-clock: 26.666 MHz
(**) SVGA: Mode "640x480": mode clock =  25.175
(**) SVGA: Virtual resolution set to 640x480
(--) SVGA: SpeedUp code selection modified because virtualX != 1024
(--) SVGA: CHIPS: 126976 bytes off-screen memory available
(--) SVGA: CHIPS: SpeedUps selected (Flags=0xF)
(--) SVGA: CHIPS: H/W cursor selected

Svgalib

Starting with svgalib-1.2.11 the ct655xx chipsets are natively supported by svgalib and work well including hicolor modes.

Sound chip

The ESS688 is natively supported, i.e., 16bit as opposed to SB-pro 8bit. System log message:

Sound initialization started
 at 0x220 irq 5 dma 1,5
 at 0x388
Sound initialization complete

Output of cat /dev/sndstat:

Sound Driver:3.5.4-960630 (Sat Sep 14 18:24:46 MET DST 1996 root,
Linux luna 2.0.20 #6 Sat Sep 14 17:44:37 MET DST 1996 i586)
Kernel: Linux luna 2.0.20 #7 Sat Sep 14 18:28:38 MET DST 1996 i586
Config options: 880002

Installed drivers: 
Type 1: OPL-2/OPL-3 FM
Type 2: Sound Blaster

Card config: 
Sound Blaster at 0x220 irq 5 drq 1,5
OPL-2/OPL-3 FM at 0x388 drq 0

Audio devices:
0: ESS ES1688 AudioDrive (rev 6) (

Synth devices:
0: Yamaha OPL-3

Midi devices: NOT ENABLED IN CONFIG

Timers:
0: System clock

Mixers:
0: Sound Blaster

I changed the interrupt in the BIOS setup from the default IRQ10 to IRQ5 for some compatibility reasons under DOS but both settings work equally well under Linux. I did not enable the MPU401 feature due to the comments on the ESS688 in /usr/src/linux/drivers/sound/Readme.cards.


Other issues


Non-Linux related issues


Linux on other laptops

See the Linux Laptop Homepage for information on Linux on other laptops with loads of helpful information and links to other web pages.
An older version of this document describing a 1.2.13 kernel version setup still exists.
Send comments, questions, suggestions to:
Christian Burger <burger@terra.mpikg-teltow.mpg.de>
Last modified: 15-Aug-1997