Linux on a Dell Precision M4500

There currently doesn't seem to be much information on the web, so here it goes...


Index

The Hardware
Installing Fedora 14
Video Card
Sound Card
Touchpad
Finger Print Reader
Things to fix/configure/test
Resources

The Hardware

similar to Dell Latitude E4200/E4300

Installing Fedora 14

Installation caused no issues, however, certain components do not work out-of-the-box. Each component is described below.


Video Card

01:00.0 VGA compatible controller: nVidia Corporation GT216 [Quadro FX 880M] (rev a2)

Issues

Nvidia Drivers

via http://rpmfusion.org/
kmod-nvidia-260.19.12-1.fc14.2.x86_64
nvidia-settings-1.0-8.fc14.x86_64
xorg-x11-drv-nvidia-libs-260.19.12-3.fc14.x86_64
nvidia-xconfig-1.0-5.fc14.x86_64
kmod-nvidia-2.6.35.6-48.fc14.x86_64-260.19.12-1.fc14.2.x86_64
xorg-x11-drv-nvidia-260.19.12-3.fc14.x86_64
  • xorg.conf
  • Section "Files"
            ModulePath   "/usr/lib64/xorg/modules/extensions/nvidia"
            ModulePath   "/usr/lib64/xorg/modules"
    EndSection
    
    Section "Monitor"
            Identifier   "Monitor0"
            VendorName   "Vendor0"
            ModelName    "Model0"
    EndSection
    
    Section "Device"
            Identifier  "Card0"
            Driver      "nvidia"
            VendorName  "nVidia Corporation"
            Option      "AddARGBGLXVisuals" "True"
            Option      "NoLogo" "True"
            Option      "ConstantDPI" "FALSE"
            Option      "DPI" "96 x 96"
            #Option      "DPI" "143 x 144"
    EndSection
    
    Section "Screen"
            Identifier "Screen0"
            Device     "Card0"
            Monitor    "Monitor0"
            DefaultDepth     24
            SubSection "Display"
                    Viewport   0 0
                    Depth     24
            EndSubSection
    EndSection
    

    3D Performance Issues

    Configure Compiz to use
    loose binding, indirect rendering
    

    2D performance

    Dell Precision M4500 -> nVidia Corporation GT216 [Quadro FX 880M]
    GtkEntry - time:  0.30
    GtkComboBox - time: 21.51
    GtkComboBoxEntry - time:  3.42
    GtkSpinButton - time:  0.90
    GtkProgressBar - time:  0.31
    GtkToggleButton - time: 28.19
    GtkCheckButton - time:  1.68
    GtkRadioButton - time:  1.53
    GtkTextView - Add text - time:  2.08
    GtkTextView - Scroll - time:  1.50
    GtkDrawingArea - Lines - time:  3.11
    GtkDrawingArea - Circles - time:  4.74
    GtkDrawingArea - Text - time:  1.04
    GtkDrawingArea - Pixbufs - time:  0.32
     --- 
    Total time: 70.63
    
  • Bug in Cairo ... see http://www.nvnews.net/vbulletin/showthread.php?t=156885
  • Getting plymouth graphical boot to work

    Edit /etc/grub.conf and remove nouveau.modeset=0 and add vga=0x34c

    Video Playback

    You need to use VDPAU (Video Decode and Presentation API for Unix) to be able to watch anything without getting into performance issues ... For mplayer
    mplayer -vo vdpay -vc <something>vdpau
    
    you first need to find out which codec you need ... and then use the vdpau version of that codec to get hardware acceleration ... Found the following script
    #!/bin/bash
    # Script to automatically find out which codec a file is using and determine whether or not to use VDPAU.
    # Rev.0 - bal_zac original - posted on phoronix
    # Rev.2 - largely stylistic changes - removed need for tmp files and changed if statements to a single case statement
    
    IAM=$0
    FILE=$1
    
    #if no input display usage
    if [[ -z "$FILE" ]]; then
    	echo usage: $0 /path/to/file
    	exit
    fi
    
    MPLAYER=/usr/bin/mplayer
    MPLAYEROPTS="-fs -zoom -af volnorm=2 -ao pulse -cache 8192  -subfont-autoscale 1"
    VCODEC=$($MPLAYER -identify -vo vdpau -frames 0 "$FILE" | grep ID_VIDEO_CODEC | cut -c 16-25)
    
    echo "============================="
    echo "VIDEO CODEC: $VCODEC"
    echo "============================="
    
    case $VCODEC in
     ffh264) 
      echo -e "Playing h.264 file $FILE:\n"
      MPLAYEROPTS="$MPLAYEROPTS -vo vdpau -vc ffh264vdpau"
      echo -e "With Options $MPLAYEROPTS:\n"
    ;;
     ffmpeg2)
      echo -e "Playing MPEG2 file $FILE:\n"
      MPLAYEROPTS="$MPLAYEROPTS -vo vdpau -vc ffmpeg12vdpau"
      echo -e "With Options $MPLAYEROPTS:\n"
    ;;
     ffwmv3)
      echo -e "Playing WMV3 file $FILE:\n"
      MPLAYEROPTS="$MPLAYEROPTS -vo vdpau -vc ffwmv3vdpau"
      echo -e "With Options $MPLAYEROPTS:\n"
    ;;
     # VC-1 is largely unsupported by nvidia - uncomment this section if you're sure your card supports it.
     #ffvc1)
     # echo -e "Playing VC-1 file $FILE:\n"
     # MPLAYEROPTS="$MPLAYEROPTS -vo vdpau -vc ffvc1vdpau"
     #;;
     *)
      echo -e "Playing normal file $FILE:\n"
      MPLAYEROPTS="$MPLAYEROPTS -vo xv"
    ;;
    esac
    
    $MPLAYER $MPLAYEROPTS $FILE
    
    


    Sound Card

    01:00.1 Audio device: nVidia Corporation High Definition Audio Controller (rev a1)
  • Sound Out works ok
  • Microphone does not work out of the box, add the following into /etc/modprobe.d/dist-alsa.conf
    options snd-hda-intel model=dell-s14
    


    Touchpad

    Not detected
  • https://bugzilla.kernel.org/show_bug.cgi?id=14660
  • https://bugzilla.redhat.com/show_bug.cgi?id=590880
  • I: Bus=0011 Vendor=0002 Product=0001 Version=0000
    N: Name="PS/2 Generic Mouse"
    P: Phys=isa0060/serio1/input0
    S: Sysfs=/devices/platform/i8042/serio1/input/input7
    U: Uniq=
    H: Handlers=mouse1 event7
    B: EV=7
    B: KEY=70000 0 0 0 0
    B: REL=3
    


    fingerprint

    Bus 002 Device 005: ID 0a5c:5802 Broadcom Corp. BCM5880 Secure Applications Processor with fingerprint touch sensor
  • http://www.upek.com/support/downloads/linux/DownloadPSLinux.asp
  • BCM chip not supported?


    Things to fix/configure/test


    Resources

  • http://www.nvnews.net/vbulletin/forumdisplay.php?f=14
  • http://natisbad.org/E4300/
  • TuxMobil
  • http://www.linux-on-laptops.com/dell.html
  • http://www.linlap.com/wiki/dell