menu.jpg  ::  Home ::  Computing ::  Downloads ::  Scooter ::  Links ::  Music ::  Nonsense ::  Mail :: 

PC: Overview of the Linux related features of the Compaq Armada M700

Table of contents

1. Preface

This is a quick survey about Linux related hardware features of the Compaq Armada M700. I don't try to explain the usual installation details (for instance, which partitions I have made, what they are good for and so on and so on...). Requests for additional information may be directed by eMail to the author.

The laptop doesn't come bundled with ugly stuff like the infamous hidden "BIOS" partition, which was real common on Compaq desktop machines. A nice goodie is the facility to boot the notebook over a LAN (not needed here yet, but a nice to have feature).

The machine comes with APM v1.2. Standby- or suspend-mode is established by software (stock Linux apm utilities) or pressing the appropriate hardware button. The laptop, especially the keyboard, needs some time to wake up again, but APM works after all.

2. Installation

My Compaq Armada M700 runs these days on Gentoo Linux. Before there was Debian GNU/Linux 3.0 installed (vamped up with some backports). Both distribution avoid auto-configuration and some other here not wanted mumbo jumbo.

The system performs also well with:

but that's another story.

3. General Hardware Data

3.1 General system information:

Output from "cat /proc/cpuinfo":

   Linux odin 2.4.22 #5 Sun Oct 12 10:06:02 CEST 2003 i686 unknown

   processor     : 0
   vendor_id     : GenuineIntel
   cpu family    : 6
   model         : 8
   model name    : Pentium III (Coppermine)
   stepping      : 6
   cpu MHz       : 646.833
   cache size    : 256 KB
   fdiv_bug      : no
   hlt_bug       : no
   f00f_bug      : no
   coma_bug      : no
   fpu           : yes
   fpu_exception : yes
   cpuid level   : 2
   wp            : yes
   flags         : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr sse
   bogomips      : 1291.05

3.2 RAM

I bought the machine with 192 MB SDRAM (PC 100). 64 MB of them are fix installed on the system board, one of the two expansion banks houses a stick with 128 MB. I installed another stick with 64 MB in the second expansion bank, which brings the system's total memory up to 256 MB.

The laptop is quite happy with stock PC-100 SDRAM, no need to buy OEM sticks.

3.3 Hard disk

Toshiba MK2016GAP (UDMA with 20 GB)

Output from "hdparm -I /dev/hda":


   Model=TOSHIBA MK2016GAP, FwRev=U0.30 A, SerialNo=81D44589T
   Config={ Fixed }
   RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=46
   BuffType=unknown, BuffSize=0kB, MaxMultSect=16, MultSect=16
   CurCHS=17475/15/63, CurSects=16513875, LBA=yes, LBAsects=39070080
   IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
   PIO modes: pio0 pio1 pio2 pio3 pio4
   DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 mdma2 udma0 udma1 *udma2
   AdvancedPM=yes: unknown setting WriteCache=enabled
   Drive Supports : Reserved : ATA-1 ATA-2 ATA-3 ATA-4 ATA-5

   Filesystem           1k-blocks      Used Available Use% Mounted on
   /dev/hda2              1993160     23408   1969752   2% /
   /dev/hda3              4873520     11360   4862160   1% /home
   /dev/hda5             10241088   1197012   9044076  12% /usr
   /dev/hda6              1456368     87008   1369360   6% /var
   /dev/hda7               418528       256    418272   1% /tmp

   Disk /dev/hda: 240 heads, 63 sectors, 2584 cylinders
   Units = cylinders of 15120 * 512 bytes

      Device Boot    Start       End    Blocks   Id  System
   /dev/hda1             1        67    506488+  82  Linux swap
   /dev/hda2            68       332   2003400   83  Linux
   /dev/hda3           333       978   4883760   83  Linux
   /dev/hda4           979      2584  12141360    5  Extended
   /dev/hda5           979      2334  10251328+  83  Linux
   /dev/hda6          2335      2528   1466608+  83  Linux
   /dev/hda7          2529      2584    423328+  83  Linux

3.4 CD-ROM

Compaq "CD-224E" (24X Atapi) in the multi-bay.

3.5 Floppy drive

I'm a lucky owner of a floppy drive for this machine. The floppy drive is designed as a plugin for the multi-bay, but my multi-bay is used for housing my CD-ROM. But there is a parallel port cable as acessoire for the drive available, and this combo is even hot pluggable.

The sytem is bootable in both variations.

3.6 Graphic chip

ATI Rage Mobility P/M AGP with 8 MB RAM

This chip displays a resolution from "1024x768" with the Xserver "ati" from XFree86 4.1. Some hints form my XF86Config:

   Section "Device"
         Identifier      "ATI Rage Mobility"
         BoardName       "Rage Mobility Pro"
         VendorName      "ATI"
         Driver          "ati"
         ChipSet         "mach64"
         BusID           "PCI:01:00:0"
         VideoRam        8192

   Section "Monitor"
         Identifier      "TFT"
         HorizSync       28.0-96.0
         VertRefresh     50.0-62.0
         Option          "DPMS"

This chip doesn't handle DRM/DRI or X video extensions out of the box, but the GATOS project offers extension drivers for X video. They are available as source tarballs or as binaries, both for different XFree86 versions and perform quite well with MPlayer. As I don't need hardware acceleration on my laptop, I use the native drivers shipped with XFree86 vamped up with the GATOS extensions.

The chip performes well with the kernel's VESA driver on console and displays a resolution from "1024x768" - or 128 columns and 48 lines - with 16 bit color on text consoles. It's no problem to switch from the VESA console to the ATI X server and back. To enable the VESA mode for console, you need some options in your kernel configuration:


To make it all come true, the kernel needs to be booted with the append switch "vga=0x317".


Card bus bridge: Texas Instruments PCI1450

You need the modules pcmcia_core and yenta_socket. I have sometimes a Cisco Aironet 350 WLAN card inserted, which works fine on this card bus.

3.8 Sound

ESS Technology ES1978 Maestro 2E

The sound comes quite clear, but with all common disadvantages of sound on laptops (very weak basses and so on ...).

3.8.1 OSS

The module maestro loads with the two lines in /etc/modprobe.conf:

   alias char-major-14 maestro
   options maestro dsps_order=2 use_pm=1

3.8.2 ALSA

The module snd_es1968 needs the following lines in /etc/modprobe.conf:

   alias char-major-116 snd
   alias char-major-14 soundcore

   alias snd-card-0 snd-es1968
   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

   alias /dev/mixer snd-mixer-oss
   alias /dev/dsp snd-pcm-oss
   alias /dev/midi snd-seq-oss

   options snd cards_limit=1

3.9 Trackpoint

The notebook's got a trackpoint like the IBM Thinkpads and three "mouse" buttons. The whole stuff is recognized as a PS/2 mouse and works in X and on console with gpm started like this:

   # /usr/sbin/gpm -m /dev/psaux -t ps2 -Rraw -3

The X mouse listens to /dev/gpmdata. Here are some lines from my XF86Config:

   Section "InputDevice"
         Identifier      "Trackpoint"
         Driver          "mouse"
         Option          "CorePointer"
         Option          "Device"                "/dev/gpmdata"
         Option          "Protocol"              "PS/2"

3.10 Keyboard

The keyboard comes quite unspectular as a generic model with 104 keys. For getting the laptop (Fn) keys to work you'll need a BIOS build later than 23-May-2000. Older BIOSes seem to depend on Windows specific software.

I updated to the latest available BIOS (686H_20020315A, 15-Mar-2002), which also enables switching in the BIOS to different TV output formats.

This description of the Fn-keys and their usage is "borrowed" from Frank Steiner's Site, which describes a Linux-Powered Compaq Armada E500:

Fn-Key combo Purpose
Fn-Suspend button The suspend button is the blue round button. When pressed alone, the laptop suspens to RAM, if pressed together with Fn, it saves to disk (if this is enabled under Windows or with a Kernel >= 2.5).
Fn-T Toggle stretching resolutions lower than 1024x768.
Fn-F4 Switch between TFT screen and external monitor. Both screens can be run in parallel without problems. The external screen can be connected at any time.
Fn-F5 Activates the sound setting mode. With the left/right cursor keys you can lower/increase the volume of the speaker. The down cursor key will play a beep so that you can check the volume. Leave the mode with Fn-F5 again.
Fn-F6 Activates the quicklock.
Fn-F7 It activates the power saving mode. You can flip through the power saving schemes with the cursor keys.
Fn-F10 Activates the brightness mode. You can now lower/increase the screen brightness with the left/right cursor keys.

3.11 Infrared port - IrDA(TM)


The output of "setserial -g /dev/ttyS2", after

   /dev/ttyS2: Device or resource busy

There are no units with infrared ports all around here, so I haven't tested it yet. On the other hand there are no error messages on loading the modules or attching the device to the IrDA services in the syslog, so that everything seems to work.

On christmas holiday there was a friend of mine with a mobile phone around - and: It works, Yeehaw!

3.12 USB

USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB

As long as the machine got no floppy drive, I used an USB memory stick as my only writable removable storage medium. The USB controller needs the kernel modules usbcore and uhci, kernel's storage subsystem usb-storage and SCSI hard disk support.

