Linux on an Acer Extensa 502T

Introduction
Machine Specification
Installation
Modems
PC Cards (PCMCIA)


Last Update 1 October 2006

Acer Extensa 502T

Sound
Power Management
In Conclusion
Thanks
Endnotes



Introduction

This is a work in progress, that describes my use of Linux on an Acer Extensa 502T (which seems to be called a Travelmate in some territories). The information is given in good faith in the hope that it may help others attempting a similar installation, but comes without any warranty or guarantee of fitness for purpose. If it makes your sound card squeal like a dozen tomcats at midnight, and the power switch becomes inoperative - don't call me! Corrections, suggestions and constructive criticisms are, however, welcome at the email address below.

Update 20011016

Some time after I first wrote this article, it transpired that Windows was no longer required on this laptop. I reformatted the hard disk, and installed SuSE Linux Professional 7.1. It installed 'out of the box' with no problems and little fiddling required. Such is the pace of improvement in the Linux world. This fact probably makes the rest of this article redundant, but I'll leave it up for historical information!

Update 20020207

The machine has subsequently been upgraded to SuSE 7.3. Again, a straightforward process with no drama. I also applied the Zlib and one or two other patches from the SuSE update site. The machine does exhibit the occasional hardware lockup of the modem, which can usually be cured by ejecting and re-installing the card.

I've had a few emails now querying the memory size I quote in the article, 160MB. People have pointed out that Acer claim a maximum upgrade size of 128MB, which indeed is true. My machine had as originial equipment one 32MB memory module. When I wanted to upgrade to 128MB, I assumed I would need two 64MB modules, and that the 32MB part would be junked. I took the machine to a memory shop in Hong Kong, where they tested it, fitted a 128MB module to the empty slot, and retested it. It seems to be quite happy with this configuration, and has been running like this for a few years. The memory module was part number MTC-P1600/128 (128MB SDRAM).

Update 20050719

We all get older, and the Extensa laptop featured in this article is no exception. Shortly after the 2003 update, the machine passed to one of my daughters for use whilst at university. It came back to me recently with two problems - an unwillingness to log on a user due to a completely full disk drive, and a broken screen frame.

The machine, as supplied with a 4GB hard drive, was always a bit short on disk memory. After tracking down the drive to a carrier under the keyboard, this was changed for a 20GB part (734-600-0380 Travelstar 40GN 20.0GB UDMA100). See this page for details.

Although the screen was electrically functional, it was flopping about and scarcely held in place by the hinges. On examination it proved that the hinges had seized up, and subsequent efforts to close the case had broken the plastic case around the hinge mounting points. The screen was therefore discarded, and an external monitor plugged in.

The first attempts at installing an operating system were made using the Fedora Core 4 CDs. Unfortunately the installation attempt failed early on with a kernel panic. Fedora Core 3 was tried with similar results. Finally an attempt was made with Debian Woody discs, and this installed without problem. A base installation was performed, and then updated to 'Sarge' using the apt-get tool. This went reasonably smoothly, except that the kernel modules for ALSA sound did not seem to get installed, and had to be installed explicitly. After setting that up, the correct permissions had to be given to /dev/dsp before the sound would work. Likewise, read permission had to be given to /dev/hdc before ripperX would work. I suspect these shortcomings are more to do with the circuitous route to a 'Sarge' installation, and that the installer would get the right settings if an installation were made directly from a 'Sarge' install disk set.

Hopefully this machine will keep my daughter going until the second USW rolls off the production line...

Update 20051220

Dale Smith sent me an email to say that a service manual for the Extensa 500 series may be downloaded from this site which lists documentation for several Acer models.

Thanks, Dale!

Update 20061001

Recently the machine developed what appeared to be a motherboard fault and it was deemed not economical to try and repair it. RIP Acer Extensa 1998 - 2006.

The Installation

This article assumes the reader is reasonably au fait with installing DOS/NT, and has perhaps installed Linux on a desktop machine a few times. I'll include more details for beginners in subsequent revisions!

This machine was originally bought for my wife when she was travelling. Although not the smallest machine on the market, it did have the advantage of being self - contained, with no external drives required, and it had an internal modem (more of that later). After a while, our positions reversed, with me being the one living out of a flight bag, so we swapped PCs.

As supplied, the machine had a copy of Redmond's best installed, certainly not my OS of choice. I decided that I needed Linux on the machine to protect my sanity, and to hell with the FUD that says Linux is difficult to manage on a laptop. As I write this, I have a Portege 650CT on my desk that I am trying to upgrade to '98 for a colleague. It is giving me far more headaches than I have ever had with a Linux install.

