Please note: Information on this page is out-dated. Please refer to the Linux Kernel 2.6 on Gericom X5 Force documentation for a more recent version.
Installing and configuring Linux on a Gericom X5 Force requires some knowledge of Linux internals. You'll have to patch and re-compile the kernel, install additional kernel modules provided by third party vendors and you'll have to tweak your module and X11 configuration files.
Thus this document is not a "cookbook" but provides technical information and some additional hints which will ease your way to a full-featured Linux installation on the Laptop.
Just for the records: I'm using Debian GNU/Linux "SID" (the bleeding edge version of the distribution), a 2.4.21 kernel (compiled and patched manually) and XFree86 4.2.1 (from SID).
Please note that all information and hints are provided "as is" without any warranty! If your Laptop or your installation is damaged, don't blame me! I've warned you!
Surprise: All devices are supported by Linux!
Important note: According to Ralf's Linux on Gericom X5 web page, there are other X5 models using a different graphics device. I don't know, if this is a difference between "X5" and "X5 force", so check the output of lspci before statring the configuration!
The USB UHCI driver (kernel configuration variable CONFIG_USB_UHCI) works fine (tested with USB mouse, USB to serial adapter, USB harddrive).
Although with kernel 2.4.21 USB 2.0 is supported, it does not work reliable. I've also applied a patch found on Linux-USB.org which should improove stability, but problems didn't disapear.
The built-in 10/100 MBit LAN controller is supported by the VIA Rhine driver (CONFIG_VIA_RHINE).
The built-in FireWire (IEEE 1394) hardware is supported by the OHCI driver (CONFIG_IEEE1394_OHCI1394). I was able to access a harddrive connected via IEEE 1394 at a speed of about 25 MByte/second.
The CompactFlash slot is supported by the kernel's CardBus driver (CONFIG_CARDBUS). I've successfully read CompactFlash memory cards and used a D-Link DCF-650W WLAN card (requires kernel 2.4.20 or better).
To make CardBus work, two changes to the CardService configuration of the pcmcia-cs package are necessary:
Although VIA supplies a kernel module for the audio device, I strongly recommend to use the VIA 82C686 sound driver supplied by the vanila kernel itself.
As cdrecord, cdrdao and friends only operate on "SCSI" devices, it is necessary to enable the IDE SCSI emulation. This is done by the kernel configuration variable CONFIG_BLK_DEV_IDESCSI. Furthermore, you need to enable SCSI CDROM support (CONFIG_BLK_DEV_SR) and generic SCSI support (CONFIG_CHR_DEV_SG).
Additionally, you may have to make some devices nodes in the /dev/-directory:
cd /dev mknod -m 660 scd0 b 11 0 chgrp cdrom scd0 ln -s scd0 sr0 mknod -m 600 sg0 c 21 0
If you are using devfs this is not required, as the IDE-SCSI drive will request these device nodes to be created by devfsd.
Last, add this line to you kernel's image section in /etc/lilo.conf:
append = "hdc=scsi"
This will tell the kernel to handle the CD-ROM drive via the SCSI emulation.
To use cdrecord you have to set up the file /etc/default/cdrecord to contain these lines:
CDR_DEVICE=cdrom CDR_SPEED=24 CDR_FIFOSIZE=4m cdrom= 0,0,0 -1 4m "burnproof"
However, cdrecord fails to blank CD-RW media. Use cdrdaoinstead.
You need these lines in /etc/default/cdrdao:
write_device:/dev/sg0 write_driver:generic-mmc
It's unbelievable, but the modem's vendor SmartLink provides a Linux driver for the modem in the download section (you'll first have to read and accept the license agreement).
After downloading and unpacking the driver, it will compile and install some additional kernel modules for modem and fax support and create appropriate device nodes. The modem is accessible via /dev/ttySL0 as a standard modem. Compilation of version 2.7.14 will cause some warnings, but the driver loads fine.
However, the installation routine (make install) may cause problems, because it directly modifies the module configuration in /etc/modules.conf. At least on a Debian system, this file is automatically re-generated every time you invoke update-modules. Thus, I suggest to store these module configuration lines in /etc/modutils/modem and run update-modules:
alias char-major-212 slmodem alias slmodem slamrmo options slmdm country=42
Note: The country setting should reflect your location. Please refer to SmartLink's README file.
If you are using devfsd you'll have to generate a file named /etc/devfs/devices.d/modem with this content to make these device nodes permanent:
ttySL0 c 212 0 root dialout 666
For your convenience, the file /etc/devfs/conf.d/modem should contain:
REGISTER ttySL0$ CFUNCTION GLOBAL mksymlink $devname modem UNREGISTER ttySL0$ CFUNCTION GLOBAL unlink modem
This will generate a logical link pointing to the serial device. On Debian, you'll have to reload the devfsd with update-devfsd.
The GeForce 4 is supported by XFree86 4.2. However, the standard installation does not produce a signal on the VGA connector (ok, I didn't try very hard). Thus, you can't connect the Laptop to a beamer or an external monitor.
However, nVidia's XFree86 4.x driverprovided at their Linux download page works fine with XFree86 4.2.x and supports an external monitor.
After downloading the driver package just invoke it with sh NVIDIA-Linux-x86-1.0-4363.run. If asked, don't download a precompiled kernel module from NVidia but let the installer compile a kernel module on its own. The installer will copy the kernel module to /lib/modules/2.4.21/kernel/drivers/video/nvidia.o and the X11 device driver to /usr/X11R6/lib/modules/drivers/nvidia_drv.o.
To activate the kernel module you'll have to add the line nvidia to /etc/modules. This will load the kernel driver at boot time.
Furthermore, the /etc/X11/XFree86-4 configuration file needs some tailoring. Otherwise, the LCD will stay empty or get screwed up and won't even return to text-mode. I've managed to generate a configuration which shows the X11 desktop after invoking startx and which returns to the text-console after killing the X11 server or switching to the console by Ctrl-Alt-F1. Tailoring is done in the Device-section of the configuration file:
Section "Device"
Identifier "GeForce4"
Driver "nvidia"
Option "UseEdidFreqs" "false"
Option "TwinView" "true"
Option "MetaModes" "1024x768,1024x768"
Option "SecondMonitorHorizSync" "47-55"
Option "SecondMonitorVertRefresh" "60"
Option "TwinViewOrientation" "clone"
Option "NoTwinViewXineramaInfo" "false"
Option "NvAGP" "1"
Option "ConnectedMonitor" "CRT, DFP"
EndSection
Of course, the Screen section must be adjusted to reference this device entry correctly:
Section "Screen"
Identifier "Default Screen"
Device "GeForce4"
Monitor "LCD"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1024x768"
EndSubSection
EndSection
I've not yet tried to connect the Laptop to a TV.
The touch-pad can be used as a standard PS/2 mouse with two buttons. The "mouse wheel replacement" buttons don't work.
With the ACPI Kernel Patch, you are able to retrieve battery and AC adapter status. However, I didn't get suspend to disk or other power safe states working.
Haven't tried yet ....
Please note, that these files work well for my environment. I provide them as a starting point for your own customization. Please don't use them, if you do not understand, how these configuration files are interpreted by you system.
For questions, suggestions and enhancements, you can reach me at
. Please note that I do not have the time to provide basic
Linux support (e.g. "How do I download and compile a kernel").
| Last modified Saturday, 28-Feb-2004 17:51:04 CET |