Arch Linux에서 노트북 터치패드가 갑자기 작동하지 않습니다.

Arch Linux에서 노트북 터치패드가 갑자기 작동하지 않습니다.

약 1년 전 내 노트북에 아치를 설치한 이후로 시냅틱이 작동하도록 노력해 왔지만 결국 완전히 충돌이 발생했습니다. 지난 몇 시간 동안 수행한 작업으로 문제가 해결되지 않았기 때문에 원인을 파악하는 데 도움이 필요합니다.

산출x 입력커서가 움직이지 않는다는 것을 깨달은 직후:

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer            id=4    [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)]
    ↳ Video Bus                             id=7    [slave  keyboard (3)]
    ↳ Video Bus                             id=8    [slave  keyboard (3)]
    ↳ Power Button                          id=9    [slave  keyboard (3)]
    ↳ Sleep Button                          id=10   [slave  keyboard (3)]
    ↳ HD WebCam                             id=11   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard          id=12   [slave  keyboard (3)]
    ↳ Acer WMI hotkeys                      id=13   [slave  keyboard (3)]

이전에 커서가 작동 중이었을 때 여러 번호가 나열되고 "알 수 없음"이라는 항목이 있었습니다. 그게 내 터치패드였다고 확신하는데 지금은 없어졌어요.

콘텐츠Xorg.0.log(제 터치패드와 관련이 있다고 생각되는 부분)

[   198.965] (II) config/udev: Adding input device SYN1B7F:01 06CB:2970 UNKNOWN (/dev/input/event8)
[   198.965] (**) SYN1B7F:01 06CB:2970 UNKNOWN: Applying InputClass "evdev touchpad catchall"
[   198.965] (**) SYN1B7F:01 06CB:2970 UNKNOWN: Applying InputClass "touchpad catchall"
[   198.965] (**) SYN1B7F:01 06CB:2970 UNKNOWN: Applying InputClass "Default clickpad buttons"
[   198.965] (II) LoadModule: "synaptics"
[   198.965] (II) Loading /usr/lib/xorg/modules/input/synaptics_drv.so
[   198.977] (II) Module synaptics: vendor="X.Org Foundation"
[   198.977]    compiled for 1.16.4, module version = 1.8.1
[   198.977]    Module class: X.Org XInput Driver
[   198.977]    ABI class: X.Org XInput driver, version 21.0
[   198.980] (II) systemd-logind: got fd for /dev/input/event8 13:72 fd 21 paused 0
[   198.980] (II) Using input driver 'synaptics' for 'SYN1B7F:01 06CB:2970 UNKNOWN'
[   198.980] (**) SYN1B7F:01 06CB:2970 UNKNOWN: always reports core events
[   198.980] (**) Option "Protocol" "event"
[   198.980] (**) Option "Device" "/dev/input/event8"
[   198.980] (--) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: x-axis range 0 - 1236 (res 12)
[   198.980] (--) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: y-axis range 0 - 898 (res 12)
[   198.980] (II) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: device does not report pressure, will use touch data.
[   198.980] (II) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: device does not report finger width.
[   198.980] (--) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: buttons: left double triple
[   198.980] (--) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: Vendor 0x6cb Product 0x2970
[   198.980] (--) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: invalid pressure range.  defaulting to 0 - 255
[   198.980] (--) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: invalid finger width range.  defaulting to 0 - 15
[   198.980] (**) Option "SHMConfig" "on"
[   198.980] (**) Option "ClickPad" "0"
[   198.980] (**) Option "VertTwoFingerScroll" "on"
[   198.980] (**) Option "TouchpadOff" "0"
[   198.980] (**) Option "PalmDetect" "on"
[   198.980] (--) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: touchpad found
[   198.980] (**) SYN1B7F:01 06CB:2970 UNKNOWN: always reports core events
[   198.980] (**) Option "config_info" "udev:/sys/devices/pci0000:00/INT33C3:00/i2c-0/i2c-SYN1B7F:01/0018:06CB:2970.0001/input/input8/event8"
[   198.980] (II) XINPUT: Adding extended input device "SYN1B7F:01 06CB:2970 UNKNOWN" (type: TOUCHPAD, id 12)
[   198.980] (**) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: (accel) MinSpeed is now constant deceleration 2.5
[   198.980] (**) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: (accel) MaxSpeed is now 1.75
[   198.980] (**) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: (accel) AccelFactor is now 0.131
[   198.981] (**) SYN1B7F:01 06CB:2970 UNKNOWN: (accel) keeping acceleration scheme 1
[   198.981] (**) SYN1B7F:01 06CB:2970 UNKNOWN: (accel) acceleration profile 1
[   198.981] (**) SYN1B7F:01 06CB:2970 UNKNOWN: (accel) acceleration factor: 2.000
[   198.981] (**) SYN1B7F:01 06CB:2970 UNKNOWN: (accel) acceleration threshold: 4
[   198.981] (--) synaptics: SYN1B7F:01 06CB:2970 UNKNOWN: touchpad found
[   198.981] (II) config/udev: Adding input device SYN1B7F:01 06CB:2970 UNKNOWN (/dev/input/mouse0)
[   198.981] (**) SYN1B7F:01 06CB:2970 UNKNOWN: Ignoring device from InputClass "touchpad ignore duplicates"

내가 가장 먼저 한 일은 /etc/X11/xorg.conf.d/를 비활성화하는 것이었습니다.50-synaptics.conf그리고 다시 시작하세요.

지금x 입력산출:

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer            id=4    [slave  pointer  (2)]
⎜   ↳ SYN1B7F:01 06CB:2970 UNKNOWN          id=12   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]

(Virtual Core Keyboard 아래의 섹션은 프로세스 전반에 걸쳐 변경되지 않으므로 생략했습니다.) 이제 이전에 표시된 번호와 UNKNOWN이 다시 나타나지만 커서는 여전히 움직이지 않습니다.

둘러본 후 추가할 것을 제안하는 스레드를 찾았습니다.

i8042.nopnp i8042.nomux=1 i8042.reset

부트로더를 통해 내 커널을 설정합니다. 저는 systemd-boot를 사용하고 이러한 설정을 /boot/loader/entries/arch.conf에 추가합니다. 다시 시작한 후에도 xinput은 여전히 ​​동일하고 커서는 여전히 움직이지 않습니다.

계속해서 검색을 하다가 i2c_hid 드라이버 블랙리스트를 언급하는 또 다른 스레드를 발견했습니다. 한번 해봐야겠다는 생각이 들어서 /etc/modprobe.d에 다음 내용으로 conf 파일을 만들었습니다.

blacklist i2c_hid

다시 시작한 후,x 입력이번에도 다른 출력이 있습니다.

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer            id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad            id=13   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]

xinput이 UNKNOWN 대신 합리적인 것을 출력할 것으로 예상되지만 커서는 여전히 움직이지 않습니다.

이 시점에서 /etc/X11/xorg.conf.d/를 다시 활성화했습니다.50-synaptics.conf그리고 다시 시작하세요.

다시 시작한 후,x 입력터치패드가 표시되지 않는 상태로 돌아가고 커서는 여전히 움직이지 않습니다.

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer            id=4    [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]

50-synaptics.conf에 무슨 버그가 있는 줄 알고 살펴봤지만 자세히 살펴보니 버그를 찾을 수 없었습니다.

Section "InputClass"
    Identifier "touchpad catchall"
    Driver "synaptics"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    Option "TouchpadOff" "0"
    Option "MaxTapTime" "0" #disables tapping
    Option "PalmDetect" "on"
    Option "EmulateTwoFingerMinZ" "40"
#   Option "EmulateTwoFingerMinW "10"
    Option "ClickPad" "0"
    Option "VertTwoFingerScroll" "on"
    Option "TapButton1" "1"
    Option "TapButton2" "2"
    Option "TapButton3" "3"
EndSection

i8042 옵션을 제거하고 i2c_hid를 블랙리스트에 추가하는 등 몇 가지 다른 변경 조합을 시도했지만 시도한 결과 중요한 차이가 없었고 커서가 여전히 움직이지 않습니다.

이 시점에서 나는 이 문제에 관해 글을 쓰기 시작했습니다. 중요한 로그 파일 등을 놓친 경우 알려주시면 게시해 드리겠습니다. 도와주세요. 이것이 나를 미치게 만들기 시작했습니다.

답변1

오늘도 비슷한 문제가 발생했습니다. 방금 50-synaptics.conf삭제 /etc/X11/xorg.conf.d/하고 다시 시작했는데 systemctl stop/start lxdm.service(budgie 데스크탑) 모든 것이 다시 작동하기 시작했습니다.

관련 정보