Note that some of the solutions that did not work for me may not have been faulty in themselves. The installation has been an iterative process and later solutions may have worked because earlier problems had been fixed.

Machine Specification

Model Acer Extensa 502T
Processor 266MHz
RAM 160MB (32MB + 128MB)
Ethernet Card 3Com Megahertz 3CCE589EC
Modem 3Com Megahertz 3CCM156B
Sound Chipset Yamaha OPL3SAx
Hard Disk 4GB

Installation

Whilst most of my work can be carried out under Linux, some of my clients still have fairly complicated documents in the .doc format, and this necessitates having a multiboot system. The basic installation was done sometime before this article was written, so there is not as much fine detail here as I would like. One day I'll do a re-install, and take more detailed notes! The installation was performed as follows:

As it is easiest to install OpenLinux directly from the CD, the first step is to boot the machine, enter the BIOS setup routine and check that the 'Boot from CD' feature is enabled. As the machine was shipped, this feature was disabled.

I like to make a clean sweep when I do an install, so the machine must be THOUROUGHLY CHECKED to ensure that all valuable data has been backed up somehow - the procedure to be described will DESTROY ALL DATA on the disk. I make no apologies for labouring this point!!

The second step is to repartition the hard disk. Start the machine using a DOS boot disk that also contains the fdisk and format programs. Remove the existing partitions. (THIS WILL DESTROY ALL EXISTING DATA ON THE DISK!!) Then make a small FAT partition of 50MB or so ( C in Fig 1).

The third step is to install DOS onto the partition just created. I find DOS can be useful to have available, for example, to run the Plug and Play BIOS Data scanner described below. The area is also useful for exchanging files between Linux and Windows, as Linux can read and write to a DOS FAT16 partition, but only read from a Windows NTFS partition. Windows, of course, cannot see Linux partitions at all.

Fourthly, install Windows. I generally install generating an NTFS partition in the process, and then generate a further partition to hold the paging file. This helps alleviate the problem of paging file fragmentation slowing down the system. Note that as shown in Fig 1 I have allocated roughly half the disk to DOS/Win and half to Linux - obviously you can adjust this to taste.

Fig 1 - Partition Diagram

Partition Diagram

C - First Primary Partition /dev/hda1 - DOS 'C' drive
D - First Logical Drive in the Extended Partition /dev/hda5 - Win 'D' drive
F - Second Logical Drive in the Extended Partition /dev/hda6 - Win 'F' drive
Ext2 - Linux Partition /dev/hda3
S - Linux Swap Partition /dev/hda4
u - Unused Space

At this point we have an operational dual boot DOS/Windows machine, with the OS determined at boot time by the NT boot loader.

Now to install Linux. It is firstly necessary to make the Linux ext2 and swap partitions, and there are several ways of achieving this. The easiest is probably to use a third party Windows based partition manager such as Partition Magic. A similar result should be obtainable by using a Linux boot disk and the Linux version of fdisk.

Install Linux by putting the CD in the machine, rebooting, answering a few questions and letting it get on with it. You are even provided with a game to play whilst installation proceeds. I found that my network card and the video chip were correctly identified and the right modules loaded. However, the first time I did the installation, I tried the highest colour depth setting. This caused certain things, such as the icons in Netscape, to display incorrectly. I installed Linux for a second time after changing some of the partition sizes, and this time used a colour depth setting one down from the maximum. All icons now display correctly, and true colour images are still displayed well enough for my purposes.

Now that the operating systems are installed, it only remains to install a mechanism for selecting the desired OS at boot time. If you created the disk partitions with Partition Magic, you can install the companion Boot Magic to do this. Otherwise, it is possible to use the NT OS loader to boot Linux as described in the NT OS Loader + Linux mini-HOWTO. I have not tried this method with this particular configuration, although I have successfully configured a multiboot system using the NT OS loader method with RedHat Linux. (There are limits as to where the OS can be physically positioned on the disk).

/etc/fstab

To enable the non - Linux partitions to become visible in Linux, It is necessary to modify the /etc/fstab file. Log on as root, open a terminal window, change into the root directory and use the mkdir command to create a directory on which to mount each of the two non - Linux partitions. In this example, I have used dosc for the first primary partition (the DOS 'C' drive, known as /dev/hda1 under Linux) and ntd to mount the first logical drive in the extended partition (the DOS 'D' drive, known as /dev/hda5 under Linux). Then open a text editor and modify /etc/fstab. In the example the lines starting with /dev/hda1 and with /dev/hda5 were added.

/dev/hda3 / ext2 defaults 1 1
/dev/hda4 swap swap defaults 0 0
/proc /proc proc defaults 0 0
/dev/fd0 /mnt/floppy vfat defaults,user,noauto 0 0
/dev/hdc /mnt/cdrom iso9660 ro,user,exec,noauto 0 0
/dev/hda1 /dosc vfat exec,dev,suid,rw,uid=500 1 1
/dev/hda5 /ntd ntfs defaults 0 0

To find out what the various arguments do, type man fstab or info fstab at any terminal prompt. The most useful argument here is the one uid=500. This allows the user with a uid (user id number) of 500 full read/write access to the drive. Substitute the uid of your normal login here.

Modems

The computer was originally fitted with a WinModem which identified itself as shown below using Craig Hart's Plug and Play BIOS Data scanner:

PnPISA Device ID: ACRDB19 - Unrecognised PnP ID!
Serial# : 00000100h
Version : 01h; Revision : 00h
ID String : LT Win Modem
LogicalDevID : HSM0A19 - Unrecognised PnP ID!

This modem is fitted with the Lucent Apollo DSP 1641B chipset. Of course, until the LinModem driver is ready for the Big Time, this device only serves to heat up the case and drain the battery (but see note below). Fortunately it was not integrated onto the motherboard, but implemented as a module which was plugged to the underside of the motherboard with a SIM type arrangement. This made it easy to detatch and discard.

Note that since this article was written I have been informed by Werner Heuser at TuxMobil that there is a binary driver available for this device. I think I still have the modem card in the back of a cupboard somewhere - perhaps one day I will get enough time to try it!

The 3Com Megahertz 3CCM156B modem was detected by the Linux installation process and the correct modules were installed to drive the modem. All that remained was to set up Kppp. An initialisation string of:
AT&FX4B0E1V1Q0S0=0&A1&B1S2=128S7=55M1&H1&R2&M4&K1
was found to be effective. Note that this modem returns NO DIAL TONE rather than NO DIALTONE and the dialogue in Kppp has to be set accordingly.

PC Cards (PCMCIA)

As stated above, the internal WinModem was worse than useless (but see note), and discarded. It was replaced with a 3Com PCMCIA modem. Network connectivity was provided by means of a 3Com PCMCIA Ethernet card. Both of these devices were installed - the ethernet card in the top slot and the modem in the bottom - when Linux was installed, and the installation routines seemed to identify the cards and install the right drivers.

A minor niggle that still needs investigation is that when OpenLinux boots, the start up sequence reports a failure loading the PCMCIA core and the modules for driving the PCMCIA cards, although in practice the modules load and the cards function.

Another irritation was that the modem would occasionally refuse to fire up, and kppp would return a 'Sorry, the modem does not respond' message when trying to connect. I have a feeling - unproven - that this is to do with interrupt conflicts. The situation seems to have improved after modifying the configuration below to try and fix a problem with the sound card.

Since writing the above I have noticed that whenever the modem decides not to fire up an interrupt has not been allocated to the ethernet card. Further investigation required.

Craig Hart's PCI+AGP bus sniffer shows that the CardBus controller appears to like the following setup:

Vendor 1217h O2 MICRO Inc
Device 6832h OZ6832/3 CardBus Controller
Command 0007h (I/O Access, Memory Access, BusMaster)
Status 0410h (Has Capabilities List, Slow Timing)
Revision 34h, Header Type 82h, Bus Latency 20h
Self test 00h (Self test not supported)
PCI Class Bridge Subclass PCI-to-Cardbus Interface 00h
System IRQ 10, INT# B
PCI bus number 0, CardBus bus number 0, Subordinate bus number 0
CardBus latency 00h
Capabilities List Information :
Power Management Capabilities
Supports Power state D2
Supports Power state D1
Supports reduced clock speed (when idle)
Current power state : D0

I seem to recall that there was a 'funny' with this CardBus controller when used with the 3Com modem - this is still under investigation.

/etc/pcmcia/config.opts

This file has been modified to exclude irq 5 (for the sound card) and to reserve irq 3 for the PCMCIA modem (cua1) and irq 10 for the PCMCIA ethernet card (eth0). The file already excludes irq 4 which is used by the serial port on the motherboard.

