HP OmniBook 4150 and Debian 2.1

Please keep in mind that these notes grow old pretty fast. I wrote this text on June 19, 1999 and I don't expect it to last more than one year (there will be a new version of Debian and nobody uses 4150s any more..). Update September 22, 2000: I have used Debian 2.2 for a long time now. There are some new notes about sound support, but I haven't updated other information to match Debian 2.2.

November 27, 2001: HDD settings in BIOS by Jacek Pliszka (see Before you Start).

September 5, 2001: Sound updates by Erik Wenzel for new kernels (see Sound Support).

Update January 17,2001: I'm now using OpenBSD 2.8, see this page for more.

I got plenty of advice from Hile Tuohela and Lauri Aarnio. They both have a lot of experience about installing Linux on laptops.

4150 Specifications

As always, there are quite a few similar laptop models. My 4150 has following specifications:

Before You Start

4150 comes with a preinstalled Windows in one 6GB partition. If you want to keep Windows95/98 you must boot from the recovery CD and reinstall it. You will be asked some simple questions, answer FAT16 when asked for the target file system. You cannot answer FAT32 because the setup won't ask for partition size and you would get a disk wide 6GB partition. Fortunately maximum FAT16 size is 2GB. You can convert the 2GB partition to FAT32 after Windows has been installed (you can use the vfat module in Linux to access that partition).

Be sure to leave the hibernation partition (couple hundred MBs) on hard disk even if you will only install Linux.

Update August 10, 2000:
Some recovery CDs (apparently newer ones) do not anymore have the FAT16 option.

Update November 27, 2001 by Jacek Pliszka: (copied from his mail)
I just found out that in HP 4150 Omnibook (possibly in other notebooks as well) there is a BIOS setting for HDD parameters like DMA or ATA4 or 32bit transfer. The bad thing is that if something is disabled there - it can not be enabled with hdparm! (at least in my case). As my notebook arrived with both UDMA and 32bit transfer disabled - my HDD transfer was crippled by a factor of 3 for 2 months!

Installing Base

If you're new to Debian follow the detailed installation manual. I will only give some notes here. Another valuable source of information is the Debian Documentation Project.

I booted from a Debian CD (/dev/hdc) to install the base system. The other way is to use floppies. You cannot use floppies and CD because the CD drive (that uses the same socket as the floppy drive) will not mount during the install.

The disk has two partitions (if you reinstalled Windows); the 2GB FAT16 partition for Windows and smaller hibernate partition. Once you write the new partition table (containing your newly made Linux partitions) to disk you wont be able to boot Windows until lilo is installed and configured.

I configured the PCMCIA support using i82365 based controller even though I didn't install the base from network. Originally I planned to do so but my 3COM 3CXE589ET didn't work with the installation drivers. We have had a lot of problems with these cards although I don't know if the card caused this problem (I later discovered that the network cable I got with the 3COM package was faulty).

Configuring Base

Make Linux bootable from hard disk and install the master boot record on /dev/hda. Answer 'yes' to the 'Boot the Debian system as the default' question.

Install the rest of the packages you chose. It's generally a good idea to make notes about the information that (some of) the packages give during their install/configure phase.

Configuring X

Initially I installed XFree 3.3.2.3 which comes with Debian 2.1 and selected SVGA as the default server. However, I was told that XFree 3.3.2.3 doesn't support the NeoMagic NM2200 chip. So I downloaded and installed netgod's XFree86 3.3.3.1 packages for Debian 2.1. They are built against the GNU C library used in Debian 2.1.

I configured XFree by using XF86Setup. The mouse type is PS/2 on /dev/psaux, enable Emulate3Buttons. By pressing 'Apply' both the trackpoint and touchpad will work.

Video card is NeoMagic, I didn't change any options. The driver will probe the memory and actual chipset.

I used 30-64 as the horizontal and 50-100 as the vertical refresh rates, although I don't know if this makes any difference because the NeoMagic driver uses 85Hz anyway.

Here is my XF86Config right after XF86Setup finished. (It works but there is some extra stuff that should be removed later.)

You might want to check The Linux XFree86 HOWTO for more detailed information.

New Kernel

Debian 2.1 ships with 2.0.36 but I wanted to have a 2.2.x kernel. I downloaded 2.2.10 (which was new at that time) and compiled it with Advanced Power Management BIOS support.

Read The Linux Kernel HOWTO if you don't know how to build your own custom kernels. Or just read the README file which got unpacked into the /usr/src/linux directory.

There is also an errata about Running Linux 2.2.x in slink.

Advanced Power Management

Standby suspend and hibernate modes work fine although it takes a couple of seconds for the keyboard to start functioning. shutdown -h now turns the power of automatically. Unfortunately apmd dumps core on startup. It turned out that my HP needed the BIOS update (see HP's 4150 support pages or execute a search for '4150' if the link doesn't work).

Battery Powered Linux Mini-HOWTO includes APM information.

Configuring Lilo

Here is my /etc/lilo.conf that now contains three entries; one for the new kernel, one for the old kernel and the third for booting to Windows. By pressing shift on LILO prompt you will be able to boot to different setups (press tab to see the names).

Rerun lilo (/sbin/lilo) after editing the configuration file to update the loading map.

Sound Support

The Open Sound System doesn't recommend the 256AV audio chip (NM2200): We have not got any help from Neomagic so it's not possible to implement a supported driver. Current OSS (3.9.2) may work if the I/O, IRQ and DMA settings are configured OK.

This is really old news now, Open Sound works well on some Neomagic laptops, not on my laptop.

Update July 15, 2000:
I'm currently using potato and newer 2.2.X kernel. Sound has been working for a long time, I just forgot to update this page. So here it is, I'm loading the following modules (won't propably work on all 4150 variations):

  1. insmod soundcore
  2. insmod sound
  3. insmod mpu401
  4. insmod ad1848
  5. insmod opl3sa2 mss_io=0x530 irq=5 dma=1 dma2=0 mpu_io=0x220 io=0x388

Update September 22, 2000:
Ales Kosir mailed me that he says insmod soundlow right after insmod soundcore to get his 4150 working. Other modules and parameters were the same. He uses RedHat 6.2 with kernel 2.2.14.

Update September 5, 2001:
Erik Wenzel send me these instructions for Sound with Kernel release > 2.4.1
The driver has been rewritten, so you need the following kernel modules: opl3, ad1848, mpu401, sound and soundcore create a /etc/modutils/ad1848 with:
---snip---
alias char-major-14 ad1848
pre-install ad1848 modprobe "-k" "mpu401"
post-install ad1848 modprobe "-k" "opl3"
options ad1848 io=0x530 irq=5 dma=1 dma2=0
options opl3 io=0x388
---snip---
and then run insmod ad1848 or if you want to start it in booting process enter echo ad1848 >>/etc/modules

New PCMCIA Package

Due to the network card problems I downloaded, compiled and installed pcmcia-cs-3.0.12.

Linux PCMCIA Information Page is a good starting point if you have any PCMCIA related problems.

Conclusion

I think that HP 4150 is a solid laptop and can even be used as a desktop replacement. It copes with Linux quite well, the only thing that is missing is the (official) sound support. If you are looking for a Linux laptop you might want to check IBM ThinkPad 770 also.

Tero Silvennoinen