The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/Documentation/sonypi.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 Sony Programmable I/O Control Device Driver Readme
    2 --------------------------------------------------
    3         Copyright (C) 2001-2003 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 (all ?) Sony Vaio laptops.
   12 
   13 It will give access (through a user space utility) to some events those laptops
   14 generate, like:
   15         - jogdial events (the small wheel on the side of Vaios)
   16         - capture button events (only on Vaio Picturebook series)
   17         - Fn keys
   18         - bluetooth button (only on C1VR model)
   19         - programmable keys, back, help, zoom, thumbphrase buttons, etc.
   20           (when available)
   21 
   22 Those events (see linux/sonypi.h) can be polled using the character device node
   23 /dev/sonypi (major 10, minor auto allocated or specified as a option).
   24 
   25 A simple daemon which translates the jogdial movements into mouse wheel events
   26 can be downloaded at: <http://popies.net/sonypi/>
   27 
   28 This driver supports also some ioctl commands for setting the LCD screen
   29 brightness and querying the batteries charge information (some more 
   30 commands may be added in the future).
   31 
   32 This driver can also be used to set the camera controls on Picturebook series
   33 (brightness, contrast etc), and is used by the video4linux driver for the 
   34 Motion Eye camera.
   35 
   36 Please note that this driver was created by reverse engineering the Windows
   37 driver and the ACPI BIOS, because Sony doesn't agree to release any programming
   38 specs for its laptops. If someone convinces them to do so, drop me a note.
   39 
   40 Driver options:
   41 ---------------
   42 
   43 Several options can be passed to the sonypi driver, either by adding them
   44 to /etc/modules.conf file, when the driver is compiled as a module or by
   45 adding the following to the kernel command line (in your bootloader):
   46 
   47         sonypi=minor[,verbose[,fnkeyinit[,camera[,compat[,mask[,useinput]]]]]]
   48 
   49 where:
   50 
   51         minor:          minor number of the misc device /dev/sonypi, 
   52                         default is -1 (automatic allocation, see /proc/misc
   53                         or kernel logs)
   54 
   55         camera:         if you have a PictureBook series Vaio (with the
   56                         integrated MotionEye camera), set this parameter to 1
   57                         in order to let the driver access to the camera
   58 
   59         fnkeyinit:      on some Vaios (C1VE, C1VR etc), the Fn key events don't
   60                         get enabled unless you set this parameter to 1.
   61                         Do not use this option unless it's actually necessary,
   62                         some Vaio models don't deal well with this option.
   63                         This option is available only if the kernel is 
   64                         compiled without ACPI support (since it conflicts
   65                         with it and it shouldn't be required anyway if 
   66                         ACPI is already enabled).
   67 
   68         verbose:        set to 1 to print unknown events received from the 
   69                         sonypi device.
   70                         set to 2 to print all events received from the 
   71                         sonypi device.
   72 
   73         compat:         uses some compatibility code for enabling the sonypi
   74                         events. If the driver worked for you in the past
   75                         (prior to version 1.5) and does not work anymore,
   76                         add this option and report to the author.
   77 
   78         mask:           event mask telling the driver what events will be
   79                         reported to the user. This parameter is required for some 
   80                         Vaio models where the hardware reuses values used in 
   81                         other Vaio models (like the FX series who does not
   82                         have a jogdial but reuses the jogdial events for
   83                         programmable keys events). The default event mask is
   84                         set to 0xffffffff, meaning that all possible events will be
   85                         tried. You can use the following bits to construct
   86                         your own event mask (from drivers/char/sonypi.h):
   87                                 SONYPI_JOGGER_MASK              0x0001
   88                                 SONYPI_CAPTURE_MASK             0x0002
   89                                 SONYPI_FNKEY_MASK               0x0004
   90                                 SONYPI_BLUETOOTH_MASK           0x0008
   91                                 SONYPI_PKEY_MASK                0x0010
   92                                 SONYPI_BACK_MASK                0x0020
   93                                 SONYPI_HELP_MASK                0x0040
   94                                 SONYPI_LID_MASK                 0x0080
   95                                 SONYPI_ZOOM_MASK                0x0100
   96                                 SONYPI_THUMBPHRASE_MASK         0x0200
   97                                 SONYPI_MEYE_MASK                0x0400
   98                                 SONYPI_MEMORYSTICK_MASK         0x0800
   99 
  100         useinput:       if set (which is the default) jogdial events are
  101                         forwarded to the input subsystem as mouse wheel
  102                         events.
  103                         
  104 
  105 Module use:
  106 -----------
  107 
  108 In order to automatically load the sonypi module on use, you can put those
  109 lines in your /etc/modules.conf file:
  110 
  111         alias char-major-10-250 sonypi
  112         options sonypi minor=250
  113 
  114 This supposes the use of minor 250 for the sonypi device:
  115 
  116         # mknod /dev/sonypi c 10 250
  117 
  118 Bugs:
  119 -----
  120 
  121         - several users reported that this driver disables the BIOS-managed
  122           Fn-keys which put the laptop in sleeping state, or switch the
  123           external monitor on/off. There is no workaround yet, since this
  124           driver disables all APM management for those keys, by enabling the
  125           ACPI management (and the ACPI core stuff is not complete yet). If
  126           you have one of those laptops with working Fn keys and want to 
  127           continue to use them, don't use this driver.
  128 
  129         - some users reported that the laptop speed is lower (dhrystone
  130           tested) when using the driver with the fnkeyinit parameter. I cannot
  131           reproduce it on my laptop and not all users have this problem.
  132           This happens because the fnkeyinit parameter enables the ACPI 
  133           mode (but without additional ACPI control, like processor 
  134           speed handling etc). Use ACPI instead of APM if it works on your
  135           laptop.
  136         
  137         - since all development was done by reverse engineering, there is
  138           _absolutely no guarantee_ that this driver will not crash your
  139           laptop. Permanently.

Cache object: b7e4f70bf1dbc27634f7ecb494171d87


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.