Slackware Linux 12 on the Toshiba Satellite P205 - S6307

Version 0.12
Copyright © 2006-2007 by Zack Smith
All rights reserved.

0. Summary

Currently this is my assessment: This machine is an acceptable platform for Linux, with only one major problem:
  • The Atheros wireless card is not supported by the Madwifi driver. I tried using the popular ndiswrapper to run the Windows driver under Linux but it didn't work for me. (YMMV)
And there is 1 minor problem:
  • Currently cannot get intelfb framebuffer driver to support a higher resolution than 1024x768, although 1152x864 or fullscreen should be feasible.

1. System Profile

My P205-S6307 has the following hardware:

ItemDescriptionStatus
CPU Intel Core Duo T2130 @ 1.86GHz L2=1 MB Works
Memory 1024 megs DDR2 533 MHz (4200MB/sec theoretical max.) Works
Hard drive & controller Toshiba MK1637GS 160GB SATA drive & Intel 82801GBM/GHM (ICH7 Family) SATA IDE Controller Works
Optical drive Pioneer DVR-K17LF DVD writer with Labelflash & Intel 82801GBM/GHM (ICH7 Family) SATA IDE Controller Works with DVD-R, DVD+R, DVD+-RW, DVD-RAM
Display & Video Chip 17" 1440x900 LG-Philips TFT, model LP171WP4 & Intel Mobile 945GM Express Integrated Graphics Controller Works in wide-screen mode under X.
Sound Intel 82801G (ICH7 Family) High Definition Audio Controller Works fine (kernel 2.6.20.15)
Wireless Networking Atheros AR5007EG 802.11 b/g Wireless PCI Express Adapter Does not work (Madwifi driver doesn't support it)
Ethernet Realtek RTL8101E PCI Express Fast Ethernet controller Works great
USB Intel Corporation 82801G Works
Card34/54 slots Texas Instruments PCIxx12 Cardbus Controller Not tested
TrackpadSynaptics Works good.

2. Installation

This information is provided as-is. Proceed at your own risk.

2.1 Downloading Slackware 12

You can buy the DVD, or you can download it. If you download, it can easily require 12 hours, so plan to do it overnight. Amazingly, Toshiba includes an ISO writing utility with Vista. You need merely double-click on the ISO file's icon to start it.

2.2 Linux + Vista

I suggest that you do not use Vista connected to the Internet. There is some evidence that Vista communicates with servers at Halliburton, Department of Defense, and possibly Department of Homeland Security. This evidence first appeared on Whitedust.net, which shortly after was shut down suspiciously. Then a copy appeared at Abandonia, which then deleted the article. Best to be safe. If you need to use a Windows program, try running it in WINE. Source:

Infopackets article

If you must use Vista, there is no need to use ntfsresize if you are OK with reinstalling Vista from scratch. The Toshiba install DVD gives you the option to reinstall in a small partition that it will create. 20 gigs is the minimum. Then you can use the rest for Linux.

2.3 Linux alone

There's nothing preventing you from, upon buying this laptop, downloading the Slackware 12 DVD mentioned above along with the additional needed files and then completely replacing Vista. (If you need to occassionally run a Windows program there is the WINE emulator.) You may find that Linux lacks a few things you may want, like a certain video game, but otherwise Slackware 12 is surprisingly complete.

The only things that you'll need to get first are:

  • The DVD ISO if you don't have it.
  • Current Madwifi driver for the Atheros wifi chip -- in case they've added support by the time you read this.
  • Linux kernel 2.6.20.15 might be good -- the sound works w/this one.
  • The proper xorg.conf file (below).
2.3.1 Before abandoning Windows
If you plan on using Linux exclusively, be sure that before you do, you copy all of the Windows TrueType fonts to a disk for use with Linux. They're in c:\windows\fonts. Firefox looks much better when using Windows fonts.

2.4 Fine adjustments

The following is my personal checklist for installing Slackware on this machine. You may want to do things differently.

Install Slackware 12.
 If you install everything except TCL, Emacs,
 and KDE-Intl, it requires 4.04 gigs.
Get linux 2.6.20.15 and untar it into /usr/src.
Copy the good config to /usr/src/linux-2.6.20.15/.config
Go to /usr/src and remove the linux link.
Create a new link: ln -s /usr/src/linux-2.6.20.15 linux
Go to /usr/src/linux-2.6.20.15 and 'make'.
Do 'make modules_install'.
Put madwifi driver in /root.
Go to /root/madwifi* directory.
Do 'make'.
Do 'make install'.
Add -h to the poweroff command in /etc/rc.d/rc.6
    to ensure a quiet hard drive powerdown.
Add "hdparm -c1 /dev/sr0" to enable 32-bit mode.
Create /etc/hosts.deny as ALL : ALL
Copy the good xorg.conf to /usr/X11.
Reboot; wireless driver should load during startup.
Create user account.
Create mount directories for storage: mkdir /dvd /usb
Set acceptable speaker volume with alsamixer.
Store this volume setting w/ "alsactl store"
Add aliases to /etc/profile...
 alias d1="pushd; mount /dvd; cd /dvd; ls -l --color "
 alias d0="popd; umount /dvd"
 alias u1="pushed; mount /usb; cd /usb; ls -l --color"
 alias u0="popd; umount /usb"
 alias w1="iwconfig ath0 essid ...."
 alias w0="rmmod ath_pci"
 alias ll="ls -l --color"
 alias ..="cd .."
 alias D="cd /nt/Users/Me/Desktop; ls --color"
 alias lx="cd /usr/src/linux"
 alias mk="make"

3. Drivers

3.1. Video

3.1.1. X Windows
In Slackware 12, you can start up X Windows without modifying xorg.conf, however this will get you the VESA mode, which is 1024x768.

It is better to use the xorg.conf that I provide below, which allows for wide screen operation.

For a possible future alternative to X, check out my project FramebufferUI or my subsequent Frugal Windowing Environment.

3.1.2. Framebuffer
You can start up in VESA 1024x768 mode.

The intelfb driver works, but it doesn't let you change the video resolution. The documentation for the driver claims that it does, if you set the mode at /etc/lilo.conf, however that fails and the person that wrote the driver is unresponsive to emails. Here is an example of what doesn't work:

(in /etc/lilo.conf:)
append="video=intelfb:mode=1152x864-16@60,vram=8"
vga = 355 # 1152x864 16bit

Incidentally, I used the utility "915resolution" to confirm that there is no video BIOS mode for 1440x900.

The utility read-edid reports the following:

./parse-edid: parse-edid version 1.4.1
./parse-edid: EDID checksum passed.

Section "Monitor"
 Identifier "LPL:02a0"
 VendorName "LPL"
 ModelName "LPL:02a0"
 Mode "1440x900" # vfreq 59.901Hz, hfreq 55.469kHz
  DotClock 88.750000
  HTimings 1440 1520 1552 1600
  VTimings 900 917 923 926
  Flags "-HSync" "-VSync"
 EndMode
EndSection

3.2. Sound

The high-Def audio chip works with kernel 2.6.20.15, but not with 2.6.2[12].*.

Problems:

  • The headphone jack works but audio continues to play on the speakers while the headphones are in use, although not very loudly.
  • The volume control on the front of the machine doesn't work because it's a new type of control -- it's basically a jog dial without start or stop position. Using it results in codes being sent to the console.

Sound recording does work. The following command will record 10 seconds of WAV data:

arecord -d 10 foo.wav

3.3. ACPI

I haven't learned how to change the power-management strategy just yet.

CPU throttling appears to be unsupported, which is to say that this kernel feature, even when enabled, does not work.

3.4. USB

Four ports total. They work.

3.5. External flash drive

These work fine.

I ran some tests to determine the speed of my various CompactFlash cards, which was fairly revealing. Link.

3.6. Card34/Card54 slot

The Cardbus driver seems to load fine. I don't have any Card34 cards to test it with.

3.7 Networking

3.7.1 Ethernet
The Realtek RTL8101E Ethernet chip is a Gigabit speed chip and works very well. I am using the 8169 driver that's in the kernel.

Before you connect to a network, don't forget to create /etc/hosts.deny in which you should have the line:

ALL: ALL
3.7.2 Wireless
The Atheros chip that's in the system is not as of August 2007 supported by the Madwifi driver. In the Madwifi.org forums people do complain about this problem.

Here is the error from dmesg:

MadWifi: unable to attach hardware: 'Hardware revision not supported' (HAL status 13)

Someone claims in the Atheros forums that you can get it to work by changing the order in which the kernel modules are loaded, but I tried that without any positive result.

FYI, the process for using Wifi if you get it working is:

  1. modprobe ath_pci
  2. iwlist ath0 scan
  3. iwconfig ath0 ....
  4. dhcpcd ath0

3.8 Internal DVD writer

It works.

3.9 SATA drive

It works. The utility hdparm indicates (hdparm -I /dev/sda) that it's using udma4.

Be sure to include "/usr/sbin/hdparm -Y /dev/sda" near the end of /etc/rc.d/rc.6 to ensure that your drive shuts down quietly instead of with a "cluck-brrrr" sound.

3.10 Synaptics trackpad

Surprisingly, it works fine.

4. Performance

4.1. Video playback

Overall very good.

You will need to download xvid, xine-lib & xine-ui and compile/install them. The version of Xine that's included with Slackware 12 is broken.

After that, MPEG and Xvid videos play fine. However h.264 do not.

If you need support for h.264, get mplayer.

4.2. Hard drive

The program hdparm says that buffered reads happen at 43 MB/sec, which seems to be typical for a laptop drive. Cached reads happen at 905 MB/sec. I think file copying was 12 MB/sec.

You should add -h to the poweroff command in /etc/rc.d/rc.6 to ensure a quiet hard drive powerdown.

4.3. Processor

The Intel Core Duo T2130 has two processors and is sufficient for most purposes. It rates at 3724 bogomips.

The BYTE magazine Dhrystone benchmark, is available here. The T2130 processor gets an index of 180.5.

4.4. Memory Bandwidth

To ascertain memory performance, I wrote a utility called "bandwidth", which is here. The results for this machine are as follows. CPU throttling was not enabled.
CPU MHz = 1862.132
L2 cache sequential read 4194.3 MB/sec
L2 cache sequential write 3728.27 MB/sec
Main memory sequential read 3195.66 MB/sec
Main memory sequential write 1398.1 MB/sec
Framebuffer resolution: 1024x768, 16bpp
Framebuffer memory sequential read 40.96 MB/sec
Framebuffer memory sequential write 2621.44 MB/sec
Library: memset 1677.72 MB/sec
Library: memcpy 1118.48 MB/sec
Library: bzero 1677.72 MB/sec

4.5. Internal DVD writer

Reading works fine for single-session DVD-R & DVD-R DL discs.

I wrote a 2X DVD-RW at exactly 2X using growisofs.

I wrote a 16X DVD+R at using growisofs. It operated at three different speeds while writing the disk: 2.4X, then 4X, then 6X, the final one being the longest-used.

I have read a large file from a 3X DVD-RAM disk at 3.68 MB/sec = 2.8X.
I wrote a large file (with sync'ing) to a 3X DVD-RAM disk at 1.67 MB/sec = 1.27X.
These were 5 for $13 at Circuit City, rated on the disc as "2-3X".

4.6 KDE

I got tired of the fact that KDE crashes periodically so I switched to Xfce. It is much better.

5. Applications

If you're installing Slackware, you're probably already technically adept. Still, you may not know about all your options. Here is a table of equivalent applications between Vista & Slackware 12. (I'm not very familiar with KDE so I mostly leave its apps out.)
TypeVistaSlackware X-WindowsSlackware framebuffer Slackware command-line
Word processing MS Office, Open Office Open Office, Koffice - TeX
Web browser Firefox, IE Firefox, Mozilla, SeaMonkey, Konqueror ? Lynx, links
Email reader Thunderbird, OutlookExpress Thunderbird - Pine?
DVD writer Windows, Nero K3B - growisofs
Audio player WMP, Winamp, Real Xine fbxine aplay, amp, mpg123, mpg321
Video player WinDVD, Zoom player, Quicktime, WMP, Winamp, Real mplayer, xine fbxine - aplay, amp, mpg123, mpg321
Video editor Windows Movie Maker, VirtualDub AviDeMux - N/A
Photo editor Windows Photo Gallery, Photoshop, GIMP GIMP, xv ? N/A
CD ripper w/net capability Windows Media Player, FreeRip, iTunes - ?
DVD backup utility FairUse, DVDShrink, DVD Decryptor Same programs, run using Wine - ?
DVD authoring Movie Factory dvdauthor? - -
Simple document editor Wordpad ? ? ?
Text editor Notepad XVim ? Vim, Emacs
Keyboard macro utility AutoHotkey ? N/A N/A

6. Kernel

My .config file for kernel 2.6.20.15 is here.

Here is the compiled kernel that the above .config creates, which I provide AS-IS so you use it as your own risk: bzImage.

7. XOrg.conf

Section "Module"
    Load "dbe" # Double buffer extension
    SubSection "extmod"
      Option "omit xfree86-dga" # don't initialise the DGA extension
    EndSubSection
    Load "type1"
    Load "freetype"
    Load "glx"
EndSection

Section "Files"
    RgbPath "/usr/share/X11/rgb"
    FontPath "/usr/share/fonts/local/"
    FontPath "/usr/share/fonts/misc/"
    FontPath "/usr/share/fonts/OTF/"
    FontPath "/usr/share/fonts/TTF/"
    FontPath "/usr/share/fonts/Type1/"
    FontPath "/usr/share/fonts/CID/"
    FontPath "/usr/share/fonts/Speedo/"
    FontPath "/usr/share/fonts/75dpi/:unscaled"
    FontPath "/usr/share/fonts/100dpi/:unscaled"
    FontPath "/usr/share/fonts/75dpi/"
    FontPath "/usr/share/fonts/100dpi/"
    FontPath "/usr/share/fonts/cyrillic/"
EndSection

Section "ServerFlags"
EndSection

Section "InputDevice"
    Identifier "Keyboard1"
    Driver "kbd"
EndSection

Section "InputDevice"
    Identifier "Mouse1"
    Driver "mouse"
    Option "Protocol" "PS/2"
    Option "Device" "/dev/mouse"
EndSection

Section "Monitor"
    Identifier "My Monitor"
    HorizSync 31.5 - 50.0
    VertRefresh 40-90
EndSection

Section "Device"
    Identifier "IntelDriver"
    Driver "intel"
EndSection

Section "Screen"
    Identifier "LCD"
    Device "IntelDriver"
    Monitor "My Monitor"
    DefaultDepth 16
    Subsection "Display"
        Depth 16
        Modes "1440x900"
    EndSubsection
EndSection

Section "ServerLayout"
    Identifier "Simple Layout"
    Screen "LCD"
    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"
EndSection 

8. Mailing list

Link.
eXTReMe Tracker

Links