}sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget./translations/zh_CN/admin-guide/laptops/sonypimodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget./translations/zh_TW/admin-guide/laptops/sonypimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget./translations/it_IT/admin-guide/laptops/sonypimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget./translations/ja_JP/admin-guide/laptops/sonypimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget./translations/ko_KR/admin-guide/laptops/sonypimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget./translations/sp_SP/admin-guide/laptops/sonypimodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhsection)}(hhh](htitle)}(h2Sony Programmable I/O Control Device Driver Readmeh]h2Sony Programmable I/O Control Device Driver Readme}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhH/var/lib/git/docbuild/linux/Documentation/admin-guide/laptops/sonypi.rsthKubh block_quote)}(hXY- Copyright (C) 2001-2004 Stelian Pop - Copyright (C) 2001-2002 Alcôve - Copyright (C) 2001 Michael Ashley - Copyright (C) 2001 Junichi Morita - Copyright (C) 2000 Takaya Kinjo - Copyright (C) 2000 Andrew Tridgell h]h bullet_list)}(hhh](h list_item)}(h8Copyright (C) 2001-2004 Stelian Pop h]h paragraph)}(hhh](h%Copyright (C) 2001-2004 Stelian Pop <}(hhhhhNhNubh reference)}(hstelian@popies.neth]hstelian@popies.net}(hhhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:stelian@popies.netuh1hhhubh>}(hhhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhhubah}(h]h ]h"]h$]h&]uh1hhhubh)}(h0Copyright (C) 2001-2002 Alcôve h]h)}(hhh]h0Copyright (C) 2001-2002 Alcôve }(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhubah}(h]h ]h"]h$]h&]uh1hhhubh)}(h8Copyright (C) 2001 Michael Ashley h]h)}(hj h](h#Copyright (C) 2001 Michael Ashley <}(hjhhhNhNubh)}(hm.ashley@unsw.edu.auh]hm.ashley@unsw.edu.au}(hjhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:m.ashley@unsw.edu.auuh1hhjubh>}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubah}(h]h ]h"]h$]h&]uh1hhhubh)}(h8Copyright (C) 2001 Junichi Morita h]h)}(hj7h](h#Copyright (C) 2001 Junichi Morita <}(hj9hhhNhNubh)}(hjun1m@mars.dti.ne.jph]hjun1m@mars.dti.ne.jp}(hj@hhhNhNubah}(h]h ]h"]h$]h&]refurimailto:jun1m@mars.dti.ne.jpuh1hhj9ubh>}(hj9hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj5ubah}(h]h ]h"]h$]h&]uh1hhhubh)}(h:Copyright (C) 2000 Takaya Kinjo h]h)}(hjbh](h!Copyright (C) 2000 Takaya Kinjo <}(hjdhhhNhNubh)}(ht-kinjo@tc4.so-net.ne.jph]ht-kinjo@tc4.so-net.ne.jp}(hjkhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:t-kinjo@tc4.so-net.ne.jpuh1hhjdubh>}(hjdhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hj`ubah}(h]h ]h"]h$]h&]uh1hhhubh)}(h6Copyright (C) 2000 Andrew Tridgell h]h)}(h5Copyright (C) 2000 Andrew Tridgell h](h$Copyright (C) 2000 Andrew Tridgell <}(hjhhhNhNubh)}(htridge@samba.orgh]htridge@samba.org}(hjhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:tridge@samba.orguh1hhjubh>}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hjubah}(h]h ]h"]h$]h&]uh1hhhubeh}(h]h ]h"]h$]h&]bullet-uh1hhhhKhhubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(hXThis driver enables access to the Sony Programmable I/O Control Device which can be found in many Sony Vaio laptops. Some newer Sony laptops (seems to be limited to new FX series laptops, at least the FX501 and the FX702) lack a sonypi device and are not supported at all by this driver.h]hXThis driver enables access to the Sony Programmable I/O Control Device which can be found in many Sony Vaio laptops. Some newer Sony laptops (seems to be limited to new FX series laptops, at least the FX501 and the FX702) lack a sonypi device and are not supported at all by this driver.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(h_It will give access (through a user space utility) to some events those laptops generate, like:h]h_It will give access (through a user space utility) to some events those laptops generate, like:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h- jogdial events (the small wheel on the side of Vaios) - capture button events (only on Vaio Picturebook series) - Fn keys - bluetooth button (only on C1VR model) - programmable keys, back, help, zoom, thumbphrase buttons, etc. (when available) h]h)}(hhh](h)}(h5jogdial events (the small wheel on the side of Vaios)h]h)}(hjh]h5jogdial events (the small wheel on the side of Vaios)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1hhjubh)}(h7capture button events (only on Vaio Picturebook series)h]h)}(hjh]h7capture button events (only on Vaio Picturebook series)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1hhjubh)}(hFn keysh]h)}(hjh]hFn keys}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1hhjubh)}(h%bluetooth button (only on C1VR model)h]h)}(hj/h]h%bluetooth button (only on C1VR model)}(hj1hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj-ubah}(h]h ]h"]h$]h&]uh1hhjubh)}(hPprogrammable keys, back, help, zoom, thumbphrase buttons, etc. (when available) h]h)}(hOprogrammable keys, back, help, zoom, thumbphrase buttons, etc. (when available)h]hOprogrammable keys, back, help, zoom, thumbphrase buttons, etc. (when available)}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjDubah}(h]h ]h"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]jjuh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(hXThose events (see linux/sonypi.h) can be polled using the character device node /dev/sonypi (major 10, minor auto allocated or specified as a option). A simple daemon which translates the jogdial movements into mouse wheel events can be downloaded at: h](hThose events (see linux/sonypi.h) can be polled using the character device node /dev/sonypi (major 10, minor auto allocated or specified as a option). A simple daemon which translates the jogdial movements into mouse wheel events can be downloaded at: <}(hjhhhhNhNubh)}(hhttp://popies.net/sonypi/h]hhttp://popies.net/sonypi/}(hjphhhNhNubah}(h]h ]h"]h$]h&]refurijruh1hhjhubh>}(hjhhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(hWAnother option to intercept the events is to get them directly through the input layer.h]hWAnother option to intercept the events is to get them directly through the input layer.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(hThis driver supports also some ioctl commands for setting the LCD screen brightness and querying the batteries charge information (some more commands may be added in the future).h]hThis driver supports also some ioctl commands for setting the LCD screen brightness and querying the batteries charge information (some more commands may be added in the future).}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK#hhhhubh)}(hThis driver can also be used to set the camera controls on Picturebook series (brightness, contrast etc), and is used by the video4linux driver for the Motion Eye camera.h]hThis driver can also be used to set the camera controls on Picturebook series (brightness, contrast etc), and is used by the video4linux driver for the Motion Eye camera.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK'hhhhubh)}(hPlease note that this driver was created by reverse engineering the Windows driver and the ACPI BIOS, because Sony doesn't agree to release any programming specs for its laptops. If someone convinces them to do so, drop me a note.h]hPlease note that this driver was created by reverse engineering the Windows driver and the ACPI BIOS, because Sony doesn’t agree to release any programming specs for its laptops. If someone convinces them to do so, drop me a note.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK+hhhhubh)}(hhh](h)}(hDriver options:h]hDriver options:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhK0ubh)}(hX Several options can be passed to the sonypi driver using the standard module argument syntax (= when passing the option to the module or sonypi.= on the kernel boot line when sonypi is statically linked into the kernel). Those options are:h]hX Several options can be passed to the sonypi driver using the standard module argument syntax (= when passing the option to the module or sonypi.= on the kernel boot line when sonypi is statically linked into the kernel). Those options are:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK2hjhhubh)}(hX =============== ======================================================= minor: minor number of the misc device /dev/sonypi, default is -1 (automatic allocation, see /proc/misc or kernel logs) camera: if you have a PictureBook series Vaio (with the integrated MotionEye camera), set this parameter to 1 in order to let the driver access to the camera fnkeyinit: on some Vaios (C1VE, C1VR etc), the Fn key events don't get enabled unless you set this parameter to 1. Do not use this option unless it's actually necessary, some Vaio models don't deal well with this option. This option is available only if the kernel is compiled without ACPI support (since it conflicts with it and it shouldn't be required anyway if ACPI is already enabled). verbose: set to 1 to print unknown events received from the sonypi device. set to 2 to print all events received from the sonypi device. compat: uses some compatibility code for enabling the sonypi events. If the driver worked for you in the past (prior to version 1.5) and does not work anymore, add this option and report to the author. mask: event mask telling the driver what events will be reported to the user. This parameter is required for some Vaio models where the hardware reuses values used in other Vaio models (like the FX series who does not have a jogdial but reuses the jogdial events for programmable keys events). The default event mask is set to 0xffffffff, meaning that all possible events will be tried. You can use the following bits to construct your own event mask (from drivers/char/sonypi.h):: SONYPI_JOGGER_MASK 0x0001 SONYPI_CAPTURE_MASK 0x0002 SONYPI_FNKEY_MASK 0x0004 SONYPI_BLUETOOTH_MASK 0x0008 SONYPI_PKEY_MASK 0x0010 SONYPI_BACK_MASK 0x0020 SONYPI_HELP_MASK 0x0040 SONYPI_LID_MASK 0x0080 SONYPI_ZOOM_MASK 0x0100 SONYPI_THUMBPHRASE_MASK 0x0200 SONYPI_MEYE_MASK 0x0400 SONYPI_MEMORYSTICK_MASK 0x0800 SONYPI_BATTERY_MASK 0x1000 SONYPI_WIRELESS_MASK 0x2000 useinput: if set (which is the default) two input devices are created, one which interprets the jogdial events as mouse events, the other one which acts like a keyboard reporting the pressing of the special keys. =============== ======================================================= h]htable)}(hhh]htgroup)}(hhh](hcolspec)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jhjubj)}(hhh]h}(h]h ]h"]h$]h&]colwidthK7uh1jhjubhtbody)}(hhh](hrow)}(hhh](hentry)}(hhh]h)}(hminor:h]hminor:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK8hjubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(hpminor number of the misc device /dev/sonypi, default is -1 (automatic allocation, see /proc/misc or kernel logs)h]hpminor number of the misc device /dev/sonypi, default is -1 (automatic allocation, see /proc/misc or kernel logs)}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK8hj'ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j)}(hhh]h)}(hcamera:h]hcamera:}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK