Sony プログラマブル I/O コントロールデバイスドライバ README ----------------------------------------------------------- Copyright (C) 2001-2003 Stelian Pop Copyright (C) 2001-2002 Alcove Copyright (C) 2001 Michael Ashley Copyright (C) 2001 Junichi Morita Copyright (C) 2000 Takaya Kinjo Copyright (C) 2000 Andrew Tridgell このドライバにより、多くの Sony VAIO ラップトップに見られる Sony プロ グラマブル I/O コントロールデバイスにアクセスすることができます。幾つ かの新しい Sony ラップトップ (新しい FX シリーズのラップトップに限ら れるようです。少なくとも FX501 と FX702) には、sonypi デバイスが存在 しないので、このドライバではまったくサポートされません。 ドライバは、これらのラップトップが生成する下記ような幾つかのイベント へのアクセスを (ユーザ空間のユーティリティを経由させるかたちで) 提供 します。 - ジョグダイアルイベント (VAIO の側面にある小さなホイール) - キャプチャボタンイベント (VAIO PictureBook シリーズのみ) - ファンクションキー - Bluetooth ボタン (C1VR モデルのみ) - プログラマブルキー、バック、ヘルプ、ズーム、サムフレーズ ボタン等 (これらがある場合) これらのイベント (linux/sonypi.h を参照してください) は、キャラクタ デバイスノード /dev/sonypi (メジャー番号 10, マイナー番号は自動割当て させるか、オプションにより指定します) を使って poll することができます。 ジョグダイアルの動きをマウスホイールイベントへと変換するシンプルな デーモンを http://popies.net/sonypi/ からダウンロードすることができ ます。 このドライバはまた、LCD スクリーンの明るさを設定したり、バッテリー 残量情報を問い合わせたりする ioctl コマンドを幾つかサポートします (将来コマンドが追加される可能性もあります)。 このドライバは、PictureBook シリーズのカメラ制御情報 (明るさ、コント ラスト等) をセットするのに使用することもでき、Motion Eye カメラ用の video4linux ドライバで使われています。 このドライバが、Windows ドライバと ACPI BIOS をリバース・エンジニア リングして作成されたことに注意してください。というのも、Sony はラップ トップのプログラミング仕様を何一つ公開することに合意してくれないから です。もしも誰かが公開するように Sony を説得するのならば、私に連絡を ください。 ドライバオプション ------------------ モジュールとしてドライバがコンパイルされているならば /etc/modprobe.conf ファイルにオプションを加えるか、または、次のカーネルコマンドラインを (ブートローダに) 与えることにより、sonypi ドライバに幾つかのオプション を渡すことができます。 sonypi=minor[,verbose[,fnkeyinit[,camera[,compat[,mask[,useinput]]]]]] minor: misc デバイス /dev/sonypi のマイナー番号。 デフォルトは -1 (自動割当て。/proc/misc またはカーネルログを見てください). camera: PictureBook シリーズの VAIO (Motion Eye カメラ内蔵) の場合、ドライバからカメラに アクセスさせるため、このパラメータに 1 を 設定してください。 fnkeyinit: 幾つかの VAIO (C1VE, C1VR 等) では、このパラ メータを 1 にセットしないと、ファンクション キーイベントが有効になりません。実際に必要で ある場合を除き、このオプションは使わないで ください。VAIO モデルによっては、このオプ ションをうまく扱えません。このオプションは、 カーネルが ACPI サポートを外してコンパイル されている場合のみ使用できます (というのは、 ACPI と競合してしまうからであり、また、既に ACPI が有効化されている場合は、いずれにしても 必要とされるものではありません)。 verbose: 1 にセットすると、sonypi デバイスから受信した 未知のイベントを表示します。 2 にセットすると、sonypi デバイスから受信した 全てのイベントを表示します。 compat: sonypi イベントを有効にする互換コードを使用 します。以前 (バージョン 1.5 より前) はドラ イバが機能していたのに、もう動かなくなって しまったという場合、このオプションを追加し、 著者に報告してください。 mask: ユーザにどのイベントを報告するかをドライバに 指示するイベントマスクです。このパラメータは、 他の VAIO モデルで使用されていた値をハード ウェアが再利用している VAIO モデルで必要と なります (ジョグダイアルは無いけれども、プロ グラマブルキーイベント用にジョグダイアルイベ ントを再利用している FX シリーズなど)。デフォ ルトのイベントマスクは 0xffffffff にセットされ、 これは、可能性のある全てのイベントが試される ことを意味します。独自のイベントマスクを構築 する際、次のビットを使用できます (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 useinput: セットされている場合 (これはデフォルトです)、 ジョグダイアルイベントはマウスホイールイベ ントとして入力サブシステムに転送されます。 モジュールの使用 ---------------- 使用時に sonypi モジュールを自動的にロードするには、次の行を /etc/ modprobe.conf ファイルに加えます。 alias char-major-10-250 sonypi options sonypi minor=250 ここでは、sonypi デバイスにマイナー番号 250 を使用すると仮定しています。 # mknod /dev/sonypi c 10 250 バグ ---- - このドライバが、ラップトップをスリープ状態にしたり、外部 モニタのオンオフを切り替えたりする、BIOS が管理するファンク ションキーを無効にしてしまうと、複数のユーザが報告してきて います。回避策はまだありません。というのは、このドライバは、 ACPI マネジメントを有効にすることにより、これらのキー用の 全ての APM マネジメントを無効にするからです (ACPI のコア 部分はまだ完成していません)。ファンクションキーが動作する ラップトップをお持ちで、それらのキーを使い続けたいならば、 このドライバは使用しないでください。 - 何名かのユーザは、fnkeyinit パラメータを指定してドライバを 使うとラップトップが遅くなる (dhrystone でテスト) と報告して くれています。私はこの問題を自分のラップトップで再現させる ことができません。また、全てのユーザがこの問題を抱えている わけではありません。この問題は、fnkeyinit パラメータが ACPI モードを有効にすることにより (ただし、プロセッサ速度操作の ような追加の ACPI 制御なしで)、発生します。お手元のラップ トップで機能するようなら、APM のかわりに ACPI を使用して ください。 - 全ての開発がリバース・エンジニアリングによりおこなわれたので、 このドライバがあなたのラップトップをクラッシュさせないという 保証は、まったくありません。永久に。 ------------------------------------------------------------ 翻訳団体: JF プロジェクト < http://www.linux.or.jp/JF/ > 翻訳日: 2004/05/23 翻訳者: 川崎 貴彦 校正: Seiji Kaneko