Vaio VGN-G3
Contents |
Installation
Nothing too fancy, you can have a DVD reader/writer on this laptop so you can use a cd, usb or netboot install. Use something really recent if you can, the 2.6.32 kernel has support for pretty much everything listed below. I decided to install Debian (surprise!).
Interesting devices
Video card
00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) 00:02.1 Display controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)
Use i915 and intel_agp.
Wired network
00:19.0 Ethernet controller: Intel Corporation 82567LM Gigabit Network Connection (rev 03)
Use e1000e.
Audio card
00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)
Use snd_hda_codec_realtek and snd_hda_intel of course.
Fake RAID
00:1f.2 RAID bus controller: Intel Corporation Mobile 82801 SATA RAID Controller (rev 03)
This is of not much use. So I configured Linux software raid instead.
Wireless network
02:00.0 Network controller: Intel Corporation Wireless WiFi Link 5100
Use iwlagn and its firmware.
Card reader
0b:04.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ba) 0b:04.2 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 21) 0b:04.4 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 11)
The SD reader works fine out of the box. The Memory Stick reader doesn't work at all which is a shame since I never had problems with MMS readers on Vaios. Well for the SZ it was less obvious but support in the Linux kernel arrived eventually. Back then MMS readers were behind a USB controller and the standard usb_storage module would work, now they are behind this Ricoh CardBus bridge and using a non-standard protocol. Sigh.
Use the standard bluetooth modules, the device will be auto-discovered with udev anyway.
sony-laptop specific
The sony-laptop module works fine for this model, so all Fn keys are reported and rfkill devices created properly:
mattia@caligola:~> grep . /sys/class/rfkill/*/{state,name}
/sys/class/rfkill/rfkill2/state:1
/sys/class/rfkill/rfkill6/state:1
/sys/class/rfkill/rfkill7/state:1
/sys/class/rfkill/rfkill8/state:1
/sys/class/rfkill/rfkill2/name:phy0
/sys/class/rfkill/rfkill6/name:sony-wifi
/sys/class/rfkill/rfkill7/name:sony-bluetooth
/sys/class/rfkill/rfkill8/name:hci0
The panel backlight is also controlled by sony-laptop:
mattia@caligola:~> ls -l /sys/class/backlight/sony/ total 0 -r--r--r-- 1 root root 4096 Dec 15 07:21 actual_brightness -rw-r--r-- 1 root root 4096 Dec 20 10:39 bl_power -rw-r--r-- 1 root root 4096 Dec 15 07:21 brightness -r--r--r-- 1 root root 4096 Dec 15 06:58 max_brightness drwxr-xr-x 2 root root 0 Dec 20 10:39 power lrwxrwxrwx 1 root root 0 Dec 15 06:58 subsystem -> ../../../../class/backlight -rw-r--r-- 1 root root 4096 Dec 19 17:53 uevent
Back to Fn keys I use this HAL mapping in /etc/hal/fdi/policypreferences.fdi:
<device>
<match key="input.product" string="Sony Vaio Keys">
<match key="/org/freedesktop/Hal/devices/computer:system.hardware.vendor" prefix="Sony">
<append key="input.keymap.data" type="strlist">0x06:mute</append>
<append key="input.keymap.data" type="strlist">0x07:volumedown</append>
<append key="input.keymap.data" type="strlist">0x08:volumeup</append>
<append key="input.keymap.data" type="strlist">0x09:brightnessdown</append>
<append key="input.keymap.data" type="strlist">0x0a:brightnessup</append>
<append key="input.keymap.data" type="strlist">0x0b:switchvideomode</append>
<append key="input.keymap.data" type="strlist">0x0e:zoom</append>
<append key="input.keymap.data" type="strlist">0x10:suspend</append>
<append key="info.capabilities" type="strlist">input.keymap</append>
</match>
</match>
</device>
Suspend to disk and to ram
They both work without having to fiddle with additional options or loading/unloading of modules. Depending on the kernel version you run YMMV (as this damn suspend thing is quite fragile apparently) but in general I didn't have many problems so far.
Files
- .config
- no xorg.conf required
- Hal tweaks
Other
lspci
00:00.0 Host bridge: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub (rev 07) 00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) 00:02.1 Display controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (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: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 RAID bus controller: Intel Corporation Mobile 82801 SATA RAID Controller (rev 03) 00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 03) 02:00.0 Network controller: Intel Corporation Wireless WiFi Link 5100 0b:04.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ba) 0b:04.2 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 21) 0b:04.4 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 11)
lsusb
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 005 Device 003: ID 044e:3017 Alps Electric Co., Ltd Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 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 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
cpufreq-info
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0 1
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 1.40 GHz
available frequency steps: 1.40 GHz, 1.40 GHz, 1.20 GHz, 800 MHz
available cpufreq governors: userspace, conservative, powersave, ondemand, performance
current policy: frequency should be within 800 MHz and 1.40 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 800 MHz.
cpufreq stats: 1.40 GHz:0.42%, 1.40 GHz:0.02%, 1.20 GHz:0.05%, 800 MHz:99.51% (258604)
analyzing CPU 1:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0 1
CPUs which need to have their frequency coordinated by software: 1
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 1.40 GHz
available frequency steps: 1.40 GHz, 1.40 GHz, 1.20 GHz, 800 MHz
available cpufreq governors: userspace, conservative, powersave, ondemand, performance
current policy: frequency should be within 800 MHz and 1.40 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 800 MHz.
cpufreq stats: 1.40 GHz:0.68%, 1.40 GHz:0.02%, 1.20 GHz:0.06%, 800 MHz:99.24% (248351)
/proc/cpuinfo
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU U9400 @ 1.40GHz stepping : 6 cpu MHz : 800.000 cache size : 3072 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm ida tpr_shadow vnmi flexpriority bogomips : 2792.53 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU U9400 @ 1.40GHz stepping : 6 cpu MHz : 800.000 cache size : 3072 KB physical id : 0 siblings : 2 core id : 1 cpu cores : 2 apicid : 1 initial apicid : 1 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm ida tpr_shadow vnmi flexpriority bogomips : 2792.98 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: