Ubuntu on HP Compaq nc6230

Emperor Penguin

Preamble

HP nc6230 laptopOver the last 10 year I have been using SuSE, Debian and Ubuntu on and off and a not so brief bumpy detour with Mac OS X. I burned my fingers on that louse Apple support. In October 2005 I found a pretty good deal on a HP Compaq nc6230 and installed Linux, to be precise Ubuntu 5.04 Hoary Hedgehog. This site however goes only into detail of the newest incarnation of Canonicals Ubuntu 7.04 Feisty Fawn.

Last updated: May 19, 2007

Table of Contents

Specifications

  • Intel Pentium M 750 1.8 GHz Processor
  • 1024 MB DDR II SDRAM
  • 60 GB, 5400 rpm, FUJITSU MHV2060AH
  • DVD/CD-RW Combo drive, Matsuhita UJDA765a
  • ATI Mobility Radeon X300, 64 MB
  • 14.1″ TFT XGA, 1024×768 internal, 1600×1200 external
  • SoundMAX Card, Intel Corporation 82801FB/FBM/FR/FW/FRW
  • Agere Systems AC’97 Modem, Intel Corporation 82801FB/FBM/FR/FW/FRW
  • Intel PRO/Wireless 2200BG
  • IBroadcom NetXtreme BCM5751M Gigabit
  • Texas Instruments PCIxx21/x515 Cardbus,Type I/II PC card slot
  • Texas Instruments PCI6411/6421/6611/6621/7411/7421/7611/7621, SD Card Reader

Installation

The base installation didn’t go without a hiccup. I wanted XFS as file system, but Grub just froze. Then I tried Lilo that didn’t work either, immediately. I had to remove the following line vga=792 in the OS section in /etct/lilo.conf. After that the installation went smoothly. The reason for the Lilo problem was that I started the Linux installer with linux vga=792…duh!

Later, I also tried the ext3 file system and none of the above issues appeared. Lesson learned.

Configuration

Graphics

I wasn’t happy with default drivers, due to photo session I was presented with when I actually tried to watch a movie. I install the proprietary drivers in the following manner.

~ sudo aptitude update
~ sudo aptitude install linux-restricted-modules-$(uname -r)
~ sudo aptitude install xorg-driver-fglrx
~ sudo depmod -a

Open the X11 configuration file, sudo vi /etc/X11/xorg.conf and attach these lines to the end.

Section "Extensions"
        Option  "Composite" "0"
EndSection

In order to configure the driver I executed sudo aticonfig --initial.

Most of the time I can remove the
drm

and
radeon

with rmmod, but for the few times the modules
drm

and
radeon

depend on each other a sudo reboot has to do it.

I quick drivers check after the reboot and I was done.

~ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: MOBILITY RADEON X300
OpenGL version string: 2.0.6334 (8.34.8)

Afterwards I also hooked up my external monitor and closed the lit and restarted the xserver [ctrl]+[alt]+[backspace].

Ethernet

Nothing special here, works right out of the box.

Wireless

Since the networkmanager is installed by default, setting up a WPA connection to my router isn’t much of a problem.

SD Card Reader

Thanks to the excellent HOWTO: TI SD Card Reader this was a cakewalk.

Sound

Besides that I had to activate the headphone jack sense, it worked as expected.

ACPI Power Management

I noticed that Linux is using the machine DSDT (
ACPI: Looking for DSDT in initramfs… file /DSDT.aml not found, using machine DSDT.

), that usually indicates that ACPI is not working optimal, due to a buggy BIOS.

~ sudo cp /proc/acpi/dsdt .
~ sudo iasl -d dsdt
~ sudo iasl -sa dsdt.dsl
dsdt.dsl  3232:                                     And (Local1, 0xFFFF)
Warning  1104 -    Result is not used, operator has no effect ^ 

dsdt.dsl  8079: CreateByteField (C1A0, \_SB.C002.C003._Y0F._LEN, C069)
Error    4062 -      Object does not exist ^  (\_SB.C002.C003._Y0F._LEN)
ASL Input:  dsdt.dsl - 8525 lines, 296677 bytes, 3985 keywords
Compilation complete. 1 Errors, 1 Warnings, 0 Remarks, 1193 Optimizations

That is not good. I found a discussion thread for a HP Compaq nc6400 with the same issues.

It was suggested to replace the waring message And (Local1, 0xFFFF) with an additional parameter And (Local1, 0xFFFF, Local1).

For the error message I had to up in the file a few lines where it said Device (\_SB.C002.C003.C276). With this information I changed CreateByteField (C1A0, \_SB.C002.C003._Y0F._LEN, C069) to CreateByteField (C1A0, \_SB.C002.C003.C276._Y0F._LEN, C069).

Another try to compile the file, showed promising results. No errors or warning messages.

iasl -sa dsdt.dsl

Now the kernel needs the fixed dsdt. I didn’t want to compile the kernel so the file has to go into the initrd.

sudo cp dsdt.aml /etc/initramfs-tools/DSDT.aml
sudo update-initramfs -u -k all

After a reboot I checked dmesg and it looked like I was done here.

~ dmesg |grep ACPI
ACPI: Looking for DSDT in initramfs... successfully read 32260 bytes from /DSDT.aml.
ACPI (tbget-0297): Table [DSDT] replaced by host OS [20060707]

Additionally I also set the graphics card to a lower frequency setting
aticonfig –set-powerstate=1

and the CPU to conservative mode
cpufreq-set -g conservative

. That keeps the temperature usually below 50C.

I never put my laptop to Suspend-to-Disk or Suspend-to-Ram so I can’t really tell if it works or not.

Multimedia Buttons

The sound and wlan buttons work as expected. Even the eject button on my external keyboard works immediately.

Bluetooth

Not tested.

Infrared

Not tested.

Modem

Not tested.