Замена трекпада ALPS GlidePoint
У меня есть ThinkPad 440p, и я заменил клавиатуру и трекпад на дешевые китайские устройства. Ноутбук по-прежнему работает правильно в Windows 10, но я не могу найти какую-либо комбинацию ОС Linux и ядра, где работает трекпад.
В настоящее время я использую Ubuntu 18.04 с 5.0.0-999-generic, я пробовал несколько разных ядер.
Я знаю, что это не аппаратная проблема, поскольку она работает правильно под Windows. Я предполагаю, что модуль ядра psmouse неправильно идентифицирует этот трекпоинт.
Проблема в том, что трекпад распознается как глиссадная точка PS2 ALPS, но аппаратные кнопки не работают, а прикосновение к пэду создает случайные кнопки и XY-ответы.
dmesg показывает следующее при загрузке модуля psmouse
вход: PS/2 ALPS GlidePoint as / устройства / платформа / i8042/serio1/ вход /input257
Он отображается один раз в /dev/input как:
I: Шина =0011 Поставщик =0002 Продукт =0001 Версия =0700 N: Имя ="PS/2 ALPS GlidePoint" P: Phys=isa0060/serio1/input0 S: Sysfs=/devices/platform/i8042/serio1/input/input257 U: Uniq= H: Обработчики = событие mouse15 B: PROP = 1 B: EV = 7 B: KEY = 70000 0 0 0 0 B: REL = 3
xinput --list
Id Идентификатор указателя виртуального ядра =2 [главный указатель (3)] ⎜ id Идентификатор указателя виртуального ядра XTEST =4 [указатель подчиненного устройства (2)] ⎜ ↳ Оптический идентификатор Microsoft Microsoft IntelliMouse® =9 [указатель подчиненного устройства (2)] ⎜ ↳ PS/2 ALPS GlidePoint id=12 [ведомый указатель (2)]
xinput --list-props "PS/2 ALPS GlidePoint"
Устройство "PS/2 ALPS GlidePoint": устройство включено (149): 1 матрица преобразования координат (151): 1,000000, 0,000000, 0,000000, 0,000000, 1,000000, 0,000000, 0,000000, 0,000000, 1,000000 libinput Естественная прокрутка включена (286): 0 libinput Естественная прокрутка включена По умолчанию (287): 0 Доступны методы прокрутки libinput (288): 0, 0, 1 Метод прокрутки libinput включен (289): 0, 0, 1 Метод прокрутки libinput включен По умолчанию (290): 0, 0, 1 libinput Кнопка прокрутки кнопки (291): 2 кнопки прокрутки libinput По умолчанию (292): 2 включена средняя эмуляция libinput (293): 0 Средняя эмуляция libinput включена по умолчанию (294): 0 Скорость разгона libinput (295): -0,841727 Скорость разгона libinput по умолчанию (296): 0,000000 Доступные профили ускорения libinput (297): 1, 1 Включенный профиль ускорения libinput (298): 1, 0 Включенный профиль ускорения libinput По умолчанию (299): 1, 0 Включение левой библиотеки libinput (300): 0 Оставлено libinput По умолчанию включено (301): 0 Доступные режимы отправки событий libinput (271): 1, 0 Режим отправки событий libinput Ena bled (272): 0, 0 libinput Режим отправки событий включен По умолчанию (273): 0, 0 Узел устройства (274): "/dev/input/event5" Идентификатор устройства (275): 2, 1 libinput Кнопки блокировки перетаскивания (302): включена горизонтальная прокрутка libinput (303): 1
Наконец, небольшой фрагмент из вывода sudo evtest показан ниже. Нажатие 3-х физических кнопок в верхней части трекпада ничего не делает, и только прикосновение к трекпаду и перемещение моего пальца на 2 мм приведут к выводу ниже.
Событие: время 1552818278.903519, -------------- SYN_REPORT ------------ Событие: время 1552818278.915519, тип 2 (EV_REL), код 0 (REL_X), значение 24 Событие: время 1552818278.915519, тип 2 (EV_REL), код 1 (REL_Y),
значение -249 Событие: время 1552818278.915519, -------------- SYN_REPORT
------------ Событие: время 1552818278.927525, тип 1 (EV_KEY), код 272 (BTN_LEFT), значение 0 Событие: время 1552818278.927525, тип 2 (EV_REL),
код 0 (REL_X), значение 56 Событие: время 1552818278.927525, тип 2
(EV_REL), код 1 (REL_Y), значение -248 Событие: время 1552818278.927525,
-------------- SYN_REPORT ------------ Событие: время 1552818278.939477, тип 1 (EV_KEY), код 274 (BTN_MIDDLE), значение 1 Событие: время 1552818278.939477, тип 1 (EV_KEY), код 273 (BTN_RIGHT), значение 1 Событие: время 1552818278.939477, тип 2 (EV_REL), код 0 (REL_X), значение -200 Событие: время 1552818278.939477, тип 2 (EV_REL), код 1 (REL_Y)), значение 8
Теперь я понимаю, что это откровенный ноутбук, так как на клавиатуре больше нет трекпойнта, а трекпад изменился с синаптических на ALP.
Если кто-нибудь знает, как я могу заставить работать трекпад, я с удовольствием куплю тебе пиво!