Сенсорная панель ELAN не работает на Lenovo IdeaPad с Ubuntu 16.04

Недавно я купил Lenovo IdeaPad (Intel i7 10-го поколения). Я установил на него Ubuntu 16.04, но у меня ни разу не работал тачпад! Кроме того, сначала я попытался установить Ubuntu 18.04 и обновить ядро ​​до последней версии, но не только сенсорная панель не работала, но и графика не работала должным образом, и в конце концов я решил вернуться к версии 16.04.
Я не проверял тачпад в Windows, так как я купил машину DOS и вместо нее поставил ubuntu.
Тачпад - не единственное оборудование на моем ноутбуке, которое не работает в ubuntu, но давайте пока сосредоточимся только на нем.

Немного почитав, я обнаружил, что у многих новых ноутбуков есть проблемы с сенсорными панелями, в основном у ElanTech скрытые. Мне кажется, что моя проблема похожа на эту: Сенсорная панель ELAN не работает на Lenovo Thinkbook с Ubuntu 18.04 .

Кроме того, из информации в этом сообщении: Сенсорная панель Lenovo IdeaPad 330 не работает , похоже, проблема в том, что идентификатор моей сенсорной панели ELAN не указан в ядре, поэтому Ubuntu не распознает это вообще!

О моей системе: uname -srv дает:

Linux 4.15.0-74-generic #83~16.04.1-Ubuntu

xinput -list дает:

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech USB Optical 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)]
    ↳ Integrated Camera: Integrated C           id=8    [slave  keyboard (3)]
    ↳ Ideapad extra buttons                     id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]

Обратите внимание, что тачпад не распознается Ubuntu!
Запустив sudo acpidump | grep -C3 -i elan Мне удалось найти свой идентификатор ELAN, который равен 0633, как показано здесь:

 27AA0: 59 53 0B DC 07 53 52 58 4F 0C 10 00 01 06 01 70  YS...SRXO......p
 27AB0: 47 4E 55 4D 0C 10 00 01 06 49 4E 54 31 70 49 4E  GNUM.....INT1pIN
 27AC0: 55 4D 0C 10 00 01 06 49 4E 54 32 A0 25 93 54 50  UM.....INT2.%.TP
 27AD0: 54 59 01 70 0D 45 4C 41 4E 30 36 33 33 00 5F 48  TY.p.ELAN0633._H
 27AE0: 49 44 70 0A 15 42 41 44 52 70 01 48 49 44 32 A4  IDp..BADRp.HID2.
 27AF0: 00 A0 27 93 54 50 54 59 0A 02 70 0D 53 59 4E 41  ..'.TPTY..p.SYNA
 27B00: 32 42 36 31 00 5F 48 49 44 70 0A 2C 42 41 44 52  2B61._HIDp.,BADR

Очевидно, эта проблема может быть решена путем перекомпиляции ядра с этим кодом идентификатора, включенным в elan_i2c_core .c файл, но я не хочу связываться с ядром!

Есть ли другой способ решить эту проблему?
Если нет, я был бы признателен за помощь в заполнении отчета об ошибке.

1
задан 28 January 2020 в 00:50

1 ответ

Итак, в конце концов мне удалось заставить тачпад работать в Ubuntu 18.04, версия ядра: 5.3.0-46-generic благодаря комментариям к этой ссылке: https://www.reddit.com/r/linuxquestions/comments/f9h0q4/touchpad_issue_lenovo_s14515iil/

В основном, что нужно сделать:

  1. Откройте файл / etc / default / grub для редактирования, например, запустив

     sudoedit / etc / default / grub
    
  2. Добавьте в начало строки GRUB_CMDLINE_LINUX_DEFAULT : "i8042.nopnp = 1 pci = nocrs" так, чтобы оно выглядело так:

     GRUB_CMDLINE_LINUX_DEFAULT = " nocrs "
    

    Если другие параметры заключены между двойными кавычками, их можно оставить.

  3. Сохраните файл и выйдите.

  4. Выполните эту команду, чтобы обновить конфигурацию GRUB:

     sudo update-grub
    
  5. Перезагрузка

2
ответ дан 9 April 2020 в 09:56

Другие вопросы по тегам:

Похожие вопросы: