MSI 노트북 터치패드가 Linux에서 작동을 멈춤

MSI 노트북 터치패드가 Linux에서 작동을 멈춤

저는 7월에 구입한 MSI Prestige 14H B12를 가지고 있습니다. 로그인 화면에서 잠시 후 터치패드가 작동하지 않는 문제가 있습니다. Linux를 처음 설치한 이후 상황은 동일했지만 시나리오는 달랐습니다. 나에게도 Windows가 있고 터치패드는 모든 경우에 이 OS에서 잘 작동합니다.

처음 설치한 것은 KDE가 포함된 OpenSUSE Thumbleweed였으며, 인증 속도에 따라 로그인 화면이나 데스크탑에서 부팅 후 몇 초 후에 터치패드가 작동을 멈췄습니다. 이 경우 노트북이 AC 전원에 연결되어 있으면 터치패드가 작동합니다. 업데이트로 인해 GPU 드라이버가 중단되고 궁극적으로 커널과 설치가 중단된 후 터치패드 문제를 해결하기 위해 다른 운영 체제를 테스트하기 시작했습니다. 터치패드가 전혀 작동하지 않거나 배터리로만 작동하는데 어떤 식으로든 손상되는 다양한 상황을 발견했습니다. 그래서 저는 Mint로 돌아가서 제가 가지고 있던 부팅 프로그램인 Mint 20을 설치하기로 결정했습니다. 이번 설치에서는 터치패드가 제대로 작동했지만 Mint 21로 업그레이드한 후 Thrumbleweed에서와 마찬가지로 부팅 후 작동이 멈췄지만 이번에는 AC에서도 작동하지 않았습니다. 그래서 저는 OpenSUSE로 돌아가서(이번에는 이전 사건을 피하기 위해 Leap을 사용했습니다) Windows 파티션을 지워야 할 때까지 거기에 머물렀고, 다시 설치하는 동안 실수로 OpenSUSE 부팅 파티션을 지우고 덮어쓴 후에야 발견했습니다.

그렇게 보이지는 않는다는 걸 알지만 간단히 말해서 Google, 포럼에서 검색할 때마다(OpenSUSE 포럼에 질문도 올렸는데 토론을 찾을 수 있습니다)여기) 그러나 내가 찾은 것은 문제를 해결했습니다. 나는 MSI에 편지를 보냈고 그들의 유일한 대답은 Windows에서만 제품을 테스트하겠다는 것이었습니다. 그래서 이번에는 Mint 21.2 Cinammon Edge를 설치했고(WiFi 드라이버에 문제가 있었지만 커널 6.1에서는 잘 작동했기 때문에) 이전 Mint 시도와 매우 유사한 시나리오를 발견했습니다. 새로 설치한 후 터치패드는 모든 상황에서 잘 작동했지만 적절하게 업그레이드하자 이전과 같이 종료되었습니다. 부팅 후 몇 초 후에 AC 또는 배터리 사용 여부에 관계없이 작동이 멈췄습니다. 이것이 제가 보관한 설치이므로 이 짜증나는 터치패드 문제를 다시 해결하려고 합니다.

다음은 내 inxi -Fxz 출력입니다(Linux Mint 포럼에 게시하려면 필요하지만 나중에 관련성을 찾을 수 있습니다).

System:
  Kernel: 6.2.0-36-generic x86_64 bits: 64 compiler: N/A
    Desktop: Cinnamon 5.8.4 Distro: Linux Mint 21.2 Victoria
    base: Ubuntu 22.04 jammy
Machine:
  Type: Laptop System: Micro-Star product: Prestige 14H B12UCX v: REV:1.0
    serial: <superuser required>
  Mobo: Micro-Star model: MS-14F1 v: REV:1.0 serial: <superuser required>
    UEFI: American Megatrends LLC. v: E14F1IMS.118 date: 04/28/2023
Battery:
  ID-1: BAT1 charge: 56.4 Wh (84.2%) condition: 67.0/70.0 Wh (95.7%)
    volts: 16.3 min: 15.4 model: MSI BIF0_9 status: Discharging
CPU:
  Info: 10-core (6-mt/4-st) model: 12th Gen Intel Core i7-12650H bits: 64
    type: MST AMCP arch: Alder Lake rev: 3 cache: L1: 864 KiB L2: 9.5 MiB
    L3: 24 MiB
  Speed (MHz): avg: 1860 high: 2700 min/max: 400/4600:4700:3500 cores:
    1: 450 2: 2700 3: 491 4: 2700 5: 473 6: 2700 7: 495 8: 2700 9: 2700
    10: 2700 11: 460 12: 2700 13: 400 14: 2700 15: 2700 16: 2700
    bogomips: 86016
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
  Device-1: Intel Alder Lake-P GT1 [UHD Graphics] vendor: Micro-Star MSI
    driver: i915 v: kernel bus-ID: 00:02.0
  Device-2: NVIDIA GA107M [GeForce RTX 2050] vendor: Micro-Star MSI
    driver: nouveau v: kernel bus-ID: 01:00.0
  Display: x11 server: X.Org v: 1.21.1.4 driver: X: loaded: modesetting
    unloaded: fbdev,vesa gpu: i915 resolution: 3072x1920~60Hz
  OpenGL: renderer: Mesa Intel Graphics (ADL GT2)
    v: 4.6 Mesa 23.0.4-0ubuntu1~22.04.1 direct render: Yes
Audio:
  Device-1: Intel Alder Lake PCH-P High Definition Audio
    vendor: Micro-Star MSI driver: sof-audio-pci-intel-tgl bus-ID: 00:1f.3
  Sound Server-1: ALSA v: k6.2.0-36-generic running: yes
  Sound Server-2: PulseAudio v: 15.99.1 running: yes
  Sound Server-3: PipeWire v: 0.3.48 running: yes
Network:
  Device-1: Intel Alder Lake-P PCH CNVi WiFi vendor: Rivet Networks
    driver: iwlwifi v: kernel bus-ID: 00:14.3
  IF: wlo1 state: down mac: <filter>
Bluetooth:
  Device-1: Intel type: USB driver: btusb v: 0.8 bus-ID: 3-10:3
  Report: hciconfig ID: hci0 rfk-id: 0 state: up address: <filter>
Drives:
  Local Storage: total: 953.87 GiB used: 258.87 GiB (27.1%)
  ID-1: /dev/nvme0n1 vendor: Micron model: 3400 MTFDKBA1T0TFH
    size: 953.87 GiB temp: 32.9 C
Partition:
  ID-1: / size: 124.94 GiB used: 17.75 GiB (14.2%) fs: ext4
    dev: /dev/nvme0n1p6
  ID-2: /boot/efi size: 96 MiB used: 32.3 MiB (33.6%) fs: vfat
    dev: /dev/nvme0n1p2
Swap:
  ID-1: swap-1 type: file size: 2 GiB used: 0 KiB (0.0%) file: /swapfile
Sensors:
  System Temperatures: cpu: 43.0 C mobo: N/A
  Fan Speeds (RPM): N/A
Info:
  Processes: 345 Uptime: 10m Memory: 31.04 GiB used: 1.67 GiB (5.4%)
  Init: systemd runlevel: 5 Compilers: gcc: 11.4.0 Packages: 2317 Shell: Bash
  v: 5.1.16 inxi: 3.3.13

이제 데이터를 가져오는 동안 매우 이상한 일이 발생합니다. inxi -Fxz(inxi뿐만 아니라 매개변수 사용)를 실행할 때 터치패드가 몇 초 동안 다시 작동하기 시작하고(배터리 또는 AC에서) 다시 중지하는 것은 다음과 다소 유사합니다. 시작할 때 무슨 일이 일어나는지. 나는 약간의 실험을 수행하고 6초마다 inxi -Fxz를 실행하는 bash 스크립트를 설정하여 부팅 시 터치패드가 작동을 멈춘 다음 다시 시작하도록 했습니다. 3초마다 터치패드가 중지되지 않도록 설정하면 중지되지 않습니다. 다시 깨우기 위해 inxi가 무엇을 호출하는지 모릅니다. 분명히 이것은 매우 실현 가능한 해결책이나 최악의 아이디어는 아니지만 단지 연구를 위한 것입니다. 나는 포럼과 커뮤니티에서 무슨 일이 일어났는지에 대한 다양한 이론을 발견했습니다(모두 이 노트북이나 Linux의 유사한 모델에 관한 것입니다).

  1. 터치패드는 전압 변화에 민감합니다. 다른 블로그에서는 NVIDIA가 Prestige를 사용하지 않으면 터치패드가 작동을 멈추고 GPU를 사용할 때 재부팅된다고 말하는 사람들을 발견했습니다. 그러나 제 경우에는 그렇지 않은 것 같습니다(적어도 "감도"가 균일하지 않음) 어떤 경우에는 전혀 작동하지 않습니다
  2. 시스템 설정 또는 데스크톱 환경 문제: 내 OpenSUSE 포럼 스레드의 누군가가 로그인 화면에서 발생하고 설정에서 터치패드를 활성화할 때마다 이런 일이 발생하지 않는다고 말했습니다. 다양한 데스크톱 환경, 배포판 및 주요 배포판에서 발생합니다.
  3. TLP가 드라이버나 터치패드를 방해하는 것과 같은 것: 누군가가 이렇게 말했기 때문입니다.여기이 문제는 TLP에서 PCIe 제어를 비활성화하여 해결되었지만 이전 배포판에 TLP가 사전 설치되어 있지 않은 한 TLP를 사용한 적이 없으며 현재 Mint에도 TLP가 없습니다. 새 배포판을 설치한 이후에도 문제가 지속되었습니다.
  4. BIOS 수준 문제: 다음과 같은 것을 발견했습니다.Ask Ubuntu의 스레드몇 년 전부터 acpi=on 플래그로 부팅하면 문제가 해결된다고 하는데, 단계를 따랐을 때 올바르게 수행하는 방법을 모르겠습니다. Mint가 부팅되지 않습니다.
  5. 누락된 드라이버 또는 특정 드라이버 문제: 업데이트 시 기본적으로 작동하는 기능이 중단되는 것과 같이 업그레이드하거나 inxi를 사용한 후 Mint의 동작으로 인해 문제가 발생하는 것 같습니다. 또한 포럼 답변의 누군가(지금은 링크를 찾을 수 없음)가 드라이버가 작동하지 않고 대안을 사용했다고 말했습니다(게시물을 다시 찾지 못했기 때문에 이름을 지정할 수 없습니다. 죄송합니다). 터치패드 작동 여부에 대한 inxi 및 해당 매개변수의 영향을 이해할 수는 없습니다.

제발, 저는 지난 4개월 동안 이 문제에 직면해 있었고 그것이 나를 미치게 만들었습니다.

답변1

나는 최근에 같은 노트북을 구입했고 같은 문제가 있었습니다. 올바른 방향을 알려줄 사람을 찾았지만 그것이 어디에 있는지 찾을 수 없습니다.

PCIe 전원 관리 구성으로 인해 터치패드(적어도 제 경우에는)가 비활성화되었습니다. Nvidia GPU에서는 꺼져 있습니다.

동일한 상황에 직면한 경우 부팅 후 바로 설치를 시도해 볼 수 있습니다 powertop. 루트 권한으로 터미널에서 실행하고 Runtime PM for I2C Adapter i2c-14 (NVIDIA i2c adapter 1 at 1:00.0)리소스 Bad섹션 으로 이동하세요 Tunables. 내 경우에는 PM도 꺼집니다 Runtime PM for PCI Device NVIDIA Corporation GA107M [GeForce RTX 2050].

이렇게 하면 터치패드가 활성 상태인 동안 장치의 전원이 켜진 상태로 유지됩니다(따라서 더 많은 배터리를 소모하지만 내 경험상 눈에 띄지는 않습니다).

보다 영구적인 해결책을 얻기 위해 Arch Wiki(링크)의 가이드를 따랐습니다.여기).

파일을 /etc/udev/rules.d/pci_pm.rules다음과 같이 변경했습니다.

# blacklist for pci runtime power management
SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{device}=="0x25a9", ATTR{power/control}="on", GOTO="pci_pm_end"

SUBSYSTEM=="pci", ATTR{power/control}="auto"
LABEL="pci_pm_end"

나와 일치하지 않는 경우 공급업체 및 장치 ID를 확인해야 합니다.

도움이 되었기를 바랍니다!

관련 정보