EDIT:
This is what I compiled
Code: Select all
# cat /usr/src/linux/.config | grep SONY
CONFIG_SONY_LAPTOP=y
CONFIG_SONYPI_COMPAT=y
CONFIG_SONYPI=yCode: Select all
# cat /usr/src/linux/.config | grep SONY
CONFIG_SONY_LAPTOP=y
CONFIG_SONYPI_COMPAT=y
CONFIG_SONYPI=ypijalu wrote:Because you need subversion to fetch the source code
Code: Select all
sonypi: Sony Programmable I/O Controller Driver v1.26.
sonypi: please try the sony-laptop module instead and report failures, see also http://www.linux.it/~malattia/wiki/index.php/Sony_drivers
sonypi: detected type3 model, verbose = 0, fnkeyinit = off, camera = off, compat = off, mask = 0xffffffff, useinput = on, acpi = on
sonypi: enabled at irq=11, port1=0x1080, port2=0x1084
sonypi: device allocated minor is 63
input: Sony Vaio Jogdial as /class/input/input0
input: Sony Vaio Keys as /class/input/input1
sonypi command failed at drivers/char/sonypi.c : sonypi_call1 (line 652)
sonypi command failed at drivers/char/sonypi.c : sonypi_call2 (line 663)
sonypi command failed at drivers/char/sonypi.c : sonypi_call2 (line 665)
sonypi command failed at drivers/char/sonypi.c : sonypi_call1 (line 652)It's quite probable that your ACPI just does not work as the old fs series, and it seems to use something differentbarlad wrote:fsfn does not work on my laptop (sony SZ serie) and I am wondering a few things.
- I am using the latest sony-laptop driver from 2.6.24 and everything related to FN keys seem to work fine: there is an input device created to which is redirected all the FN keystrokes, and those FN strokes are even forwarded to the acpid daemon as acpi events. The only thing I do not have is a fnkey device in /sys/devices/platform/sony-laptop/fnkey . Why don't I have this fnkey device if everything seems to work fine? Is this a problem with the sony-laptop driver?
The FS serie (and a few others) used this device to get the actual key you pressed - For some reason, when you hit the FN+something, the hardware always return same "key", and the actual value of the function was set in ACPI... The fnkey was just the userspace entry to this memory- My second question is what's the point of this fnkey device anyway? It was my understanding that fsfn works by reading keystrokes from the input device (/dev/input/eventX) and using it to set up brightness or volume or whatever. What's the role played by the fnkey device in this?
It's open source, so nothing stop you from changing/updating FSFN to support the handling of your laptopI guess I am not hopeless to get a use of my fn keys since I can use acpid rules for them but I would be much happier with fsfn :/
Thanks for all the help!
Nope... mostly because I don't have a Gentoo on this laptop anymore [I moved that old baby to Ubuntu since I only start once a monthPeach wrote:hi pijalu. did you already tried fsfn with pulseaudio? I'm currently possessing a USB SoundBlaster-live! (awful support btw) and got serious improvements using pulseaudio, but now the only key working is the light but not the audio. If you need any output just ask.
Code: Select all
Apr 14 17:43:10 gallardo atkbd.c: Unknown key pressed (translated set 2, code 0xf5 on isa0060/serio0).
Apr 14 17:43:10 gallardo atkbd.c: Use 'setkeycodes e075 <keycode>' to make it known.
Apr 14 17:43:10 gallardo atkbd.c: Unknown key released (translated set 2, code 0xf5 on isa0060/serio0).
Apr 14 17:43:10 gallardo atkbd.c: Use 'setkeycodes e075 <keycode>' to make it known.Code: Select all
gallardo ~ # cat /proc/bus/input/devices
I: Bus=0019 Vendor=0000 Product=0002 Version=0000
N: Name="Power Button (FF)"
P: Phys=LNXPWRBN/button/input0
S: Sysfs=/class/input/input0
U: Uniq=
H: Handlers=kbd event0
B: EV=3
B: KEY=100000 0 0 0
I: Bus=0019 Vendor=0000 Product=0005 Version=0000
N: Name="Lid Switch"
P: Phys=PNP0C0D/button/input0
S: Sysfs=/class/input/input1
U: Uniq=
H: Handlers=event1
B: EV=21
B: SW=1
I: Bus=0019 Vendor=0000 Product=0001 Version=0000
N: Name="Power Button (CM)"
P: Phys=PNP0C0C/button/input0
S: Sysfs=/class/input/input2
U: Uniq=
H: Handlers=kbd event2
B: EV=3
B: KEY=100000 0 0 0
I: Bus=0011 Vendor=0001 Product=0001 Version=abba
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/class/input/input3
U: Uniq=
H: Handlers=kbd event3
B: EV=120013
B: KEY=4 2000000 3803078 f800d001 feffffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7
I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="PS/2 Mouse"
P: Phys=isa0060/serio4/input1
S: Sysfs=/class/input/input4
U: Uniq=
H: Handlers=mouse0 event4
B: EV=7
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=3
I: Bus=0011 Vendor=0002 Product=0008 Version=7321
N: Name="AlpsPS/2 ALPS GlidePoint"
P: Phys=isa0060/serio4/input0
S: Sysfs=/class/input/input5
U: Uniq=
H: Handlers=mouse1 event5
B: EV=f
B: KEY=420 0 70000 0 0 0 0 0 0 0 0
B: REL=3
B: ABS=1000003
I: Bus=0010 Vendor=104d Product=0000 Version=0000
N: Name="Sony Vaio Keys"
P: Phys=
S: Sysfs=/class/input/input10
U: Uniq=
H: Handlers=kbd event6 rfkill
B: EV=13
B: KEY=1f 3fff0000 0 0 100000 0 2 0 6000 100400 0 40300400 0 0 0 0
B: MSC=10
I: Bus=0010 Vendor=104d Product=0000 Version=0000
N: Name="Sony Vaio Jogdial"
P: Phys=
S: Sysfs=/class/input/input11
U: Uniq=
H: Handlers=mouse2 event7
B: EV=7
B: KEY=40000 0 0 0 0 0 0 0 0
B: REL=100
Code: Select all
gallardo ~ # ls /dev/input/
by-path event0 event1 event2 event3 event4 event5 event6 event7 mice mouse0 mouse1 mouse2
Code: Select all
Apr 14 17:50:08 gallardo fsfn[4094]: Setting default configuration
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: DEVICE=AUTO
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: ALSA_NAME=Front
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: SOUND_STEP=10
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: F12_CMD=/bin/hibernate
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: OSD_VCOLOR=red
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: OSD_VCOLORZ=red
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: OSD_BCOLOR=blue
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: OSD_FONT=-*-*-*-*-*-*-20-*-*-*-*-*-*-*
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: OSD_TIMEOUT=3
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: BRT_SETDEFAULT=0
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: BRT_HACK_FJS=0
Apr 14 17:50:08 gallardo fsfn[4094]: Using sony-laptop subsystem
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: BRIGHTNESS_DEVICE=/sys/class/backlight/sony/brightness
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: BRIGHTNESS_DEFAULT_DEVICE=/sys/devices/platform/sony-laptop/brightness_default
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: FNKEY_DEVICE=/sys/devices/platform/sony-laptop/fnkey
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: BRIGHTNESS_MAX=7
Apr 14 17:50:08 gallardo fsfn[4094]: Configuration: BRIGHTNESS_MIN=0
Apr 14 17:50:08 gallardo fsfn[4094]: default configuration done
Apr 14 17:50:08 gallardo fsfn[4094]: Loading config file /etc/fsfn.conf
Apr 14 17:50:08 gallardo fsfn[4094]: error opening config file: No such file or directory
Apr 14 17:50:08 gallardo fsfn[4094]: autodevice determines /dev/input/event3 as keyboard event
Apr 14 17:50:08 gallardo fsfn[4094]: fsfn loaded
Apr 14 17:50:12 gallardo atkbd.c: Unknown key pressed (translated set 2, code 0xf5 on isa0060/serio0).
Apr 14 17:50:12 gallardo atkbd.c: Use 'setkeycodes e075 <keycode>' to make it known.
Apr 14 17:50:12 gallardo atkbd.c: Unknown key released (translated set 2, code 0xf5 on isa0060/serio0).
Apr 14 17:50:12 gallardo atkbd.c: Use 'setkeycodes e075 <keycode>' to make it known.
Apr 14 17:50:12 gallardo atkbd.c: Unknown key pressed (translated set 2, code 0xf5 on isa0060/serio0).
Apr 14 17:50:12 gallardo atkbd.c: Use 'setkeycodes e075 <keycode>' to make it known.
Apr 14 17:50:12 gallardo atkbd.c: Unknown key released (translated set 2, code 0xf5 on isa0060/serio0).
Apr 14 17:50:12 gallardo atkbd.c: Use 'setkeycodes e075 <keycode>' to make it known.
Apr 14 17:50:13 gallardo atkbd.c: Unknown key pressed (translated set 2, code 0xf5 on isa0060/serio0).
Apr 14 17:50:13 gallardo atkbd.c: Use 'setkeycodes e075 <keycode>' to make it known.
Apr 14 17:50:13 gallardo atkbd.c: Unknown key released (translated set 2, code 0xf5 on isa0060/serio0).
Apr 14 17:50:13 gallardo atkbd.c: Use 'setkeycodes e075 <keycode>' to make it known.Hmm... the "log error" is normal, just the kernel kb bitching since it does not know the meaning of the key and does not harm...VinnieNZ wrote:Hi pijalu,
[snip]
I can echo the brightness level out to /sys/class/backlight/sony/brightness and it changes, so nothing wrong there, and I've ensured that the hotkeys are set to Type 1 in the BIOS. I've also checked that /sys/devices/platform/sony-laptop/fnkey exists (it contains the value '31' if it makes a difference).
[snip]
Code: Select all
modules_2_6="${modules_2_6} nvidia"
module_nvidia_args_2_6=""
modules_2_6="${modules_2_6} ipw2200 sony_acpi"
module_ipw2200_args_2_6=""
module_sony_acpi_args_2_6=""Code: Select all
# grep "SONY" .config
CONFIG_SONY_LAPTOP=m
CONFIG_SONYPI_COMPAT=y
# CONFIG_SONYPI is not set
#
Code: Select all
# modprobe sony-laptop
# dmesg
sony-laptop: Sony Programmable IO Control Driver v0.5.
sony-laptop: detected Type2 model
input: Sony Vaio Keys as /class/input/input18
input: Sony Vaio Jogdial as /class/input/input19
sony-laptop: device allocated minor is 61
sony-laptop: Sony Notebook Control Driver v0.5.
# ls /dev/input/
by-id event0 event2 event4 event6 mice mouse1 mouse3
by-path event1 event3 event5 event7 mouse0 mouse2
# ls /sys/devices/platform/sony-laptop/
bluetoothpower bus fanspeed power uevent
brightness_default driver modalias subsystem wwanpower
Code: Select all
SonyFN loaded
Error opening /proc/acpi/sony/fnkey: No such file or directory
Code: Select all
# grep "ACPI" .config
CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_PROCFS=y
CONFIG_ACPI_PROCFS_POWER=y
CONFIG_ACPI_SYSFS_POWER=y
CONFIG_ACPI_PROC_EVENT=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
# CONFIG_ACPI_DOCK is not set
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
# CONFIG_ACPI_ASUS is not set
# CONFIG_ACPI_TOSHIBA is not set
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_SYSTEM=y
# CONFIG_ACPI_CONTAINER is not set
# CONFIG_ACPI_SBS is not set
# CONFIG_X86_ACPI_CPUFREQ is not set
# CONFIG_HOTPLUG_PCI_ACPI is not set
CONFIG_PNPACPI=y
# CONFIG_THINKPAD_ACPI is not set
# CONFIG_BLK_DEV_IDEACPI is not set
CONFIG_ATA_ACPI=y
# CONFIG_PATA_ACPI is not set
Code: Select all
depmod -a
modprobe sony_acpiCode: Select all
CONFIG_HID_SONY=y
CONFIG_SONY_LAPTOP=y
CONFIG_SONYPI_COMPAT=y