Dell Inspiron 1525

From ArchWiki
Revision as of 23:51, 7 November 2009 by Code m (Talk | contribs) (Video)

Jump to: navigation, search

Template:I18n links start Template:I18n entry Template:I18n entry Template:I18n links end

Summary

This is a post-install configuration guide for the Dell Inspiron 1525 laptop.

Hardware Detection

Hwd provides a list of your hardware and what modules/drivers are needed to get it working. Install from AUR or download here

From AUR:

# yaourt -S hwd

Now run hwd, so we get a nice list.

# hwd -s

 Testing: kernel (2.6.28-ARCH) supports uevents
 HARDWARE DETECT ver 5.4.2 (simple mode)
 Kernel     : 2.6.28-ARCH
 CPU & Cache: Processor 0: Intel(R) Core(TM)2 Duo CPU     T5450  @ 1.66GHz 1662MHz, 2048 KB Cache
              Processor 1: Intel(R) Core(TM)2 Duo CPU     T5450  @ 1.66GHz 1662MHz, 2048 KB Cache

 Sound(a)   : 82801H ICH8 Family HD Audio Controller module: snd-hda-intel
 Video      : Mobile GM965/GL960 Integrated Graphics Controller server: Xorg (intel)
 Driver     : xf86-video-intel   module: -
 Monitor    : Generic Monitor  H: 28.0-96.0kHz V: 50.0-75.0Hz
 Mouse      : PS/2 Mouse xtype: PS2 device: /dev/psaux
 HDD        : 82801HBM/HEM ICH8M/ICH8ME IDE Controller module: PIIX_IDE
 USB        : 82801H ICH8 Family USB UHCI Controller #3 module: uhci_hcd
 USB2       : 82801H ICH8 Family USB2 EHCI Controller #1 module: ehci_hcd
 SD Slot    : R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter module: sdhci-pci

 Ethernet   : 88E8040 PCIE Fast Ethernet Controller module: sky2
 Network    : PRO/Wireless 3945ABG [Golan] Network Connection module: iwl3945
 Firewire   : R5C832 IEEE 1394 Controller  module: ohci1394

This is only 1 variant of this notebook. There are different many variants of this notebook. You'll notice differences in CPU and Wireless. Some models also have a webcam.

A hwd -s of a system used in this wiki differs on these aspects:

  1. Processor: Intel Pentium Dual T2370
  2. Wireless card: Broadcom BCM4312 802.11b/g
 HARDWARE DETECT ver 5.4.2 (simple mode)
 Kernel     : 2.6.28-ARCH
 CPU & Cache: Processor 0: Intel(R) Pentium(R) Dual  CPU  T2370  @ 1.73GHz 800MHz, 1024 KB Cache
              Processor 1: Intel(R) Pentium(R) Dual  CPU  T2370  @ 1.73GHz 800MHz, 1024 KB Cache
 
 Sound(a)   : 82801H ICH8 Family HD Audio Controller module: snd-oss_hdaudio 
 Video      : Mobile GM965/GL960 Integrated Graphics Controller server: Xorg (intel)  
 Driver     : xf86-video-intel   module: - 
 Monitor    : Generic Monitor  H: 28.0-96.0kHz V: 50.0-75.0Hz
 Mouse      : PS/2 Mouse xtype: PS2 device: /dev/psaux
 HDD        : 82801HBM/HEM ICH8M/ICH8ME IDE Controller module: ata_piix 
 USB        : 82801H ICH8 Family USB UHCI Controller #3 module: uhci_hcd 
 USB2       : 82801H ICH8 Family USB2 EHCI Controller #1 module: ehci_hcd 
 SD Slot    : R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter module: sdhci-pci 
 
 Ethernet   : 88E8040 PCIE Fast Ethernet Controller module: sky2 
 Network    : BCM4312 802.11b/g module: wl 
 Firewire   : R5C832 IEEE 1394 Controller  module: ohci1394

Audio

There are two options to get audio working: ALSA and OSS

ALSA

Sound works well on kernel 2.6.28-2.6.29. Only one headphone jack works. Use following commands to get it working without reading ALSA:

# pacman -Sy alsa-lib alsa-utils
# touch /etc/asound.state
# gpasswd -a yourusername audio
# alsaconf

Follow the steps of alsaconf and run the deamon with:

# /etc/rc.d/alsa start

Don't forget to put alsa in your deamon list in Rc.conf

modprobe.conf

Adding the following line to /etc/modprobe.conf can make both headphone jacks work:

options snd-hda-intel model=dell-bios

Doesn't work on every machine. It can lead to issues explained below. Leaving the line out again can fix that, but leaves you again with only one headphone jack.

In recent versions of the kernel (>2.6.25), the card could fade itself to zero volume when a headphone is inserted, irrelevant of all alsa controls. This doesn't apply on every system. To allow normal control of this card, enter the following line into modprobe.conf:

options snd-hda-intel model=3stack

OSS

Just follow the OSS wiki, it's really simple:

# pacman -Sy oss libflashsupport-oss
# gpasswd -a yourusername audio (I don't know if that is needed)
# /etc/rc.d/oss start

Don't forget to put oss in your deamon list in Rc.conf

You'll generally get better quality and louder sound than ALSA, but I couldn't find a way to get dual headphone jack working (The case with ALSA is the same, though...)

Video

The notebook comes with Intel GMA 965 (x3100)

The WXGA monitor is not detected by hwd -s. Here you can find more information about Dell laptop displays with 1280×800 as WXGA. The 24 bit depth is important for Xorg. (2^24 = 16.7 million)

The GM965 chipset is available for Xorg as xf86-video-intel from [extra]. Using following commands to get it working without reading Xorg:

# pacman -S xorg
# pacman -S xf86-video-intel

If you use framebuffer programs, you'll need xf86-video-fbdev too.

# pacman -S xf86-video-fbdev

Intel Kernel Mode Setting (KMS) works very well, try this if you have problems with your graphics

For keyboard and synaptics, I used Xorg_input_hotplugging; so a working xorg.conf only needs video/screen configuration:

Section "ServerLayout"
	 Identifier	"Xorg Configured"
	 Screen		"LVDS"
EndSection

Section "Module"
	 Load  "dri"
	 Load  "glx"
EndSection

Section "Device"
	 Identifier  "Intel GM965"
	 Driver      "intel"
EndSection

Section "Screen"
	 Identifier "LVDS"
	 Device     "Intel GM965"
	 DefaultColorDepth 24
	 SubSection "Display"
		 Depth	24
		 Modes	"1280x800"
		 Virtual	2048 2048 
	 EndSubSection
EndSection

Section "DRI"
	 Mode 0666
EndSection

For other video output, I use xrandr.

Grub: Framebuffer_Resolution

Add vga=865 to the kernel options

kernel /boot/vmlinuz26 root=/dev/sda3 ro vga=865

Check for more information Grub#Framebuffer_Resolution

Keyboard

Keyboard worked out of the box with Xorg_input_hotplugging. For azerty or other layouts, use a HAL policy.

This is /etc/hal/fdi/policy/10-keymap.fdi for Belgian azerty:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<deviceinfo version="0.2">
 <device>
   <match key="info.capabilities" contains="input.keymap">
     <append key="info.callouts.add" type="strlist">hal-setup-keymap</append>
   </match>

   <match key="info.capabilities" contains="input.keys">
     <merge key="input.xkb.rules" type="string">base</merge>

     <merge key="input.xkb.model" type="string">keyboard</merge>
     <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
            string="Linux">
       <merge key="input.xkb.model" type="string">evdev</merge>
     </match>

     <merge key="input.xkb.layout" type="string">be</merge>
     <merge key="input.xkb.variant" type="string" />
   </match>
 </device>
</deviceinfo>

Synaptics

Synaptics worked out of the box with Xorg_input_hotplugging. To enable scroll and more, go to Touchpad_Synaptics for more info.

A nice working /etc/hal/fdi/policy/11-x11-synaptics.fdi with tapping and two finger scroll enabled:

<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
 <device>
   <match key="info.capabilities" contains="input.touchpad">
     <match key="info.product" contains="AlpsPS/2 ALPS">
       <merge key="input.x11_driver" type="string">synaptics</merge>
       <merge key="input.x11_options.SHMConfig" type="string">true</merge>
       <merge key="input.x11_options.LeftEdge" type="string">50</merge>
       <merge key="input.x11_options.RightEdge" type="string">900</merge>
       <merge key="input.x11_options.TopEdge" type="string">140</merge>
       <merge key="input.x11_options.BottomEdge" type="string">680</merge>
       <merge key="input.x11_options.ClickFinger1" type="string">1</merge>
       <merge key="input.x11_options.ClickFinger2" type="string">3</merge>
       <merge key="input.x11_options.ClickFinger3" type="string">2</merge>
       <merge key="input.x11_options.HorizEdgeScroll" type="string">1</merge>
       <merge key="input.x11_options.VertEdgeScroll" type="string">1</merge>
       <merge key="input.x11_options.VertTwoFingerScroll" type="string">1</merge>
       <merge key="input.x11_options.HorizTwoFingerScroll" type="string">1</merge>
       <merge key="input.x11_options.EmulateTwoFingerMinZ" type="string">120</merge>
       <merge key="input.x11_options.HorizScrollDelta" type="string">20</merge>
       <merge key="input.x11_options.VertScrollDelta" type="string">20</merge>
       <merge key="input.x11_options.PressureMotionMinZ" type="string">30</merge>
       <merge key="input.x11_options.PressureMotionMaxZ" type="string">160</merge>
       <merge key="input.x11_options.PressureMotionMinFactor" type="string">1</merge>
       <merge key="input.x11_options.PressureMotionMaxFactor" type="string">1</merge>
       <merge key="input.x11_options.FingerLow" type="string">18</merge>
       <merge key="input.x11_options.FingerHigh" type="string">23</merge>
       <merge key="input.x11_options.FingerPress" type="string">256</merge>
       <merge key="input.x11_options.PalmDetect" type="string">1</merge>
       <merge key="input.x11_options.PalmMinWidth" type="string">10</merge>
       <merge key="input.x11_options.PalmMinZ" type="string">200</merge>
       <merge key="input.x11_options.MinSpeed" type="string">1</merge>
       <merge key="input.x11_options.MaxSpeed" type="string">1.5</merge>
       <merge key="input.x11_options.AccelFactor" type="string">0.10</merge>
       <merge key="input.x11_options.MaxTapMove" type="string">110</merge>
       <merge key="input.x11_options.MaxTapTime" type="string">366</merge>
       <merge key="input.x11_options.MaxDoubleTapTime" type="string">180</merge>
       <merge key="input.x11_options.TapButton1" type="string">1</merge>
       <merge key="input.x11_options.TapButton2" type="string">2</merge>
       <merge key="input.x11_options.TapButton3" type="string">3</merge>
       <merge key="input.x11_options.RTCornerButton" type="string">2</merge>
       <merge key="input.x11_options.RBCornerButton" type="string">3</merge>
       <merge key="input.x11_options.LTCornerButton" type="string">0</merge>
       <merge key="input.x11_options.LBCornerButton" type="string">0</merge>
      </match>
     </match>
 </device>
</deviceinfo>

Wireless

We have variations...

Intel PRO wireless

If your hwd -s shows this:

 Network    : PRO/Wireless 3945ABG [Golan] Network Connection module: iwl3945

You are required to get iwlwifi-3945-ucode out of [core].

# pacman -S iwlwifi-3945-ucode

This package is also available [core-devel] on the 2008.06 installer CD.

Then add iwl3945 to your MODULES array in /etc/rc.conf

MODULES=( ... iwl3945 ... )

Broadcom BCM4312

If your hwd -s shows this: (as is my case)

 Network    : BCM4312 802.11b/g module: wl 

You need to install broadcom-wl from AUR. Refer to Broadcom_BCM4312 wiki entry.

Modem

You need hsfmodem package from AUR in order to get modem working. After you install that package you need to:

  1. Run hsfconfig as root to build the module and initialize the modem. A reboot is required before the modem can be initialized. Run hsfconfig again after reboot.
  2. The modules are automatically loaded and a /dev/modem symlink is setup for use with the modem. Now use wvdial or other dialer programs to connect to the internet.

I didn't test dialing, however I could see the modem device in /dev.

Webcam

For your webcam you need the uvcvideo module

# modprobe uvcvideo

Add it to your /etc/rc.conf modules line. More information can be found in Webcam_Setup wiki entry.

With recent kernels (> 2.6.30), you may well find that your webcam does not function when using applications such as Skype or Guvcview, although the webcam is properly recognized by hardinfo and lsusb as an 'OmniVision OV2640' with identifier 05a9:2640 (this may differ on your precise model of course). The solution is to ensure that the uvcvideo module is loaded with an option as follows:

# modprobe uvcvideo trace=15

The easiest way to enforce this at startup is to create the file /etc/modprobe.d/uvcvideo_trace15.conf containing the line:

install uvcvideo /sbin/modprobe --ignore-install uvcvideo trace=15 $CMDLINE_OPTS

Guvcview, UCView and Skype should all then be able to use the camera normally.

USB, SD card slot, Ethernet, Firewire, VGA, S-video

All work out of the box.

HDMI, PCMCIA

Not tested. (HDMI should work, intel's driver introduced a lot of fixes for that recently...)


Mediakeys

Get xbindkeys from [extra]:

# pacman -S xbindkeys

Add 'xbindkeys &' in $HOME/.xinitrc right before your window manager is executed.

Create $HOME/.xbindkeysrc file with:

"amixer set Master 5+ unmute"
 XF86AudioRaiseVolume

"amixer set Master 5- unmute"
 XF86AudioLowerVolume

"amixer set 'Master' toggle"
 XF86AudioMute

#"audioplayer -next"
# XF86AudioNext

#"audioplayer -pause"
# XF86AudioPlay

#"audioplayer -stop"
# XF86AudioStop

#"audioplayer -previous"
# XF86AudioPrev


References

Audio:

Video:

Keyboard & Synaptics:

Wireless:

Webcam: