カスタムタッチスクリーンドライバを作成し、を使用してドライバを正常に起動し、タッチinputattach
スクリーンデータを表示できましたが、printk
マウスはまだ動いていません。私の仮定は、X11でも設定する必要があるということです。
レポートはXorg.0.log
次のとおりです。
[ 38.639] (II) config/udev: Adding input device Mitsubishi Serial TouchScreen (/dev/input/event4)
[ 38.639] (II) No input driver specified, ignoring this device.
[ 38.639] (II) This device may have been added with another device file.
私のxorg設定ファイルは次のとおりです。
Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchDevicePath "/dev/input/event*"
MatchIsTouchscreen "on"
Driver "evdev"
EndSection
私のドライバの名前は「mitsubishi」ですが、xorgは私のドライバのイベント出力を読み取るために入力ドライバを探しており、/dev/input/eventパスにのみ興味があるとします。
xinputは私のタッチスクリーンを除いて以下を表示します。
x入力
Virtual core pointer id=2 [master pointer (3)]
Virtual core XTEST pointer id=4 [slave pointer (2)]
ImPS/2 Generic Wheel Mouse id=9 [slave pointer (2)]
Virtual core keyboard id=3 [master keyboard (2)]
Virtual core XTEST keyboard id=5 [slave keyboard (3)]
Power Button id=6 [slave keyboard (3)]
Power Button id=7 [slave keyboard (3)]
AT Translated Set 2 keyboard id=8 [slave keyboard (3)]
現在のシステム状態では、をtail -f /var/log/kern.log
使用してタッチスクリーンデータを表示できますが、UIでは何も応答しません。 xorgファイルの処理方法やマウスの移動にxorgが必要かどうかの提案はありますか?
答え1
私はそれを考えた!私の "conf"ファイルが間違っています。
confファイルを次の設定に変更しましたが、タッチスクリーンを見つけてマウスで正しく処理しました。 「MatchProduct」と「MatchProduct」は同じ文字列です。
[38.639] (II) config/udev: 入力デバイスを追加 三菱シリアルタッチスクリーン(/dev/input/event4)
:
Section "InputClass"
Identifier "Mitsubishi TS Class"
MatchProduct "Mitsubishi Serial TouchScreen"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
答え2
これは、MatchIsTouchscreen
udevルールによって割り当てられた環境変数の中核です。
走れば
# udevadm info -q all -n /dev/input/event4
リストに行が含まれていますかE: ID_INPUT_TOUCHSCREEN=1
?そうでない場合は、udevルールを追加してドライバが処理するデバイスをタッチスクリーンプロパティとして表示する必要があるかもしれません。既存のudevルールで例を見つけることができます。