Difference between revisions of "Sony Vaio VGN-FE21B"
VoidWalker (talk | contribs) (→Wireless) |
(It's a guide for Arch Linux 0.7.2 ...) |
||
Line 1: | Line 1: | ||
+ | {{out of date}} | ||
+ | |||
{{stub}} | {{stub}} | ||
==Introduction== | ==Introduction== |
Revision as of 12:08, 26 August 2011
Contents
Introduction
This is a mini guide to configure a Sony Vaio VGN-FE21B on Arch linux 0.7.2
Specs
- Intel core duo T2300 1.66 MHz
- 1GB DDR2 SDRAM
- 80GB disk
- 1280x800 WXGA 15,4" LCD
- Double layer DVD-RW
- Nvidia GeForce Go 7400
- Intel pro wireless 3945
lspci output:
00:00.0 Host bridge: Intel Corporation Mobile Memory Controller Hub (rev 03) 00:01.0 PCI bridge: Intel Corporation Mobile PCI Express Graphics Port (rev 03) 00:1b.0 Class 0403: 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:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (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 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controllers cc=IDE (rev 02) 00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02) 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 01d8 (rev a1) 06:00.0 Network controller: Intel Corporation Unknown device 4222 (rev 02) 0a:03.0 CardBus bridge: Texas Instruments Unknown device 8039 0a:03.1 FireWire (IEEE 1394): Texas Instruments Unknown device 803a 0a:03.2 Mass storage controller: Texas Instruments Unknown device 803b 0a:08.0 Ethernet controller: Intel Corporation Unknown device 1092 (rev 02
Power management
Power profiles and CPU frequency scaling works fine with powersave I have decided to install latest versions of powersaved and kpowersave (the arch version is outdated):
- Download both packages from powersave.sf.net
- Install hal hdparm acpid cpufrequtils vbetool
- Install both packages
- powersaved: ./configure --prefix=/usr && make && make install
- kpowersave: ./configure --prefix=/opt/kde && make && make install
- run 'groupadd power' and add your normal user to that group
- Copy necessary files
- Download them from http://cvs.archlinux.org/cgi-bin/viewcvs.cgi/daemons/powersave/?cvsroot=Unstable&only_with_tag=CURRENT
- copy powersave.conf to /etc/dbus-1/system.d/
- copy powersaved to /etc/rc.d
- Add the following modules to rc.conf: speedstep-centrino cpufreq_conservative cpufreq_stats cpufreq_powersave cpufreq_userspace cpufreq_ondemand
- Add the following service to rc.conf (at least after hal and debus): powersaved
- Restart linux
Once in KDE you can run kpowesave
Brightness control works with smartdimmer, but is not supported in powersave (or it is?)
TODO: Make suspend to disk work
Wireless
That one is easy:
- pacman -S iwlwifi-3945-ucode
- Add module iwl3945 to rc.conf
I recommend to use this with WICD networkmanager. It works out of the box.
xorg
Nvidia drivers works fine (2D and 3D), you should set resolution to 1280x800
TODO:
- make tvout work
- make touch pad scrolling work
Audio
No problems here
Special keys (fn and so...) Part 1
I didn't manage to make the fn key work, but that is what I have done:
- Mute key is hardware driven
- Volume keys:
- edit .kde/Autostart/keycodes.sh and add:
xmodmap -e 'keycode 174=F21' # lower volume xmodmap -e 'keycode 176=F22' # raise volume exit 0
- Run source .kde/Autostart/keycodes.sh
- Go to Preferences -> Regional settings -> Add actions
- Create a group named Vaio keys (or whatever)
- Add acctions:
- volup: dcop action, app: kmix, remote object: mixer0, function: IncreaseVolume, args: 0
- voldown: dcop action, app: kmix, remote object: mixer0, function: DecreaseVolume, args: 0
- brightup: command, I use ctrl+F5 bind key, command: ~/bin/brightdown.sh
- brightdown: command, I use ctrl+F6 bind key, command: ~/bin/brightup.sh
This is the contents of the bright scripts:
brightdown.sh:
#!/bin/sh smartdimmer -d
brightup.sh:
#!/bin/sh smartdimmer -i
Part 2(About Volume Keys)
The method above works fine if you have only one keyboard layout. But if you use couple languages then keycodes are reseted. What I did to bypass this problem was to set these keys as F20 and F21 modifying keycodes in xkb.
Ok here's what I did:
I use "Generic 105-key PC" keyboard as my keyboard model.(You can change it in Control Center--> Regional& Accessibility-->Keyboard Layout).
after that edit corresponding keycode file(for "Generic 105-key PC" it was /usr/share/X11/xkb/keycodes/digital_vndr/pc), add key codes to your keyboard section or as I did it to pc_common section. It should look something like this:
<part of file>
xkb_keycodes "pc_common" { // "Function" keys <FK20> = 174; // <--- Volume button key code assigned to FK20 <FK21> = 176; //<--- Volume button key code assigned to FK20 <FK01> = 9; <FK02> = 15; <FK03> = 23; <FK04> = 31; <FK05> = 39;
</part of file>
after that you need to assign it as F20 and F21 buttons on your keyboard. To do that edit file /usr/share/X11/xkb/symbols/pc (or corresponding file if you use other keyboard model in Settings)
there you gonna find a part where F keys are assigned it should be something like this
<part of file>
key <FK10> { type="CTRL+ALT", symbols[Group1]= [ F10, XF86_Switch_VT_10 ] }; key <FK11> { type="CTRL+ALT", symbols[Group1]= [ F11, XF86_Switch_VT_11 ] }; key <FK12> { type="CTRL+ALT", symbols[Group1]= [ F12, XF86_Switch_VT_12 ] };
</part of file>
All you have to do now is to add our "new" keys here:
<part of file>
key <FK12> { type="CTRL+ALT", symbols[Group1]= [ F12, XF86_Switch_VT_12 ] }; key <FK20> { type="CTRL+ALT", //<-- for F20 key symbols[Group1]= [ F20, XF86_Switch_VT_20 ] }; key <FK21> { type="CTRL+ALT", //<-- for F21 key symbols[Group1]= [ F21, XF86_Switch_VT_20 ] };
</part of file>
That is it - now your volume keys are assigned. But they don't change the volume yet. To do that go to Control Center-->Regional&Accessibility-->Input Actions and add new group(name it as you like). Add new action, set Action Type to "Keyboard Shortcut -> DCOP Call(simple)". In a "Keyboard Shortcut" press the box and press Vol- button on your keyboard. In "Dcop Call Settings" set(case sensetive):
- Remote application: kmix
- Remote object: Mixer0
- Called function: decreaseVolume
- Arguments:0
Then press try. And your volume should go down. Press Apply button
Add the same action for your Vol+ button. except change "decreaseVolume" to "increaseVolume".
That's it now your volume keys shoud work. Hit/Tip: To check keycodes use type "xev" in terminal. Pressing button should give you output with keycode.
Nomail 08:40, 14 June 2008 (EDT)
Quake 4 sound fix
Yeah, I also play on arch linux
- Edit ~/.quake4-demo/q4base/Quake4Config.cfg
- Change s_driver value to oss
And you are done