Sunday, December 30, 2007

Linux install on HP 6910p using Ubuntu 7.10 (Gutsy)

I have installed Ubuntu 7.10 (Gutsy) on my HP 6910p, there where a couple gotchas although most should be gone by Ubuntu 8.04 (Hardy) or a more recent Linux distribution. Most of the issues can be resolved by updating to more recent versions of the affected software.

HP 6910p specification:



CPU: Intel Core 2 Duo T7700 (2.4Ghz)
Display: 14.1" WXGA+ 1440x900
GPU: AMD/ATI Radeon X2300
RAM: 2GB (2x1GB)
Harddisk: 120GB 7200rpm Hitachi 7k200 Travelstar
Optical Drive: MultiBay II DVD SM DL
Wireless: Intel Pro/Wireless 4965 a/b/g/n, Bluetooth, Infrared
Ports/slots: 3xUSB 2.0; MultiBay II; Intel 82566MM 10/100/1000 Lan; Modem; S-Video out; VGA out; Firewire; Audio in; Audio out; internal microphone; SD/MMC card reader; Smart Card Reader; Type I/II PC Card Reader; SIM card slot; Docking connector; Second battery connector.
Other: Finger print reader, Touch stick with 2 buttons, Touch pad with 2 buttons, Volume up – down, Volume mute, Presentation, Wireless, HP Info Centre touch sensitive buttons.

lspci output:

00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)
00:01.0 PCI bridge: Intel Corporation Mobile PM965/GM965/GL960 PCI Express Root Port (rev 0c)
00:03.0 Communication controller: Intel Corporation Mobile PM965/GM965 MEI Controller (rev 0c)
00:03.2 IDE interface: Intel Corporation Mobile PM965/GM965 PT IDER Controller (rev 0c)
00:03.3 Serial controller: Intel Corporation Mobile PM965/GM965 KT Controller (rev 0c)
00:19.0 Ethernet controller: Intel Corporation 82566MM Gigabit Network Connection (rev 03)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 03)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)
00:1f.0 ISA bridge: Intel Corporation 82801HBM (ICH8M-E) LPC Interface Controller (rev 03)
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)
01:00.0 VGA compatible controller: ATI Technologies Inc M64-S [Mobility Radeon X2300]
02:06.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b9)
02:06.1 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b9)
02:06.2 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 03)
02:06.3 Generic system peripheral [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 20)
02:06.4 System peripheral: Ricoh Co Ltd R5C843 MMC Host Controller (rev 10)
10:00.0 Network controller: Intel Corporation PRO/Wireless 4965 AG or AGN Network Connection (rev 61)


Installation


Installation of Ubuntu 7.10 (Gutsy) went fine, however some of the hardware was not running. Most notably Gutsy is unable to identify the GPU. X will be configured with the basic VESA driver and configured to run on a low resolution. After the installation I had to do some fixing to most of the hardware run, here are the solutions that I have found out.

Wireless



My 6910p came with a Intel 4965 wireless card, Gutsy was able to detect it. For some reason my wireless card would not function properly, its unable to proceed in scanning the network. There is no notable error on syslog or dmesg. I was able to run it once only using the live cd while Ubuntu was installing. Intel 4965 should have been supported out of the box on Gutsy, but mine did not run maybe because its revision (rev 61). I had to update the drivers from http://www.intellinuxwireless.org and rebuild the linux-ubuntu-modules package.

Here is how I made it to work.

1. Download the linux-ubuntu-modules source package

sudo apt-get source linux-ubuntu-modules-`uname -r`

2. Edit the iwlwifi download script to fetch the latest drivers from http://www.intellinuxwireless.org
cd linux-ubuntu-modules-2.6.22-2.6.22/ubuntu/wireless/iwlwifi
edit the BOM script file, set the correct versions and fix the firmware move, here is my diff:

@@ -4,10 +4,10 @@
# only need to do this when you are updating from one version
# if iwlwifi to the next.
#
-IVER=1.1.0
-MVER=10.0.0
-FW3945_VER=2.14.4
-FW4965_VER=4.44.17
+IVER=1.2.23
+MVER=10.0.4
+FW3945_VER=2.14.1.5
+FW4965_VER=4.44.1.20

if [ ! -f iwlwifi-${IVER}.tgz ] ; then wget http://intellinuxwireless.org/iwlwifi/downloads/iwlwifi-${IVER}.tgz; fi
if [ ! -f mac80211-${MVER}.tgz ] ; then wget http://intellinuxwireless.org/mac80211/downloads/mac80211-${MVER}.tgz; fi
@@ -24,13 +24,13 @@
# Note the '-1' in the new firmware file name.
#
tar xzf iwlwifi-3945-ucode-${FW3945_VER}.tgz
-mv iwlwifi-3945-ucode-${FW3945_VER}/iwlwifi-3945.ucode ../../../ubuntu-firmware/iwlwifi/iwlwifi-3945-1.ucode
+mv iwlwifi-3945-ucode-${FW3945_VER}/iwlwifi-3945-1.ucode ../../../ubuntu-firmware/iwlwifi/iwlwifi-3945-1.ucode
rm -rf iwlwifi-3945-ucode-${FW3945_VER}

#
# Note the '-1' in the new firmware file name.
#
tar xzf iwlwifi-4965-ucode-${FW4965_VER}.tgz
-mv iwlwifi-4965-ucode-${FW4965_VER}/iwlwifi-4965.ucode ../../../ubuntu-firmware/iwlwifi/iwlwifi-4965-1.ucode
+mv iwlwifi-4965-ucode-${FW4965_VER}/iwlwifi-4965-1.ucode ../../../ubuntu-firmware/iwlwifi/iwlwifi-4965-1.ucode
rm -rf iwlwifi-4965-ucode-${FW4965_VER}

3. Run the update script so it will fetch and patch the files.

./MUNGE

4. Rebuild the linux-unbuntu-modules, then reinstall the package.

fakeroot debian/rules binary-modules-generic
dpkg -i ../linux-ubuntu-modules-2.6.22-14-generic_2.6.22-14.37_i386.deb


Now my wireless is working flawlessly.

UPDATE: updated iwlwifi to newer version and step #4

Video



Gutsy will not detect the Radeon X2300 and will configure X with just the standard vesa driver. I have decided to use radeonhd driver because of 2 reasons:

1. fglrx currently has a problem with suspend, see Ubuntu issue 121653
2. radeonhd supports xrandr

Here is how I got radeonhd running.

1. Install the xserver-xorg-video-radeonhd from universe

sudo apt-get install xserver-xorg-video-radeonhd

2. Unfortunately the version is still old on Gutsy, Hardy has the working one. I had to manually update and install from source. Download the radeonhd tarball and follow the install instruction and overwrite the files from the debian package.

I was able to run xrandr, but its not that stable on the external display. Based from the radeonhd wiki I believe it can be fixed by updating X and xrandr. For now I just logoff to shutdown X and login again. I am trying to backport the Hardy deb package.

UPDATE: I have now resolved the xrandr re-enable of the external display. The basic fix is to explicitly specify the CRTC via --crtc switch of xrandr. My later blog entry explains it further.

Another solution is to grab the Hardy deb packages, this is what I did recently.

1. Edit the file /etc/apt/sources.list find all "gutsy" and replace with "hardy"
2. Get the newer packages

sudo apt-get update
sudo apt-get install xserver-xorg-core
sudo apt-get install xserver-xorg-video-radeonhd
sudo apt-get install libxrandr2
sudo apt-get install xserver-xorg-input-synaptics

3. Revert the file /etc/apt.sources.list find all "hardy" and replace with "gutsy"
4. Update apt so it points back to gutsy packages
sudo apt-get update


If you need 3D support, then fglrx is the only way. Just go install on the menu "System->Administration->Restricted Drivers Manager" and use "ATI accelerated graphics driver".

UPDATE: I am able to change the brightness when I switch to the console screen. I think this will be fixed on the later versions, its a documented issue with radeonhd on some video cards. Its a bit annoying but I don't change the brightness much so its ok. Ambient light sensor also has the same problem, function keys only works on the console.

Suspend and Hibernate



Suspend and hibernate works once I have edited "/etc/default/acpi-support". I have set the following:

SAVE_VBE_STATE=false
POST_VIDEO=false

Sometimes resume takes a while, it takes about 20 secs after to resume after suspending. Resume also sometimes does not work, however after setting

DOUBLE_CONSOLE_SWITCH=true

My resume has been successful all of the time.

Splash screen and virtual terminals



The splash screen and virtual terminals does not work. I was only able to make either work, but not both.

To make the virtual terminals work, I disabled the splash screen:

1. Edit /boot/grub/menu.lst
2. Change the defoptions=[your custom kernel params] splash to defoptions=[your custom kernel params] nosplash
3. Change the "kernel /boot/vmlinuz-[your kernel] root=UUID=[your UUID] ro quiet splash" to "kernel /boot/vmlinuz-[your kernel] root=UUID=[your UUID] ro quiet splash"

To make the splash screen work, but with no working virtual terminals:

1. Edit /etc/usplash.conf

xres=1024
yres=768

2. Edit /boot/grub/menu.lst
3. Add "vga=791" to "defoptions=[your custom kernel params] splash vga=791" and your kernel
"kernel /boot/vmlinuz-[your kernel] root=UUID=[your UUID] ro quiet splash"
4. Update your initramfs

sudo update-initramfs -u -k `uname -r`

The above work around is discussed here:
https://answers.launchpad.net/ubuntu/+question/2299
http://ubuntuforums.org/showthread.php?p=1541970

Harddisk Power management



I am unfortunate that my harddisk (Hitachi 7k200 Travelstar HTS722012K9SA00) is one of those affected by too aggressive power management. This issue is discussed here https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695

The workaround that reduced my Load_Cycle_Count

1. edit /etc/laptop-mode/laptop-mode.conf:

LM_AC_HD_IDLE_TIMEOUT_SECONDS=300
LM_BATT_HD_IDLE_TIMEOUT_SECONDS=300
CONTROL_HD_POWERMGMT=1
BATT_HD_POWERMGMT=128

2. edit /etc/default/acpi-support:

ENABLE_LAPTOP_MODE=true
SPINDOWN_TIME=60

3. edit /etc/acpi/power.sh:
Changed "$HDPARM -B 1 /dev/$drive 2>/dev/null" to "$HDPARM -B 128 /dev/$drive 2>/dev/null"

UPDATE: lowered the apm value when on battery, check my later post for the additional script.

Fingerprint reader


UPDATE: It works, just needed to install fprint. Read my later post for some more details.

Audio



UPDATE: The microphone works perfectly, the thing is, its is at the Capture level 0 by default. Go in your sound config panel, Capture tab and set Capture at e.g. 60%. - by Alexander

Bluetooth


UPDATE: Bluetooth works. I had to install "gnome-bluetooth" since I want my laptop to be the server. You can stop the bluetooth service. "/etc/init.d/bluetooth stop" and use update-rc.d to stop it permanently.

Summary



Ubuntu 7.10 (Gutsy) will not able to run HP 6910p right of the box. With some work it will be able to do it. Ubuntu Hardy should be able to resolve most if not all of the issue. For now I am pretty happy with the laptop as most of it now works. Items I wish to work on the future:

  1. hard disk accelerometer
  2. 3G broadband

HP 6910p photos

My mini review didn't contain photos so here are a few photos of the HP 6910p

Photo of 6910p (left) and nx8220 (right). You can clearly see the size difference of the screen and chassis. The 6910p keys are slightly bigger and full size keyboard, the keyboard layout has also changed. 6910p gun metal gray color is also slightly lighter in shade.


Despite the 6910p being the newer model its front is slightly thicker than the nx8220. The thickness at the rear is however the same. 6910p (left) and nx8220 (right), an AA battery as a reference.


HP laptops 6910p (left), nx8220 (center) and dv6000 (right)

Monday, December 24, 2007

HP 6910p mini review

I just got a HP 6910p, which is HP's 14.1" premier business laptop range. It was toss between a Lenevo T61 or HP 6910p, in the end the 6910p edge out since there where no T61 14.1" available locally that had WXGA+ (1440x900) resolution and a 7200 rpm hard disk. I will be comparing the 6910p with my current and previous laptops which are: HP nx8220, HP dv6000, HP zx5000, IBM G40 and Toshiba *forgot the model*. I got a few laptops that are HP, not that I am a fan of HP its just a coincidence due to the circumstances at the time of purchase such as with the 6910p where the T61 models was not available locally.

HP6910p specs: GU42pa

CPU: Intel C2D T7700 2.4Ghz 4MB L2 Cache
OS: MS Vista Business 32/64bit
RAM: 2x1024MB DDR2-667 (2GB Total; expandable to 4GB)
Display: 14.1” WXGA+ 1440x900 Anti-glare 200nit
GPU: ATi X2300 w/128MB Dedicated DDR3 RAM
HDD: 120GB 7200rpm
Optical Drive: MultiBay II DVD SM DL
Battery: 6 cell Li-Ion 55WHr
Wireless: Intel Pro/Wireless 4965 a/b/g/n, Bluetooth, Infrared, Vodafone 3G Broadband
Weight: 2.30kg w/6 cell and Multibay II DVD SM DL drive
2.15kg w/6 cell and weight saver
Dimensions: 330x240x33-40mm WxDxH (front-back)
Ports/slots: 3xUSB 2.0; MultiBay II; 10/100/1000 Lan; Modem; S-Video out; VGA out; Firewire; Audio in; Audio out; internal microphone; SD/MMC card reader; Smart Card Reader; Type I/II PC Card Reader; SIM card slot; Docking connector; Second battery connector.
Other: Finger print reader, Touch stick with 2 buttons, Touch pad with 2 buttons, Volume up – down, Volume mute, Presentation, Wireless, HP Info Centre touch sensitive buttons.

Design and Build
The 6910p does not have a flashy design, some people may not like it as its just shades of gun metal gray and black. Some people like me do like the low-key design and gives the laptop a very professional look. The design is very similar to the nx8220, as some of my office mates could not tell the difference which is the newer laptop among the two. For me I like the design of the 6910p compared to a T61 which has an off-center screen and 6 cell battery that is not flushed.

The build quality is very good, on par with the best laptop quality builds like the Thinkpad T-series. This laptop is solid, no chassis flex and LCD panel flex under normal use. I can carry the laptop one corner w/o flex or creaks.

Keyboard and Pointing device
The keyboard is a fullsize one, like the build quality it is on par with the best laptop keyboards in the market. I don't have a long term experience with a Thinkpad, so I don't know if its better or worse than a Thinkpad keyboard as for me its just has a different feel. There is some flex near the enter key, however its minimal and does not flex under normal typing. I need to push the area to see the flex. Coming from a nx8220 laptop, I welcome the bigger keys that the 6910p have. I don't like where the home, pgup, pgdn and end are placed as they are lined up vertically at the right side. I still prefer the nx8220 layout that is similar to a desktop keyboard where its clustered near the backspace in 2 rows. I guess its better for me, as my other laptop is a dv6000 which has an identical layout.

I always liked the touchpad of the nx8220. Its deep and skewed to the left, so I don't accidentally touch it while typing. Unlike my dv6000 and zx5000, their touchpad have no borders and centered on the laptop which makes it a constant pain of jumping mouse pointer. I also like the the touchpad surface as its not too slippery. The 6910p also comes with a track point, which I can say is not as good the Thinkpads. Its stiff and I don't have the option of using a different cover, it only comes with a flat top rubber cover.

Screen

The screen is 14.1" WXGA+ (1440x900) matte (non-glossy) which is rated 200 nit brightness. It is certainly better than the nx8220 screen, because nx8220 has a poor screen. I don't think its a good screen, its probably somewhere in the middle of the pack. The dv6000 and even the older zx5000 has better screens, then again the 6910p is a business laptop and not a multimedia laptop. Horizontal and vertical viewing angles are decent, there is noting to write about and noting to complain about. The LCD panel seems to be made by Chi Mei Optoelectronics, as it identified as cmo.

Sound

The sound for the 6910p is pretty good, but its not exceptional. I can confirm what the other reviews on notebookreview.com that the 2 speakers are located on the right of the laptop, so it looks like the speaker screen on the left is just for vent and looks. The sound quality is pretty good, not as good as dv6000 altec lansing or zx5000 harman kardon but good enough for presentation. The amount of bass is alright for a small speaker, unlike some Asus laptop speakers which are really poor.

Summary

Overall the 6910p is a very good laptop, its got the punch of the bigger laptops in terms of cpu (T7700) and harddisk (7200rpm) speed. It sacrifices the video performance (amd/ati x2300) for the mobility (2.3 kgs). Its build quality is one of the best which should last the daily travel and its a pleasure to use as you feel the quality in the keyboard, hinges, etc.

A more detailed review of 6910p can be seen here:

http://forum.notebookreview.com/showthread.php?t=140343

http://www.notebookreview.com/default.asp?newsID=3960

I will try to post details of running Linux on the 6910p in a few days.

Friday, December 21, 2007

Vista resize ntfs partition woes

I just got a HP 6910p, I am now resizing the vista partition to make way for linux. Unlike the HP dv6000, this Vista on HP 6910p didn't want to resize as much as I wanted. It only gave me 7mb, despite following the workarounds listed here:

http://www.howtogeek.com/howto/windows-vista/working-around-windows-vistas-shrink-volume-inadequacy-problems/

Nothing worked PowerDefragmenter, Auslogics Disk Defrag, PageDefrag, diskpart.exe, etc. I finally went on to just use gparted as documented here:

http://www.howtogeek.com/howto/windows-vista/using-gparted-to-resize-your-windows-vista-partition/

Fortunately for me vista just fdisk itself and I didn't need to use the recovery disk, which I left in the office. I used gparted live cd 0.3.4-11

Now time to install gutsy...