(Version numbers are of the form YYMMDD. An optional serial number may be added “.1″, “.2″, “.3″ to differentiate multiple updates occurring on the same day.)
Changelog (in reverse chronological order; the topmost item is the most recent):
- Update for Ubuntu 10.04 Lucid Lynx. This update was done to the best of my knowledge. I have not retested or reinvestigated old issues.
- Removed all instructions about installing Hardy or otherwise centered on Hardy. Hardy was an LTS version of Ubuntu. The new LTS is Lucid. If you need an LTS, do yourself a favor and install Lucid.
- Older changes can be found here.
I’m going to record here the caveats of installing Linux on a Compal IFL90 and on a Compal JFL92. My focus will be Ubuntu 10.04 aka Lucid Lynx. I’ll try to provide useful information for those who want to use other distributions.
The machine I own is actually a Sager NP2090 which is a Compal IFL90 configured and sold by Sager. The Compal IFL90 is actually available under a variety of different names depending on where it is bought. I bought my machine from PowerNotebooks, a reseller with great customer service.
My wife owns a Sager NP2092 which is a Compal JFL92 configured and sold by Sager. It was also bought from PowerNotebooks. The JFL92 has the same set of peripheral controllers as the IFL90. The main difference between the two machines is the CPU they accept. For most purposes, the JFL92 can be considered to be a newer revision of the IFL90.
Unless I state otherwise, you can assume that everything I say here applies just as well to the JFL92 as to the IFL90. But keep the following in mind:
- The only BIOS I have experience with on the JFL92 is version 1.16.
Acknowledgments: many thanks to the guys in the forums at notebookreview.com for testing, helping, googling and so forth. Special thanks to El Profe for translating and to anyusr for seeking information on the web. Special thanks too to walkerk at the Ubuntu Forums for providing the method by which to install kernel 2.6.22 in Feisty and 2.6.24 in Gutsy. Thanks too to the commenters on my web site who have provided information.
I divide hardware functionality into four categories:
- hardware which works right out of the box.
- hardware which works after manual configuration: configuration files might need to be edited manually, or software might need to be compiled, etc.
- hardware which currently does not work.
Again, keep in mind that Lucid is my guide to divide the hardware among those categories. Other distributions would have different results. I will only give details about the last three categories above plus items which will work right out of the box but for which there are some caveats.
Also note that I DO NOT TAKE RESPONSIBILITY IF YOU BREAK ANYTHING ON YOUR SYSTEM. You have to evaluate how comfortable you are with installing Ubuntu packages, performing compilations and editing configuration files. (Then again, people who have never used Ubuntu might be wondering what the heck I’m talking about with “Hardy” and “Karmic”. As usual, Google is your friend!)
At a glance
In the following table, “Y” means that it works, “N” means that it does not and “MC” means that it requires manual configuration to work. Columns marked “RB” mean that you should “Read Below” to know the full story. (Using the “find” facility of your browser is helpful to find the specific place.) For the “Linux in general” column, only “Y” “N” or “?” are possible since this is an abstract category. Items marked with (O) are optional when ordering the machine. Even for devices that show a “Y”, you should read the detailed information which follows to know about any potential issues. The Lucid + Procedure column shows the results of applying the installation procedure described below to a stock Lucid installation.
|Function||Linux in general||Lucid||Lucid + Procedure|
|TV Tuner (O)||?||?||?|
NOTE: I have all the optional devices in the table above except for Robson, the Infrared and the TV Tuner.
I maintain separate pages for the peripherals I use with my IFL90:
Hardware which will run right out of the box
- Network card: Broadcom BCM5787M
- Wireless (OPTIONAL): Intel 4965agn
- Video Camera: Chicony CNF6212.
- Sound: Realtek ALC268
- Touchpad: Elantech 810511-0911
- Memory card reader, according to [Bizcom] is a Ricoh R5C833. However, here is what lspci shows me:
0e:06.1 Generic system peripheral : Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 22) 0e:06.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 12)
Does this mean that the R5C833 is a combination of R5C822 and R5C592??? At any rate, it seems that the card reader is properly a R5C822.
- Hardware virtualization (Intel VT): yes! I can use kvm which depends on VT to run.
Hardware which will run right out of the box (but with caveats)
- Video Card: nVidia 8600GT
- Linux in general: supported both in open and closed source drivers. To take full advantage of the card, you need to use the closed source drivers.
- Lucid: use the restricted drivers manager to install the closed source drivers.
- Modem: Motorola UbiSurf(tm) SM56 Software Modem.
- Linux in general: the drivers exist.
- Lucid: go into the restricted drivers manager and add the one for the modem. I’ve done that and tried sending at and atdt and the modem responded. I do not know if there are problems because I don’t use modems anymore but I’m going to count it as “works”.
- Sleep and Hibernation work in Lucid.
- Sleep (Suspend-to-Ram): Definitely needs BIOS 1.13 or higher to work properly.
- Hibernation (Suspend-to-disk): See the note above about BIOS versions. IMPORTANT NOTE: in a few rare cases, after resuming from hibernation, the fan did not resume operation. If you use hibernation, do check whether your fan is working properly after resuming.
Hardware which will require manual configuration
- Fingerprint reader: Upek TCS4BA.
- Linux in general: There are reports that it works. See the fprint project.
- Lucid: I don’t have time to check. See also https://wiki.ubuntu.com/FingerprintAuthentication. See also Cezary’s page (in Polish; use Google to translate) on the IFL90 where he mentions a GUI tool which can access the fingerprint reader.
Hardware which does not work yet
- BlueTooth (OPTIONAL): Broadcom BCM2045 (Broadcom BCM92045MD)/Foxconn T60H928.06. BlueTooth worked fine in Hardy. Then there was a regression in Intrepid and Jaunty. I do not know whether the regression is gone in Karmic or Lucid. I have not tested. There’s a bug report. Note that this issue is not specific to the IFL90 but common to a whole range of machines. It is a Linux bug, not an IFL90 bug.
- Robson (OPTIONAL): Intel chipset. Does not seem supported.
- Infrared (OPTIONAL): ENE chipset… exact model unknown for now. I do not have this device.
- TV Tuner (OPTIONAL): Lifeview LR535NTA. I don’t have a clue about this device because I have not ordered it.
Installation procedure for Lucid
NOTE: USE THIS PROCEDURE AT YOUR OWN PERIL.
- You can use either the alternate install or the desktop install. I only used the desktop install.
- Follow the normal Ubuntu installation instructions.
- Install the closed source nVidia driver.
- (Optional:) Install the closed source modem driver.
Optional: You can install Cezary’s compal-laptop tool. Go over to his page and read what it does and how to install it. I don’t use it myself.
Upgrade procedure from Karmci to Lucid
I’ve not tried to upgrade this time, so I have no specific procedure in place. The instructions above (for installing from scratch) should put you on the right track.
How to add my repository to your sources
You do not actually need to do this to get Ubuntu working… but I’m keeping these instructions around… just in case.
- The repository is signed with my private OpenPGP key. Execute:
$ sudo nano /etc/apt/sources.list
Add the two following lines at the end of the file (replace the [distribution] bit with whatever distribution you are interested in “jaunty”, “hardy”, etc.):
deb http://lddubeau.com/downloads/ubuntu [distribution] main deb-src http://lddubeau.com/downloads/ubuntu [distribution] main
Save and exit. Execute:
$ sudo apt-get update
apt-get should execute normally except that it will complain that it does not have the GPG key for my repository. Execute the following commands to get my key:
# The next 3 commands import my public key to your # apt keyring. # (Note: if you don't have gpg installed already you should execute # "apt-get install gnupg" and continue after that is done.) $ gpg --keyserver keyserver.ubuntu.com --recv-keys F70DFA47 $ gpg --export --armor F70DFA47 > /tmp/key.asc $ sudo apt-key add /tmp/key.asc # apt-get should not complain about a missing GPG key now. $ sudo apt-get update # This installs the required package $ sudo apt-get install alsa-source
Quirks and Solutions
I am listing here some quirks and their solutions:
- Using the video camera:
- I never got ekiga-gtkonly to work.
- I was able to use ekiga. However, it needs to have the package libpt-1.11.2-plugins-v4l2 installed! This package may be missing from your installation so make sure it is installed before reporting problems with the video camera.
- For future reference, my preferences under the “Video Devices” tab are set to “Video plugin: V4L2″, “Input Device: USB 2.0 Camera”, “Format: Auto”, “Channel: 0″, “Image: None”.
A Note on the IFL90 and RFI
The IFL90 emits terrible RFI at VHF frequencies. I have not yet tested other parts of the radio spectrum (HF, UHF, etc). There are three solutions, in decreasing order of effectiveness at reducing RFI. First, turn off the laptop. Second, unplug the audio out cable: this will tremendously reduce the RFI. (For those second-guessing my investigative work: I know the problem is not in the external audio system because I also have an Acer using the same external audio equipment and the Acer does not create the same RFI.) Third, putting clamp-on ferrite beads on the audio cable also reduces the RFI.
NOTE: The instructions here are for BIOS version 1.16 but I’ve also used them for version 1.18 without any problem. Adapt as needed.
NOTE: You are following this procedure at your own risk. If things break, I’m not responsible.
NOTE: BIOS upgrades should always be performed with a full battery or preferably while on AC. If the process is interrupted before it is complete, you are likely to turn your laptop into an expensive and fancy brick.
This guide is based on this page about how to boot from a USB drive. I’ve boiled down the instructions to what worked for me. You may want to look at that guide if your situation is different than mine.
Here is the procedure:
- Install the necessary tools:
$ sudo apt-get install dosemu mbr dosfstools
- Get the BIOS from the official channels and unzip it somewhere.
- Now you need to format your USB drive as a hard-disk. There are basically two ways your USB drive can be treated: superfloppy or hard-disk. I know the hard-disk method works. I have not tried superfloppy. To do the following steps you need to know which device your USB drive appears as. With the hardware I have in my machine, it appeared as /dev/sdb.
- Your drive needs to have one partition on it. Mine was already set up that way because when I insert it, the filesystem is mounted from /dev/sdb1. If yours is not set up with one partition, you need to use cfdisk, fdisk, gparted or whatever you want to create one single partition on the device.
- Next, you want to set the MBR properly so that the device can boot:
$ sudo install-mbr -p1 [your device]
The -p1 argument tells install-mbr that you want to automatically boot from the first partition. Replace “[your device]” with the actual name of the block device, not the partition! It would be /dev/sdb for me. (NOT /dev/sdb1).
- Then you want to create a file system. I did not have to do that because I already had a filesystem on my disk. You may also skip this if you already have a file system, otherwise:
$ sudo mkdosfs -I [your partition]
Replace “[your partition]” with the partition on your device, not the block device itself! It would be /dev/sdb1 for me.
- Edit your ~/.dosemurc so that you can access your USB drive. Mine reads:
$_hdimage = "drives/* /tmp /dev/sdb1"
This means that the drives under ~/.dosemu/drives/ are going to be mapped to C and D. The directory /tmp is mapped to E. This is a placeholder really because E should normally be a CD-ROM drive. And /dev/sdb1 is mapped to F.
- If your USB drive was mounted, please unmount it.
- There is a bug currently in dosemu or Linux or something. To work around it, execute:
echo 0 | sudo tee /proc/sys/vm/mmap_min_addr
- Start dosemu in a terminal. It will start and display the usual messages. Now the default dosemu installation does some drive remapping in autoexec.bat so by the time you get the dos prompt the drive mappings are:
- C: what you booted from.
- D: this maps to your home directory in Linux.
- E: this maps to /tmp.
- F: this maps to your USB drive.
- Z: this is where FreeDOS is actually installed.
- Now you need to install FreeDOS on the drive so run the following:
$ z: $ sys f:
- Then you need to copy the files from the BIOS archive you downloaded. Go onto d: and cd to where the files are. Then copy them to f:.
- Exit dosemu by running exitemu.
- You are done in Linux so you can close everything you need to close and reboot.
- Press F12 to get the boot device list, select the USB drive.
- It should boot automatically but if you get a prompt of the form “MBR FA:”, hit A. Then you will get a prompt of the form “MBR 1234F:” hit 1.
- FreeDOS will ask for the time and date. Just hit enter.
- When you get to the DOS prompt, execute the batch file JFT02116.BAT by typing “JFT02116″ at the prompt and hitting return. (This is the file for BIOS 1.16. If you are upgrading to another BIOS find the appropriate batch file and execute that.)
- The flashing process will start. It takes a bit to go through the whole process.
Entries are in reverse chronological order. (The topmost item is the most recent.)
- Update for Ubuntu 9.10 Karmic Koala. This update was done to the best of my knowledge. I have not retested or reinvestigated old issues.
- Added a note again about fans not resuming after coming back from hibernation.
- Set the status of BlueTooth support to “N” because there’s been a lingering issue in Intrepid and Jaunty. It appears that the problem will be fixed in Karmic.
- Set the status of the fingerprint scanner to “Y” in Linux, “N” in Jaunty, and “RB” in Jaunty+Procedure. I have not developed a procedure for it and do not have time to research it. Added reference to some tools.
- Added reference to Cezary’s compal-laptop tool.
- Removed old cruft.
- Update for Ubuntu 9.04 Jaunty Jackalope.
- Removed the instructions to upgrade from Hardy to Intrepid.
- Changed the status of the fingerprint reader from “does not work” to “unknown”. I’ve lost track of what development has been made with supporting this hardware.
- Update for Ubuntu 8.10 Intrepid Ibex.
- Removed all instructions about installing on Gutsy. Please use Hardy or Intrepid.
- Removed the “Long term considerations” section since it became obsolete from Hardy on.
- Removed the instructions for upgrading to BIOS 1.13
- Removed several broken links appearing in the old Changelog.
- Reinstated the usage of ricoh-r5c832-fix.
- Added a solution to the momentary freeze problem during install or bootup.
- Update regarding an Ubuntu bug on the JFL92.
- According to Revan (search comments), the Express Card works.
- Spell checking… eek!
- Added information regarding the JFL92.
- Added information about making ekiga work properly.
- Updated the information regarding the fingerprint reader
- Cosmetic fixes.
- Proper support for sound needs modifications to alsa-base otherwise the sound does not recover from sleep or hibernate. I’ve updated the installation procedure accordingly.
- General cleanup of the procedures and what is supported and not.
- Added information about how to upgrade to BIOS 1.16
- Added a note about upgrading to Hardy and BIOS versions.
- ricoh-r5c832-fix is no longer needed in Hardy.
- Removed -phigh from the xserver reconfiguration command.
- Instructions for upgrading to Hardy Beta.
- Instructions for installing Hardy.
- Removed instructions for installing a Hardy kernel in Gutsy.
- Fan problem after hibernating occurs in 2.6.24-2.
- I’ve downgraded sleep and hibernate status from “Y” to “RB” (i.e. “Read Below”) because I think there are still issues.
- Updated instructions on how to use a Hardy kernel in Gutsy.
- Added instructions on how to use a Hardy kernel in Gutsy.
- Began forecasting support in Hardy.
- Added a warning about possible fan problems after hibernating.
- Removed the instruction to install debconf-support when installing audio since it does not seem to exist anymore.
- Added a bit of information about sound channels.
- Added links to new pages I created about how to configure in Unbutu peripherals I use with my IFL90.
- Help to upgrade to BIOS 1.13
- Suspend and hibernate work fine.
- Posted a warning about kvm.
- Spellchecked the page again. Yuck! Corrected many typos.
- Removed all instructions for Feisty. I do not support Feisty anymore and will not answer any questions about Feisty on an IFL90. Use Gutsy.
- Moved to Ubuntu 7.10 beta, aka Gutsy Gibbon Beta. The entire installation procedure is much easier than it was with Feisty Fawn in August. Kudos to the Ubuntu developers.
- There are two procedures: one for installation from scratch and one for upgrading from Feisty to Gutsy.
- Moved to alsa 1.0.15rc3 for sound support. This fixes the muting problem and adds support for microphones. I found that the recording obtained from the mikes is very noisy but have not investigated.
- The new procedures for Gutsy can be used but I’m not finished testing everything. For instance, it is possible that suspend/resume now works fine. I’ll have to check when I have time.
- Added instructions to upgrade the nVidia drivers from 100.14.11 to 100.14.19.
- Updated my observations about sleeping and hibernating. Upgrading the nVidia driver and the kernel upgrades have improved the stability of the system but we’re not quite out of the woods yet.
- Split the changelog in two. Old entries are now at the end of the page.
- Reinstated the TODO list…
- I’ve got feedback that Linux does not recognize Robson at all. Absent evidence to the contrary, I consider Robson to be unsupported in all versions of Linux.
- Added a “Gutsy + Procedure” column to my table even though I don’t have a procedure for Gutsy yet. I’m forecasting what we can expect.
- Cosmetic changes.
- There is now a solution for making the MMC chipset work. People who have already used the installation procedure I propose here should jump to the section about Installing MMC support and follow the instructions there.
- Added the procedure to upgrade from 2.6.22-10 to 2.6.22-11. This kernel has support for the video camera “out of the box”. This means that Gutsy will have “out of the box” support for the video camera!
- Updated the initial installation procedure to work with 2.6.22-11.
- Fixed the chmod commands to have the “+x” argument! (Argh!)
- Deprecated some old procedures.
- The repositories are now fine. You may use the new installation procedure which installs a 2.6.22-10 kernel and the upgrade procedure to go from 2.6.22-9 to 2.6.22-10.
- Added a note that my actual machine is a Sager NP2090.
- A word of caution: Ubuntu is in the process of refreshing its repositories but at the moment the repositories are inconsistent. Do not try to perform the processes indicated here until further notice. Nothing tremendously bad will happen if you do but it will make things a bit more complicated. Things will probably stabilize tomorrow.
- I have deprecated the procedure that upgrades to 2.6.22-9.
- Spellchecked the whole page. Found many typos!
- Started creating an initial installation procedure based on Ubuntu kernel release 2.6.22-10.
- Started creating an upgrade procedure to go from 2.6.22-9 to 2.6.22-10.
- Please do not use these two new procedures yet. You can still use the one based on 2.6.22-9.
- I’ve created a real repository for the packages I created for the installation procedure and added instructions to add those repositories. I urge people to use the repository rather than install my packages using dpkg.
- Reworded 2 passages that were way too obscure.
- Changed vi to nano in one of the commands I ask people to perform in the installation procedure. Both vi and nano are text editors but nano is more user friendly, in my opinion. I use vi personally, hence the mistake.
- Removed the TODO, which I think was confusing some people.
- Added a step to enable the universe repositories (and optionally multiverse).
- Added an issue with movie playback.
- Removed the separate version number at the top of the page. From now on, to know the version number of the document just look at the top entry in the changelog.
- Added new unresolved issues with sensors and audio.
- Added entries for Firewire and Express Card in the table. I have not yet investigated the chipsets.
- Added some information about the inability to get the machine to sleep.
- Found a solution to the resolution problem.
- Added a temporary solution to the problem of recognizing the DVD drive.
- Added instructions to get the webcam working.
- Contrary to reports, the IFL90 does not come with a TPM module. If somebody knows something different, let me know.