HP Elitebook 8530w

From Gentoo Linux Wiki

Jump to: navigation, search

Contents

[edit] lspci

Code: lspci
00:00.0 Host bridge: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub (rev 07)
00:01.0 PCI bridge: Intel Corporation Mobile 4 Series Chipset PCI Express Graphics Port (rev 07)
00:03.0 Communication controller: Intel Corporation Mobile 4 Series Chipset MEI Controller (rev 07)
00:03.2 IDE interface: Intel Corporation Mobile 4 Series Chipset PT IDER Controller (rev 07)
00:03.3 Serial controller: Intel Corporation Mobile 4 Series Chipset AMT SOL Redirection (rev 07)
00:19.0 Ethernet controller: Intel Corporation 82567LM Gigabit Network Connection (rev 03)
00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 03)
00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 03)
00:1a.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 03)
00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 03)
00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 03)
00:1c.1 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 2 (rev 03)
00:1c.2 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 3 (rev 03)
00:1c.4 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 5 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 93)
00:1f.0 ISA bridge: Intel Corporation ICH9M-E LPC Interface Controller (rev 03)
00:1f.2 SATA controller: Intel Corporation ICH9M/M-E SATA AHCI Controller (rev 03)
01:00.0 VGA compatible controller: ATI Technologies Inc Mobility Radeon HD 3650
01:00.1 Audio device: ATI Technologies Inc RV635 Audio device [Radeon HD 3600 Series]
03:00.0 Network controller: Intel Corporation Wireless WiFi Link 5100
86:09.0 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 06)
86:09.1 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 25)
86:09.2 System peripheral: Ricoh Co Ltd R5C843 MMC Host Controller (rev 14)
86:09.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 14)
86:09.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 14)
86:09.5 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev bb)

[edit] lsusb

Code: lsusb
Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 08ff:2810 AuthenTec, Inc. 
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 004: ID 04f2:b053 Chicony Electronics Co., Ltd 
Bus 001 Device 003: ID 03f0:171d Hewlett-Packard Wireless (Bluetooth + WLAN) Interface [Integrated Module]
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

[edit] Hardware Status Overview

Devices with no status listed are untested.

DeviceHardwareWorkingDriverComments
ProcessorIntel Core2 Duo T9550 Yes Safe CFlags
eSATA Intel ICH9 SATA ACHI Controller Yes ahci
Card Reader Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter Yes sdhci-pci MS not working
MMC Reader Ricoh Co Ltd R5C843 MMC Host Controller Yes ricoh-mmc
Graphics Card ATI Mobility FireGL V5700 fglrx or radeonhd (v1.2.4)
Displays WUXGA, VGA, HDMI
USB Intel 82801I Yes ehci-hcd, uhci-hcd
Firewire Ricoh Co Ltd R5C832 IEEE 1394 Controller untested firewire-ohci, ohci1394
ExpressCard/54 Ricoh Co Ltd RL5c476 II untested yenta_cardbus
Sound Intel 82801I (ICH9 Family) HD Audio Yes snd-hd-intel
Ethernet Intel 82567LM Yes e1000e
Wi-Fi Intel 5300 Yes iwlagn needs net-wireless/iwl5000-ucode
Bluetooth  ?
Modem
Touchpad and Nipple Mouse SynPS/2 Synaptics TouchPad Yes synaptics
FingerPrint reader AuthenTec AES2810 No http://reactivated.net/fprint/wiki/Unsupported_devices#AuthenTec_AES2550_.26_AES2810
Media Keys Partial hp_wmi The Quicklook button does not work, but all others do
Sensors Intel coretemp Yes coretemp
TPM
Webcam Chicony CKA7216 Yes uvcvideo


.CONFIG SAMPLE CAN BE TAKEN FROM http://download.mzalendo.net/others/kernel-config.txt

[edit] Installation

Both the wired and wireless network interfaces on this laptop are too new to have drivers on the Gentoo 2008.0 livecd. One way to install Gentoo is to boot from a different livecd (Ubuntu 2008.10 amd64 and Kubuntu 2008.10 i386 are known to work) then follow the instructions at http://www.gentoo.org/doc/en/altinstall.xml#doc_chap3. A few tools will be missing, such as mirrorselect. You will have to choose your mirrors manually.

If you do use the Gentoo 2008.0 livecd, you must use the acpi=off parameter, or the system will hang while booting.

[edit] Make.conf

  • CFLAGS="-O2 -pipe -march=core2" with gcc-4.3 or greater. With earlier versions of gcc, use CFLAGS="-O2 -pipe"
  • MAKEOPTS="-j3" Use -j3 to take advantage of the dual core cpu.

[edit] Drivers

[edit] Video

This laptop has nvidia card.

[edit] ATI FireGl

Not all versions of ati-drivers compile correctly with every kernel version. Here is a table of tested kernel/driver pairs

Kernel Driver Working? Comments
gentoo-sources-2.6.27-r8 ati-drivers-8.471.3 No
gentoo-sources-2.6.27-r8 ati-drivers-8.542 Yes

The drivers also require the following options to be configured in the kernel:

Linux Kernel Configuration: ATI fglrx driver requirements
Processor type and features  --->
     [*] MTRR (Memory Type Range Register) support
     [ ] Paravirtualization support (EXPERIMENTAL)
Bus options (PCI etc.)  --->
     [*] PCI Express support
     [*] Enable deprecated pci_find_* API
Device Drivers  --->
     Graphics support  --->
           -*- /dev/agpgart (AGP Support)  --->
                  <*>   Intel 440LX/BX/GX, I8xx and E7x05 chipset support
           < > Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)
Kernel hacking  --->
     [*] Enable unused/obsolete exported symbols
 

Here are the ati-specific configurations in xorg.conf:

File: xorg.conf
Section "Module"
    Load "glx"
    Load "dbe"
    #!!! Do not load dri
    #Load other modules here
EndSection
Section "Device"
  Identifier  "aticonfig-Device[0]-0"
  Driver      "fglrx"
  BusID       "PCI:1:0:0"
EndSection

[edit] ATI FireGl with Opensource Driver

Kernel Driver Working? Comments
gentoo-sources-2.6.28-r3 xf86-video-radeonhd 1.2.4 Yes Driver from zen-overlay (works but slow), for good speed use this guide http://wiki.x.org/wiki/radeonhd%3Ar6xx_r7xx_branch


Here are the radeonhd configurations in xorg.conf:

File: xorg.conf
Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
EndSection

Section "Files"
        ModulePath   "/usr/lib64/xorg/modules"
        FontPath     "/usr/share/fonts/misc/"
        FontPath     "/usr/share/fonts/TTF/"
        FontPath     "/usr/share/fonts/OTF"
        FontPath     "/usr/share/fonts/Type1/"
        FontPath     "/usr/share/fonts/100dpi/"
        FontPath     "/usr/share/fonts/75dpi/"
EndSection

Section "Module"
        Load  "freetype"
        Load  "glx"
        Load  "record"
        Load  "xtrap"
        Load  "extmod"
        Load  "dri"
        Load  "dbe"
EndSection

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Device"
        Identifier  "Card0"
        Driver      "radeonhd"
        Option      "AccelMethod" "exa"
        Option      "DRI" "On"
        VendorName  "ATI Technologies Inc"
        BoardName   "Mobility Radeon HD 3650"
        BusID       "PCI:1:0:0"
EndSection

Section "Extensions"
        Option "Composite" "On"
EndSection

Section "ServerFlags"
        Option "AIGLX" "On"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

[edit] NVidia Quadro

Works out of the box with the nvidia drivers, using nvidia-xconfig and nvidia-settings it is trivial to setup X (even with a 2nd monitor)

[edit] Sound

Sound requires the following options to be configured in the kernel:

Linux Kernel Configuration: Sound requirements
Device Drivers  --->
      <*> Sound card support  --->
            <*>   Advanced Linux Sound Architecture  --->
                  [*]   PCI sound devices  --->
                        <*>   Intel HD Audio
                        [*]     Build Analog Device HD-audio codec support
                        [*]     Build ATI HDMI HD-audio codec support

[edit] Media Keys

The Elitebook's media keys are built into a touch sensitive strip between the keyboard and the screen. The wireless switch and mute button are hardwired -- no software support is needed for their function. The audio volume controls are mapped through the keyboard like normal media keys. But the info and presentation buttons use WMI and need a special kernel configuration to work:

Linux Kernel Configuration: Media keys
Power management options  --->
      [*] ACPI (Advanced Configuration and Power Interface) Support  --->
            <*>   WMI (EXPERIMENTAL)
Device Drivers  --->
      [*] Misc devices  --->
            <*>   HP WMI extras
Note: In Xfce, the Xfce keyboard shortcut keys work fine when mapping special keys such as the brightness/volume up/down, removing the need to use xmodmap, xbindkeys.

The hp_wmi driver will return scancodes outside of the keyboard's normal range, so X will not receive them. To use them in X, you must first use setkeycodes to translate them to keycodes. This should be done system-wide and independently of X. One good place is /etc/conf.d/local.start. Here are the lines you need to insert:

File: /etc/conf.d/local.start
setkeycodes e008 136  #elitebook 8530w presentation key
setkeycodes e06e 238  #elitebook 8530w external monitor key
setkeycodes e009 137  #elitebook 8530w battery key
setkeycodes e012 146  #elitebook 8530w brightness down key
setkeycodes e017 151  #elitebook brightness up key
setkeycodes e033 179  #elitebook 8530w brightness bar key

Having now exposed the keycodes to X, you must now assign keysyms to them. This can be done with xmodmap, and put in a script that can be called when X starts. Most users should call this from .xinitrc. Here is the contents of that script:

File: ~/xmap
#! /bin/sh
# Map media keys on hp elitebook 8530W

xmodmap -e "keycode 176 = XF86AudioRaiseVolume"
xmodmap -e "keycode 174 = XF86AudioLowerVolume"
xmodmap -e "keycode 223 = XF86Sleep"
xmodmap -e "keycode 243 = XF86Video"
xmodmap -e "keycode 246 = XF86BrightnessAdjust"
xmodmap -e "keycode 201 = XF86MonBrightnessUp"
xmodmap -e "keycode 200 = XF86MonBrightnessDown"
xmodmap -e "keycode 188 = XF86User1KB"  #battery button
xmodmap -e "keycode 122 = XF86User2KB"  #presentation button

Now that keysyms are assigned, you must decide what to do with them. Running programs on keypresses can be done with xbindkeys. However, deciding what to run is the hardest part. Here is one example:

File: ~/.xbindkeysrc
"amixer sset Master Playback Volume 2+"
  XF86AudioRaiseVolume

"amixer sset Master Playback Volume 2-"
  XF86AudioLowerVolume

You should call xmodmap and xbindkeys from .xinitrc like this:

File: ~/.xinitrc
~/xmap
xbindkeys
Note: The Quicklook button is not recognized by hp_wmi as of kernel 2.6.27-gentoo-r8. Pressing it generates the following error in dmesg HP WMI: Unknown key pressed - 213b

[edit] WiFi

The built-in Intel wireless device works fine with the iwlagn driver and net-wireless/iwl5000-ucode. However, the wireless on/off switch isn't fully integrated. Pressing the switch will disable power to the wireless card, which saves 2W according to powertop. The catch is that when you reenable the wireless card with the switch, the driver does not reload the firmware. You must reload the module with

rmmod iwlagn; modprobe iwlagn
to get the firmware loaded again.

When you encounter problems with wireless not loading correctly, have a look at dmesg and watch out for something like iwlwifi-5000-1.ucode not found. As workaround you can get this file, e.g. from another distro, and copy it to /lib/firmware/ .

[edit] Webcam

Webcam requires the following options to be configured in the kernel:

Linux Kernel Configuration: Webcam support
Device Drivers  --->
     Multimedia devices  --->
          <*> Video For Linux
          [*]   Enable Video For Linux API 1 compatible Layer
          [*] Video capture adapters  --->
               [*]   V4L USB devices  --->
                    <*>   USB Video Class (UVC)
                    [*]     UVC input events device support
Personal tools