This page is old. Outdated. Linux support on my laptop has improved dramatically since I first bought and installed Fedora Core 6 over 1.5 years ago. Most of the information on this page is probably misleading or just plain wrong, I don't know. Rather than try to bit-by-bit update the page, I'm simply going to summarize my current state here in red.
Currently, I run the latest Ubuntu 7.10 "Gutsy". Everything works except for suspend/sleep and hibernate. Those two functions may work with desktop effects (compiz) off, I don't know, I haven't tried. But I'd rather have the effects anyways. Everything else I can think of works just fine. Sound (speakers and headphones), microphone, nVidia display with full 1680x1050 resolution, touchpad, hotkeys and volume keys, HDMI out, and even the SD card reader work fine!
I haven't tested a few obscure things like the modem, SD-out, firewire (1394) port, PCMCIA slot, and the expansion port. Seriously, I've never used those things for as long as I've had this laptop.
This will most likely be my last update to this page. Any specific questions feel free to email me! My address is at the bottom of the page.
-AndrewRecently I bought an HP Pavilion dv9000 direct from the HP website. Of
course, the first thing I wanted to do was install linux. On this page I hope
to document most everything I did to get this laptop to a usable state, what
went wrong, and what I did to fix things.
Summary: Overall, I'd rate this laptop usable with linux, despite a few things that didn't work quite right. The 1680x1050 resolution is very nice, as I'm able to fit a lot in, and the desktop effects work very smoothly.
This is my first guide/tutorial/reference that I've written, any comments or suggestions are welcome. My email address is at the bottom of this page.
This line of laptops is customizable on their website, here's what I selected
mine to include, and how it works in linux.
For a slightly more complete list
of things that worked and didn't work, see the Just
Installed section.
| Hardware | Status in Linux | Notes |
| Intel Core 2 Duo processor T7200 (2.0 GHz) | Works | An SMP kernel makes good use of both cores |
| 17.0" WSXGA+ BrightView Widescreen (1680x1050) | Works | Full resolution out of the box |
| 256MB NVIDIA GeForce Go 7600 | Works | Used nvidia binary kernel drivers from livna.org. See below |
| HP IMPRINT Finish + Microphone | Doesn't work | The built-in microphone, that is |
| 1.0GB DDR2 SDRAM (2X512MB) | Works | |
| 100GB 5400 RPM SATA Hard Drive | Works | SATA drive (correctly) appears as /dev/sda |
| Super Multi 8X DVD+/-R/RW w/Double Layer Support | Works/Untested | Burning untested, reading works fine |
| Intel PRO/Wireless 3945ABG Network w/Bluetooth | Works | Requires binary drivers, details below |
| Intel 82801G (ICH7 Family) High Definition Audio Controller | Partially works | Speakers and headphones work, but the internal speakers don't automatically mute when you plug in headphones. Built-in microphone untested, but I don't think it works. |
| High Capacity 8 Cell Li-Ion Battery | Works | Linux knows all about this through /proc/acpi/battery/BAT0/info |
My first step was to boot up Windows and delete/uninstall much of the crapware
as I could. All the trial software that is only usable for 60 days...etc.
I wanted to keep windows on the computer for the occasional game or two that
won't work under WINE. I managed to get the used space down from 15 GB to
10 GB approx.
I also burned the recovery DVDs, which takes 3 blank DVDs or 2 blank dual layer
DVDs (or 15 cds or something absurd like that, I had 3 blank dvds on hand).
I felt compelled to do this because I planned on erasing the 10 Gig partition
used for the recovery data.
My final partition layout was to look like this:
/dev/sda1 25GB Windows /dev/sda2 100MB Boot partition /dev/sda3 20GB Root (/) /dev/sda4 extended /dev/sda5 1.5GB Swap /dev/sda6 45GB /home partiton
Before resizing the windows NTFS partition, a scandisk was necessary. I had
to do that to fix an error so that the filesystem can be resized properly.
Then I booted into knoppix, really any boot disk with fdisk and ntfsresize
utilities will do. I followed the instructions, which boiled down to ntfsresize --info /dev/sda1 to check the disk for errors, ntfsresize -n -s 25G /dev/sda1 to do a dry-run and make sure no errors were encountered, and finally ntfsresize -s 25G /dev/sda1 to actually resize it. The last one got an error for
me, suggesting to make sure windows was shutdown properly. I just had to boot
into windows, and shut it down again and it worked.
Now that the filesystem had been resized, I needed to shrink the partition.
Into fdisk, I deleted all the partitions, and created a new primary partition 1,
and for the size I entered "+24418768k" (if I remember correctly) which is approx. 25 Gigabytes. I
wasn't sure if fdisk uses 2^10 or 10^3 for the kilo prefix (ntfsresize uses 10^3 SI prefixes, specified in the man page), so this may have
been off by a few megabytes, but I didn't worry about it (it erred on being larger, so there may be a wasted 5 megabytes or so).
Installing Fedora Core 6 went smoothly. Choosing to do the remote installation
rather than burning several cds/dvds, I downloaded the flash boot drive from
ftp://ftp.linux.ncsu.edu/pub/fedora/linux/core/6/i386/os/images/diskboot.img
and used dd to write it to a flash drive I had handy. Once changing the boot
order in the laptop's BIOS, the installation had begun. When asked where to
find the installation files, I pointed it to
mirror.linux.ncsu.edu/pub/fedora/linux/core/6/i386/os (either ftp or
http works) taking advantage of the local mirror that NCSU provides. Outside
of NCSU can use ftp.linux.ncsu.edu/pub/fedora/linux/core/6/i386/os
Partitioning the drive I had it leave the NTFS partition alone and install in
the free space. Other than that, I customized the layout myself as described
above. The rest of the installation went smoothly, except I made the mistake
of specifying a third party repository when it asked from where to install
packages. As soon as the installation started it crapped out with some
dependency error. Trying again without any other repos worked fine (I still
checked the box to use Fedora Extras).
Just installed I was both surprised at what worked, and disappointed at what
didn't. Here's a quick bulleted list.
Below is a more detailed explanation on what I did to get certain things working.
To get the nvidia drivers, I first installed the livna repository with
rpm -ivh http://rpm.livna.org/livna-release-6.rpm
But since I've had bad luck with external repos conflicting with normal
packages, I set the enabled= line to 0 in /etc/yum.repos.d/livna.repo.
Then installing the nividia drivers was a snap with
yum install kmod-nvidia.i586 --enablerepo=livna --enablerepo=livna-testing
The .i586 was due to a bug in anaconda mistakenly installing a 586 kernel.
Try it first with just the kmod-nvidia package, and if it doesn't work, try
the i586.
Note about the kernel bug I have heard that it's pretty easy to uninstall-reinstall the correct kernel version, if you think that's a better alternative I would look into that.
Note: I completely forgot about the nVidia configuration utilities, specifically nvidia-xconfig to edit your xorg.conf. Below is what I did, but you might have better luck with the config program.
In addition to installing, these lines were added to my /etc/X11/xorg.conf:
Under "Device" section, add Option "AddARGBGLXVisuals" "True"
Under "Modules" section, add these two lines: Load "dbe" and Load "extmod"
Once the nvidia drivers were installed, I'm glad to say the AIGLX effects that
came with FC6 worked flawlessly! Just go to System > Preferences > Desktop Effects and enable them, you get the nice wobbly windows as well as virtual
desktops on the sides of a cube. Very nice indeed.
While most of the cool touch buttons above the keyboard are bindable through
the Keyboard Shortcuts control panel, the two touch buttons in the upper left aren't
immediately bind-able.
I was able to re-map them with the setkeycodes command. For example,
I wanted to bind the left one to the "Pause" function, because that's the
button to re-arrange all windows when desktop effects are enabled, but
the actual pause button is hidden behind Fn-PgUp. To do this, I dropped
this line into my /etc/rc.local: setkeycodes e008 119. e008 is
the scancode for that button, and 119 is the keycode for Pause.
The scancode for the DVD button next to it is e00e. A list of all keycodes
can be found in the output of dumpkeys
Also, while the other keys related to volume were bindable through the keyboard
shortcuts preferences panel, the mute button won't turn amber when pushed
like it does in windows.
This is something that would be nice to have, but it's not too big of a deal.
Thought I'd mention it here anyways.
To get wireless working, I used the rpms from atrpms.net. First, drop this into /etc/yum.repos.d/atrpms.repo:
[atrpms] name=Fedora Core $releasever - $basearch - ATrpms baseurl=http://dl.atrpms.net/fc$releasever-$basearch/atrpms/stable gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms gpgcheck=1 enabled=0
Again, I put enabled=0 because I don't want regular updates pulling rpms
from here, just for the specific installations I do (denoted by the
--enablerepo switch to yum).
Next I downloaded these three files manually from atrpms.net, because of the
i586 kernel bug, just doing yum install ipw3945 will install the
incorrect kernel modules and you'll get an invalid kernel module format when
you try to load them.
Instead, download ieee80211-kmdl-2.6.18-1.2798.fc6-1.2.15-14.fc6.at.i586.rpm, ipw3945-1.0.12-11.1.fc6.at.i386.rpm, and ipw3945-kmdl-2.6.18-1.2798.fc6-1.0.12-11.1.fc6.at.i586.rpm
to some folder (I did this manually because of the kernel bug. If you're not affected,
just a yum update ipw3945 will probably work. Or go to the site and find your correct kernel versions if you
have a different kernel), and execute
yum localinstall --enablerepo=atrpms ieee80211-kmdl-2.6.18-1.2798.fc6-1.2.15-14.fc6.at.i586.rpm ipw3945-1.0.12-11.1.fc6.at.i386.rpm ipw3945-kmdl-2.6.18-1.2798.fc6-1.0.12-11.1.fc6.at.i586.rpm
Then, drop these lines into your /etc/modprobe.conf file:
alias eth1 ipw3945 install ipw3945 /sbin/modprobe --ignore-install ipw3945 associate=1; sleep 0.5 ; /sbin/ipw3945d --quiet remove ipw3945 /sbin/ipw3945d --kill ;/sbin/modprobe -r --ignore-remove ipw3945
and this line into your /etc/rc.local
/sbin/ipw3945d --quiet
and that should do it!
So the deal is, headphones and microphones don't work with the currently supplied version of Alsa included with Fedora (1.0.12). Several people have had success with compiling alsa from source, although I have not (but haven't tried very extensively).
Versions 1.0.13 and later I've heard enable the use of the headphone ports, if not automatically, then toggled by a control in the mixer. I was also linked to a success story on compiling alsa. It was for Ubuntu, but the basic steps should be the same. I have not tried this yet, but I may soon (and I'll update this page if I'm successful). I'd appreciate any other information, success, or resources on this topic, so mail away!
lspci output:
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03) 00:01.0 PCI bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express PCI Express Root Port (rev 03) 00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02) 00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02) 00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02) 00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02) 00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02) 00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02) 00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02) 00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02) 00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) 00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02) 00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 02) 00:1f.2 SATA controller: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller AHCI (rev 02) 00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02) 01:00.0 VGA compatible controller: nVidia Corporation G70 [GeForce Go 7600] (rev a1) 02:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02) 05:00.0 Ethernet controller: Intel Corporation 82573L Gigabit Ethernet Controller 07:05.0 FireWire (IEEE 1394): Ricoh Co Ltd Unknown device 0832 07:05.1 Class 0805: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 19) 07:05.2 System peripheral: Ricoh Co Ltd Unknown device 0843 (rev 01) 07:05.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 0a) 07:05.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 05)