For the actual maintained one please move to the wiki and feel free to contribute
We'll keep this thread for discussion and support
So let's write (in what I hope will be some kind of English, forgive me
NOTE: many of the urls that I've linked works only if you cut the url and paste them in you address bar.
0. Before we start
I think you want to remove the "Designed for Ms Windows XP" sticker, I did. It's one of the most difficult part of the installation, but just take your time and use your nails.
1. Basic System
Select "MPENTIUMM" in kernel config. I have this in my make.conf
Code: Select all
CFLAGS="[...] -march=i686 [...]"
USE="[...] sse sse2 mmx [...]"Disk is a S-ATA disk, so you need SATA support built-in in the kernel.
N.B. hdparm has no support for sata disks at the moment.
There is a big (10GB) recover partition at the beginnig of the disk. Make recover DVDs from Vaio Recover Utility in Win and wipe it, if you want. I did. Just remeber the bootable DVD is actually the *second* you burn.
3. Frame buffer
At the moment I'm using gentoo-sources-2.6.12-r9 and splashutils-1.1.9.9. I could manage to get the 1280x800 framebuffer, so I stay with 1024x768 (vga=791). vesafb-tng is doing strange things with my display, so I stayed with vesafb.
4. X
Nvidia 6200 Turbocache and a 13.3'' TFT widescreen. You need ~x86 nvidia-gfx and nvidia-kernel or it won't work. So unmask them (/etc/portage/package.unmask), add them to /etc/portage/package.keywords and finally emerge them. Echo "nvidia" >> /etc/modules.autolad/kernel-2.6 to have it load at boot.
In Xorg.conf we need something like
Code: Select all
Section "Device"
Identifier "Card0"
VendorName "nVidia Corporation"
BoardName "GeForce Go 6200"
BusID "PCI:1:0:0"
Driver "nvidia"
Option "RenderAccel" "true"
#Option "NoLogo" "true"
Option "NvAGP" "1"
EndSection Code: Select all
Section "Module"
...
# Load "dri"
Code: Select all
Section "Monitor"
Identifier "Monitor0"
VendorName "Sony"
ModelName "X-Black"
Option "dpms"
HorizSync 29-60
VertRefresh 0-60
DisplaySize 285 179 #important to set dpi properly
Modeline "1280x800" 68.56 1280 1336 1472 1664 800 801 804 824 -HSync +Vsync
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1280x800"
EndSubSection
EndSection
Code: Select all
emerge x11-misc/synapticsCode: Select all
Section "InputDevice"
Identifier "Touchpad"
Driver "synaptics"
Option "Protocol" "event"
Option "Device" "/dev/input/event2"
Option "ZAxisMapping" "Y"
Option "Emulate3Buttons" "true"
Option "Emulate3Timeout" "100"
# Next line required only if you want to disable the mousepad while typing:
Option "SHMConfig" "on"
# Tweak this option as you like, it works anyway, have a look in
# /usr/share/doc/synaptics*/README.gz for more options
Option "LeftEdge" "60"
Option "RightEdge" "830"
Option "TopEdge" "70"
Option "BottomEdge" "650"
Option "FingerLow" "25"
Option "FingerHigh" "30"
Option "MaxTapTime" "180"
Option "MaxTapMove" "50"
Option "EmulateMidButtonTime" "75"
Option "VertScrollDelta" "50"
Option "HorizScrollDelta" "50"
Option "MinSpeed" "0.50"
Option "MaxSpeed" "0.9"
Option "AccelFactor" "0.02"
Option "EdgeMotionSpeed" "40"
Option "UpDownScrolling" "1"
Option "TouchpadOff" "0"
EndSection
The network adapter is
Code: Select all
0000:06:08.0 Ethernet controller: Intel Corporation 82562ET/EZ/GT/GZ - PRO/100 VE (LOM) Ethernet Controller Mobile (rev 03)Code: Select all
0000:06:0b.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)Code: Select all
emerge net-wireless/ipw22006. Sound
Yes, the sound is really poor. But anyway we want it working. So enable
Code: Select all
Symbol: SND_HDA_INTEL [=m]
Prompt: Intel HD Audio
Defined at sound/pci/Kconfig:517
Depends on: !M68K && SOUND!=n && PCI && SND
Location:
-> Device Drivers
-> Sound
-> Advanced Linux Sound Architecture
-> Advanced Linux Sound Architecture (SND [=m])
-> PCI devices
Selects: SND_PCMCode: Select all
alias snd-card-0 snd-hda-intelCode: Select all
rc-update add alsasound defaultCode: Select all
ALSA_CARDS="hda-intel"It seems that adding
Code: Select all
options snd-hda-intel position_fix=1(Thanks to pijalu for this tweak)
7. ACPI
ACPI at least works. You get the power button event and the lid open/close. You also get ATF0 themperature. You can switch on/off the dvdrw device with sony_acpi.
Frequencies: I don't have yet understood if we have 4 or 8 clock steps. But just follow the Power Management Guide. I use cpufreqd and it works quite well.
8. LCD Brightness
The brightness isn't acpi governed, but it uses something in nvidia interface. There is a workaround (thanks Erik Waling!) for this, just use smartdimmer for linux . This is the very first release, so expect enchanchements, it will probabily be integrated in nvclock. I wrote a quick and dirty ebuild for it, just download it (copy&paste the url) and set put it in your $PORTDIR_OVERLAY/media-video/smartdimmer. Then remeber to (See the docs for more[ info)
Code: Select all
ebuild $PORTDIR_OVERLAY/media-video/smartdimmer/smartdimmer-0.1.ebuild digest
emerge -av smartdimmer
Code: Select all
smartdimmer -hNow they work, really thanks again to Erik Waling for this. To make them work you need to:
patch your kernel (HOWTO) with this patch. Hopefully this will be integrated in the next relase of sonypi, but for the moment (01/08/2005) this step is needed.
then configure sonypi, read the doc (/usr/src/linux/Documentation/sonypi.txt), but mainly you need to do something like
Code: Select all
echo -e "alias char-major-10-250 sonpi \noptions sonypi minor=250" > /etc/modules.d/sonypi
mknod /dev/sonypi c 10 250
modules-updateCode: Select all
make modules modules_installCode: Select all
rc-update add sonypi default
/etc/init.d/sonypiThe script run when an event occurs is /usr/local/sbin/sonykey.sh, in this version it enables audio (with alsa) and brightness control (you need smartdimmer, read section 8. This is far from perfect, and will be probabily updated with your help.
Oh. If you want to use the events that occurs by pressing the fn key (i.e. fn+F1) in X you need to translate the event to the X event interface. That can be done in several ways, one of them is using evrouter. (see [1]) But I fond easier to edit sonykeyd (you find the ebuild in this 3d) and add an XTestFakeKeyEvent routine. I'll post the patch as I find the time to check it, just mail me if you're interested meanwhile
If you want some kind of on-screen-display you can
Code: Select all
emerge xosdCode: Select all
CATCOM="osd_cat -f -*-aquafont-*-*-*-*-17-*-*-*-*-*-*-uni -c red -s 1 -d 1 -o 30 -i 150 -p bottom"
${CATCOM} -b percentage -P $(amixer sset 'Front' 5- | awk '{if(match($5,/[0-9]+%/)){ print substr($5,RSTART,RLENGTH-1)}}') -T Volume #volume +5
${CATCOM} -b percentage -P $(amixer sset 'Front' 5+ | awk '{if(match($5,/[0-9]+%/)){ print substr($5,RSTART,RLENGTH-1)}}') -T Volume #volume -5
${CATCOM} -b slider -P $(smartdimmer -g | awk '{print $3*100/21}') -T Brightness #brightness status
echo mute | ${CATCOM} # displays what you "echo"Hints are always welcome
EDIT1: you can see some other interesting notes [1] here
EDIT2: added sect. 0
EDIT3: ACPI news...
EDIT7: Brightness control now works!
EDIT11: Added smartdimmer ebuild
EDIT13: Now FN key works, added ebuild.
EDIT15: Some more news on FN keys.
EDIT18: xosd part
(the other edits are just typos or minor things!)



