Version:  2.6.24 2.6.25 2.6.26 2.6.27 2.6.28 2.6.29 2.6.30 2.6.31 2.6.32 2.6.33 2.6.34

Architecture:  x86 arm avr32 blackfin m68k m68knommu microblaze mips powerpc sh

Linux/Documentation/laptops/sonypi.txt

  1 Sony Programmable I/O Control Device Driver Readme
  2 --------------------------------------------------
  3         Copyright (C) 2001-2004 Stelian Pop <stelian@popies.net>
  4         Copyright (C) 2001-2002 AlcĂ´ve <www.alcove.com>
  5         Copyright (C) 2001 Michael Ashley <m.ashley@unsw.edu.au>
  6         Copyright (C) 2001 Junichi Morita <jun1m@mars.dti.ne.jp>
  7         Copyright (C) 2000 Takaya Kinjo <t-kinjo@tc4.so-net.ne.jp>
  8         Copyright (C) 2000 Andrew Tridgell <tridge@samba.org>
  9 
 10 This driver enables access to the Sony Programmable I/O Control Device which
 11 can be found in many Sony Vaio laptops. Some newer Sony laptops (seems to be
 12 limited to new FX series laptops, at least the FX501 and the FX702) lack a
 13 sonypi device and are not supported at all by this driver.
 14 
 15 It will give access (through a user space utility) to some events those laptops
 16 generate, like:
 17         - jogdial events (the small wheel on the side of Vaios)
 18         - capture button events (only on Vaio Picturebook series)
 19         - Fn keys
 20         - bluetooth button (only on C1VR model)
 21         - programmable keys, back, help, zoom, thumbphrase buttons, etc.
 22           (when available)
 23 
 24 Those events (see linux/sonypi.h) can be polled using the character device node
 25 /dev/sonypi (major 10, minor auto allocated or specified as a option).
 26 A simple daemon which translates the jogdial movements into mouse wheel events
 27 can be downloaded at: <http://popies.net/sonypi/>
 28 
 29 Another option to intercept the events is to get them directly through the
 30 input layer.
 31 
 32 This driver supports also some ioctl commands for setting the LCD screen
 33 brightness and querying the batteries charge information (some more
 34 commands may be added in the future).
 35 
 36 This driver can also be used to set the camera controls on Picturebook series
 37 (brightness, contrast etc), and is used by the video4linux driver for the
 38 Motion Eye camera.
 39 
 40 Please note that this driver was created by reverse engineering the Windows
 41 driver and the ACPI BIOS, because Sony doesn't agree to release any programming
 42 specs for its laptops. If someone convinces them to do so, drop me a note.
 43 
 44 Driver options:
 45 ---------------
 46 
 47 Several options can be passed to the sonypi driver using the standard
 48 module argument syntax (<param>=<value> when passing the option to the
 49 module or sonypi.<param>=<value> on the kernel boot line when sonypi is
 50 statically linked into the kernel). Those options are:
 51 
 52         minor:          minor number of the misc device /dev/sonypi,
 53                         default is -1 (automatic allocation, see /proc/misc
 54                         or kernel logs)
 55 
 56         camera:         if you have a PictureBook series Vaio (with the
 57                         integrated MotionEye camera), set this parameter to 1
 58                         in order to let the driver access to the camera
 59 
 60         fnkeyinit:      on some Vaios (C1VE, C1VR etc), the Fn key events don't
 61                         get enabled unless you set this parameter to 1.
 62                         Do not use this option unless it's actually necessary,
 63                         some Vaio models don't deal well with this option.
 64                         This option is available only if the kernel is
 65                         compiled without ACPI support (since it conflicts
 66                         with it and it shouldn't be required anyway if
 67                         ACPI is already enabled).
 68 
 69         verbose:        set to 1 to print unknown events received from the
 70                         sonypi device.
 71                         set to 2 to print all events received from the
 72                         sonypi device.
 73 
 74         compat:         uses some compatibility code for enabling the sonypi
 75                         events. If the driver worked for you in the past
 76                         (prior to version 1.5) and does not work anymore,
 77                         add this option and report to the author.
 78 
 79         mask:           event mask telling the driver what events will be
 80                         reported to the user. This parameter is required for
 81                         some Vaio models where the hardware reuses values
 82                         used in other Vaio models (like the FX series who does
 83                         not have a jogdial but reuses the jogdial events for
 84                         programmable keys events). The default event mask is
 85                         set to 0xffffffff, meaning that all possible events
 86                         will be tried. You can use the following bits to
 87                         construct your own event mask (from
 88                         drivers/char/sonypi.h):
 89                                 SONYPI_JOGGER_MASK              0x0001
 90                                 SONYPI_CAPTURE_MASK             0x0002
 91                                 SONYPI_FNKEY_MASK               0x0004
 92                                 SONYPI_BLUETOOTH_MASK           0x0008
 93                                 SONYPI_PKEY_MASK                0x0010
 94                                 SONYPI_BACK_MASK                0x0020
 95                                 SONYPI_HELP_MASK                0x0040
 96                                 SONYPI_LID_MASK                 0x0080
 97                                 SONYPI_ZOOM_MASK                0x0100
 98                                 SONYPI_THUMBPHRASE_MASK         0x0200
 99                                 SONYPI_MEYE_MASK                0x0400
100                                 SONYPI_MEMORYSTICK_MASK         0x0800
101                                 SONYPI_BATTERY_MASK             0x1000
102                                 SONYPI_WIRELESS_MASK            0x2000
103 
104         useinput:       if set (which is the default) two input devices are
105                         created, one which interprets the jogdial events as
106                         mouse events, the other one which acts like a
107                         keyboard reporting the pressing of the special keys.
108 
109 Module use:
110 -----------
111 
112 In order to automatically load the sonypi module on use, you can put those
113 lines in your /etc/modprobe.conf file:
114 
115         alias char-major-10-250 sonypi
116         options sonypi minor=250
117 
118 This supposes the use of minor 250 for the sonypi device:
119 
120         # mknod /dev/sonypi c 10 250
121 
122 Bugs:
123 -----
124 
125         - several users reported that this driver disables the BIOS-managed
126           Fn-keys which put the laptop in sleeping state, or switch the
127           external monitor on/off. There is no workaround yet, since this
128           driver disables all APM management for those keys, by enabling the
129           ACPI management (and the ACPI core stuff is not complete yet). If
130           you have one of those laptops with working Fn keys and want to
131           continue to use them, don't use this driver.
132 
133         - some users reported that the laptop speed is lower (dhrystone
134           tested) when using the driver with the fnkeyinit parameter. I cannot
135           reproduce it on my laptop and not all users have this problem.
136           This happens because the fnkeyinit parameter enables the ACPI
137           mode (but without additional ACPI control, like processor
138           speed handling etc). Use ACPI instead of APM if it works on your
139           laptop.
140 
141         - sonypi lacks the ability to distinguish between certain key
142           events on some models.
143 
144         - some models with the nvidia card (geforce go 6200 tc) uses a
145           different way to adjust the backlighting of the screen. There
146           is a userspace utility to adjust the brightness on those models,
147           which can be downloaded from
148           http://www.acc.umu.se/~erikw/program/smartdimmer-0.1.tar.bz2
149 
150         - since all development was done by reverse engineering, there is
151           _absolutely no guarantee_ that this driver will not crash your
152           laptop. Permanently.

This page was automatically generated by LXR 0.3.1.  •  Linux is a registered trademark of Linus Torvalds