Драйвер виртуальной мыши, возможные проблемы с X11

Я создал драйвер виртуальной мыши в соответствии с книгой Essential Linux Device Drivers . После того, как я записал координаты echo xy> / sys / ... / координат в узел sysfs, моя программа генерирует пакеты событий через интерфейс событий / dev / input / event5 (я проверил это) , Этот интерфейс событий подключен к GPM gpm -m / dev / input / event5 -t evdev . Но мышь не двигается. Я задал этот вопрос на stackoverflow и выяснил, что может быть проблема с конфигурацией X11. Является ли это возможным? Что может помешать работе моего водителя в этих условиях? Я использую Ubuntu 11.04 на виртуальной коробке. Спасибо.


Может быть, это поможет: в Xorg.0.log я вижу следующее:

[21.022] (II) Не указан драйвер ввода / идентификатор (игнорируется)

[ 272.987] (II) config / udev: Добавление устройства ввода (/ dev / input / event5)

[272.987] (II) Драйвер ввода / идентификатор не указан (игнорируется)

[666.521] (II) config / udev: Добавление устройства ввода (/ dev / input / event5)

[666.521] (II) Драйвер ввода / идентификатор не указан (игнорируется)

1
задан 23 May 2017 в 15:39

1 ответ

Инициализировав поле имени устройства и включив события клавиш (BTN_MOUSE), я мог заставить мышь двигаться. Я все еще пытаюсь найти причину, по которой относительные события не работают, без включения событий с кнопками.

В драйвере устройства ввода (т.е. функция модуля инициализации драйвера виртуальной мыши) я добавил следующие строки кода непосредственно перед регистрацией устройства ввода. Остальной код такой же, как в книге

// Имя устройства

vms_input_dev-> name = "Virtual Mouse";

// Включить относительные события и события Button [ 114]

set_bit (EV_REL, vms_input_dev-> evbit);

set_bit (EV_KEY, vms_input_dev-> evbit);

set_bit (BTN_LEFT, vms_input_dev-> keybit);

set_bit (REL_X, vms_input_dev-> relbit);

set_bit (REL_Y, vms_input_dev-> relbit);

Код работал для меня в Ubuntu 12.04

0
ответ дан 23 May 2017 в 15:39

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

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