#
# Local PCMCIA Configuration File
#
# System resources available for PCMCIA devices
#
include port 0x100-0x4ff, port 0x1000-0x17ff
include memory 0xc0000-0xfffff, memory 0xa0000000-0xa0ffffff
#
# Extra port range for IBM Token Ring
#
include port 0xa00-0xaff
#
# PNH Reserve interrupt for Modem (com2) and Network Card
reserve irq 3
reserve irq 10
# Resources we should not use, even if they appear to be available
#
# PNH Sound Card (see /etc/modules.conf)
exclude irq 5
# First built-in serial port
exclude irq 4
# Second built-in serial port
#exclude irq 3
# First built-in parallel port
exclude irq 7
#
# Options for loadable modules
#
# To fix sluggish network with IBM ethernet adapter...
#module "pcnet_cs" opts "mem_speed=600"
#
# Options for Xircom Netwave driver...
#module "netwave_cs" opts "domain=0x100 scramble_key=0x0"

Sound

OK - now for the nitty - gritty ... get the sound going!

Initial attempts to get the sound to work were spectacularly unsuccessful - no amount of fiddling would get a squeak out of the machine! I am fairly sure that I configured the on - board resources reasonably well with Isapnp, but I could not get the OSS OPL3SAx driver (supplied with OpenLinux 2.2) to load. The Opl3 driver would load, but not produce sound. Whenever the sound module was activated by means of isapnp, the PCMCIA modem would refuse to fire up. Some horrible conflict must have been occurring somewhere. If I get time I must do a test to see if these drivers work now the PCMCIA interrupts are tamed.

I started to poke about on the net for some possible solution, and came across this information on using the Yamaha OPL3SA chipset with the ALSA drivers and tools. I downloaded the source code and compiled up the ALSA driver, setting the option that caused IsaPnP support to be built into the sound drivers. I installed the drivers and began to try them out. To begin with, I allowed the system to define the setup of the audio card. I got sound, but with some strange effects - using the ALSA aplay program, a .wav file would play through *twice*. The KDE system sounds refused to work, and trying to play sound using mpg123 did nothing. After more fiddling I found setting up the ports in the modules.conf file cleared the problem. The Install file did say the ports needed specifying with a non - built in IsaPnP setup, but maybe all setups need this. The settings used are listed below.

/etc/modules.conf

This file has been modified (all the stuff below the PNH) as per the ALSA driver INSTALL file that comes with the distribution. These settings appear to work on this machine (so far).

keep

path[uusbd]=/lib/modules/`uname -r`/`uname -v`
path[uusbd]=/lib/modules/`uname -r`
path[uusbd]=/lib/modules/
path[uusbd]=/lib/modules/default

alias usb-0000.0000.01.00.00 usb-audd.o
alias usb-0000.0000.02.00.00 usb-cdcd.o
alias usb-057c.0000.00.00.00 usb-avmq.o
alias usb-0000.0000.03.00.00 usb-hidd.o
alias usb-0000.0000.03.01.00 usb-hidbp.o
alias usb-0000.0000.08.00.00 usb-msdd.o
alias usb-0000.0000.09.00.00 usb-hubd.o

alias parport_lowlevel parport_pc


# PNH Stuff added below for soundcard
# ALSA native device support
alias char-major-116 snd
options snd snd_major=116 snd_cards_limit=1
alias snd-card-0 snd-card-opl3sa2
options snd-card-opl3sa2 snd_index=0 snd_id="opl3sa2" snd_irq=5 \
snd_port=0x370 snd_sb_port=0x220 snd_wss_port=0x530 \
snd_midi_port=0x330 snd_fm_port=0x388 snd_dma1=0 \
snd_dma1_size=64 snd_dma2=-1

# OSS/Free setup
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss

Sound Lockup
After using the sound setup detailed above for a few months with command line programs such as mpg123 I decided to go for something a bit more graphical, and installed xmms. Every attempt to run this program was spectacularly unsuccessful, the net result being a few milliseconds of sound followed by a total system lockup - no mouse, keyboard, etc. I tried several things such as changing interrupts and DMA channels all to no avail. I even downloaded the source code to the 2.2.17 kernel and compiled and installed that along with other program upgrades and the latest ALSA drivers, again to no avail. I discovered that FreeA*p (now called Zinf) and KDE system sounds caused a similar lockup, but not, curiously the KDE Media Player. It appears that there is a fault in the PCI bridge of this laptop, and I eventually found this workaround in the form of a patch for the 2.2.13 kernel. I tried to apply the patch using the patch utility to the 2.2.17 kernel without success, so I applied the patch by cutting and pasting by hand. A quick recompile of the kernel and xmms was up and running! I hasten to add that this was the first time I have used the patch utility, so the problem was probably caused by me rather than the patch!!
Thanks to C. Leopold for this information.

Needless to say I have now switched over to the Ogg Vorbis audio format which I find gives superior results.

It should be noted that upgrading to the latest kernel will cause the version of kppp (PPP dialler utility) supplied with OpenLinux 2.2 to complain that there is no ppp support in the kernel (even if there is). A temporary workaround is to open kppp as root, after which it behaves normally until the next reboot. The latest version of kppp is supposed to fix this problem. It should also be noted that the latest PCMCIA utilities expect to find network configuration information in a different place ( /etc/pcmcia/network.opts ) to that supplied in the original distribution ( /etc/sysconfig/network-scripts/ifcfg-eth0 ). The information has to be copied across to the new location before the network interface will work. If problems persist try running the test_network script provided with the PCMCIA utilities.

Patch by C. Leopold

--- quirks.c    Wed Oct 20 02:14:01 1999
+++ quirks_acer.c       Wed Nov 3 17:01:44 1999
@@ -202,6 +202,12 @@
         */
        { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_82C586_0,    quirk_isa_dma_hangs,    0x00 },
        { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_82C596_0,    quirk_isa_dma_hangs,    0x00 },
+       /*
+        * This is a patch for ACER Extensa 5XX Notebooks
+        * now you can enable sound without crashes
+        * new patches are available at http://vde2.sow.fh-osnabrueck.de/~97et0126/acer.php3
+        */
+       { PCI_VENDOR_ID_AL, PCI_DEVICE_ID_AL_M1533, quirk_isa_dma_hangs, 0x00 },
};

__initfunc(void pci_quirks_init(void))

Power Management

I have not really tried to sort anything in the way of power management yet. The battery gets quite hot when charging, and does not operate the machine for more than half an hour. I have always put this down to poor conditioning when new, but there may be some connection with the fact that I do not run any power management software yet. Watch this space...

In Conclusion

I now have a very useable Linux Laptop, which is in daily use, both for work and also play - I love my Ogg Vorbis music! It wasn't really that difficult to get to this state, but a little bit of fine tuning could still be done. I will try and keep this article up to date with the progress. Hopefully, when the Wine project reaches maturity (or if I can persuade my clients to ditch the .doc format :-) ) I will be able to dispense with the non - Linux partitions. Any comments, observations or contributions are of course welcome, and I look forward to seeing more Linux machines out on the road!

Thanks

Advanced Linux Sound Architecture
Craig Hart's pages
Linux on Laptops
3Com
Acer
TuxMobil: UniX with Mobile Computers

See also

Do-It-Yourself Laptop and Notebook Upgrading, Modding and Repairing


Endnotes

12 February 2000 - 1st Draft
23 February 2000 - Add installation section, contents and improve structure
15 August   2000 - Convert text to XHTML
28 October  2000 - Add information about sound lockup problem
14 November 2000 - Add more detail to sound lockup problem
27 January  2001 - Change copyright notice
16 October  2001 - Add note about upgrade to SuSE 7.1
16 October  2001 - Add character coding declaration to HTML
1  December 2001 - Add Tux page icon - update XHTML declaration
24 March    2002 - Add modem information from Werner Heuser
7  February 2003 - Add canonical URL to W3C recommendations
7  February 2003 - Convert to PHP and add banner advertisement
7  February 2003 - Add information about Memory Capacity and 7.3 upgrade
7  February 2003 - Restructure introduction
7  February 2003 - Re-layout to new house style
8  February 2003 - Fix broken page icon and table border
21 February 2003 - Update TuxMobil link
3  March    2003 - Remove references to a company taking legal action that
                   may damage the Linux Community
7  August   2003 - Add 128MB SDRAM part number
7  August   2003 - Change Ogg Vorbis player reference to Zinf
19 July     2005 - Replace disk drive
19 July     2005 - Remove screen
19 July     2005 - Install Debian 3.1 'Sarge'
30 July     2005 - Add Google ads to page
30 July     2005 - Add new disk drive part number
4  August   2005 - Add link to page on changing the disk drive
20 December 2005 - Add link to manuals
1  April    2006 - Remove dead links
1  April    2006 - Gzip web page
1  October  2001 - Add final update

The title photo was taken with an Olympus C1400L, downloaded to the machine pictured with gPhoto and retouched and resized using the GIMP. Diagrams were produced with StarOffice 5.0 and exported in PNG format.

OpenDocument Format Also available in OpenDocument format: extensa.odt

See also:
| Building the Ultimate Student Workstation |



Project Gutenberg

Email Pete Harlow
Home Page
Disclaimer
Copyright (c) 2000 - 2007 Pete Harlow.
All trademarks and tradenames are the property of their respective manufacturers/owners.
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.

Valid XHTML 1.0! Valid CSS! Powered by PHP! GNU / Linux on Laptops

   2982 since 2006-10-01T11:24:35