사용자 정의 터치스크린 드라이버를 작성했고 을 사용하여 성공적으로 드라이버를 시작 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: 입력 장치 추가 Mitsubishi 직렬 터치 스크린(/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 규칙에서 예를 찾을 수 있습니다.