In user space I prefer hotplug over usbmgr.

The output of /proc/bus/usb/devices:

   T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 2
   B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
   D:  Ver= 1.00 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
   P:  Vendor=0000 ProdID=0000 Rev= 0.00
   S:  Product=USB UHCI-alt Root Hub
   S:  SerialNumber=3400
   C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=  0mA
   I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
   E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=255ms

3.13 Ethernet chip

Ethernet controller: Intel Ethernet Pro 100

The on board chip uses the kernel module eepro100 and works like a charm.

3.14 Lucent LT WinModem

Serial controller: Lucent Microelectronics LT WinModem

The modem is on a mini PCI card and is a WinModem (aargh!). But anyway: A properly working driver is available at the LinModem Website.

The driver is composed of two kernel modules, which are compiled from very comfortable scripts included in the source tarball. There are also scripts for building RPM or Debian packages if required. Just install the driver package and kernel sources or kernel headers and see ...

There is no need to load the two kernel modules lt_serial and lt_modem before establishing the PPP connection, if you use the Debian package, which copies the modules to the correct places, sets symbolic links, drops a few lines in the modules configuration mechanism and so on. Just use wvdial or your dialup scripts - and they will be there.

The modem connects after all that fiddling as smooth as an on a former machine of mine used PC card modem.

Here is the download site for drivers to build with 2.6 Kernels.

4. Survey PCI Devices

Output from "lspci":

   00:00.0 Host bridge: Intel Corp. 440BX/ZX - 82443BX/ZX Host bridge (rev 03)
   00:01.0 PCI bridge: Intel Corp. 440BX/ZX - 82443BX/ZX AGP bridge (rev 03)
   00:04.0 CardBus bridge: Texas Instruments PCI1450 (rev 03)
   00:04.1 CardBus bridge: Texas Instruments PCI1450 (rev 03)
   00:07.0 Bridge: Intel Corp. 82371AB PIIX4 ISA (rev 02)
   00:07.1 IDE interface: Intel Corp. 82371AB PIIX4 IDE (rev 01)
   00:07.2 USB Controller: Intel Corp. 82371AB PIIX4 USB (rev 01)
   00:07.3 Bridge: Intel Corp. 82371AB PIIX4 ACPI (rev 03)
   00:08.0 Multimedia audio controller: ESS Technology ES1978 Maestro 2E (rev 10)
   00:09.0 Ethernet controller: Intel Corp. 82557 [Ethernet Pro 100] (rev 09)
   00:09.1 Serial controller: Lucent Microelectronics LT WinModem
   01:00.0 VGA compatible controller: ATI Technologies Inc Rage Mobility P/M AGP 2x (rev 64)

5. Survey PnP Devices

There are no PnP devices on board. The kernel output:

   isapnp: Scanning for PnP cards...
   isapnp: No Plug & Play device found

6. Survey RS232

Output from "setserial -ga /dev/ttyS[0-3]":

   /dev/ttyS0, Line 0, UART: 16550A, Port: 0x03f8, IRQ: 4
         Baud_base: 115200, close_delay: 50, divisor: 0
         closing_wait: 3000
         Flags: spd_normal skip_test

   /dev/ttyS1, Line 1, UART: unknown, Port: 0x02f8, IRQ: 3
         Baud_base: 115200, close_delay: 50, divisor: 0
         closing_wait: 3000
         Flags: spd_normal skip_test

   /dev/ttyS2, Line 2, UART: 16550A, Port: 0x03e8, IRQ: 3
         Baud_base: 115200, close_delay: 50, divisor: 0
         closing_wait: 3000
         Flags: spd_normal skip_test

   /dev/ttyS3, Line 3, UART: unknown, Port: 0x02e8, IRQ: 3
         Baud_base: 115200, close_delay: 50, divisor: 0
         closing_wait: 3000
         Flags: spd_normal

/dev/ttyS0 is the serial port (COM1), /dev/ttyS2 is the infrared port.

7. Conclusion

All hardware works well with a recent Linux kernel and my favourite distribution. There are no show-stoppers all around.

8. Disclaimer

This document has nothing to do with Compaq, they don't even know it exists. There is no guarantee that the information on this page is accurate, please don't hold me responsible if your experience is different from the information here. If you have found any glaring typos or outdated info in this page, please send an eMail to the author.

9. Credits

The basic of this report was generated by lanoche v0.6, which is available at TuxMobile - Software.

Valid XHTML 1.0

Zurück zur Main-Site
Created with Gnu-Emacs on Sun Oct 12 11:11:23 CEST 2003

Valid CSS