Менеджер ввода совместимых устройств для Photon
devi-hirun [-bdglPr] [-v[v]...] протокол [опции_протокола...] [протокол [опции_протокола...]]... [устройство [опции_устройства...]]... [фильтр [опции_фильтра...]]...
- -b
- Не использовать комбинацию клавиш
Ctrl - Alt - Shift - Backspace
для выхода из Photon (по умолчанию использовать эту комбинацию разрешено).
- -d устройство
- Устройство (по умолчанию –
/dev/photon
или $PHOTON
).
- -g группа_ввода
- Группа ввода (по умолчанию –
1
).
- -l
- Вывести список внутренних модулей. Список модулей выводится в следующем формате (класс принимает значение D (устройство), P (протокол) или F (фильтр)):
имя модуля | дата компиляции | версия | класс
- -P
- Отключить интерфейс Photon. По умолчанию интерфейс Photon запускается.
- -r
- Запустить интерфейс менеджера ресурсов (при условии, что Photon не используется).
- -v[v]...
- Вывести расширенную информацию. Чем больше символов v, тем более подробная информация выводится.
Общий формат:
протокол [опции_протокола...]
Модули протоколов и соответствующие опции:
- kbd
- Скан-коды клавиатуры (подключение к основной клавиатуре). Поддерживаемые устройства: fd, kbddev. Опции:
- -f имя_файла
- Создать указанный файл и выполнить сбор всех данных, передаваемых на уровень фильтра (только в целях отладки).
- -k скорость[,задержка]
- Скорость срабатывания клавиатуры (Гц), задержка (мс). Значения по умолчанию – 30 Гц, 500 мс.
 | Опция -k действует только при использовании модуля устройств kbddev. |
- -p имя_файла
- Создать и открыть указанный файл FIFO и продублировать все данные, передаваемые на уровень фильтра (только в целях отладки).
- -R
- Не выполнять сброс устройства при сбросе протокола.
- -r
- Выполнить сброс клавиатуры (по умолчанию).
- -s
- Драйвер устройства должен предоставлять действительные символы.
msoftСовместимый с Microsoft протокол мыши (устройство с последовательным интерфейсом). Поддерживаемые устройства: fd, uart. Опции:
- -3
- 3-кнопочная мышь Microsoft.
- -b бод
- Скорость передачи в бодах для устройства с последовательным интерфейсом (значение по умолчанию –
1200
).
- -i
- Мышь Intellimouse с колесом прокрутки.
- -R
- Не выполнять сброс мыши (по умолчанию сброс мыши выполняется).
msysПротокол мыши Mouse Systems (используется в продуктах Logitech). Поддерживаемые устройства: fd, uart. Опции:
- -b бод
- Скорость передачи в бодах для устройства с последовательным интерфейсом (значение по умолчанию –
1200
).
- -R
- Не выполнять сброс мыши (по умолчанию сброс выполняется).
ps2Протокол мыши IBM PS/2. Поддерживаемые устройства: mousedev. Опции отсутствуют.
 | Для всех устройств с последовательным интерфейсом используется следующий формат: 8 битов данных, 1 стоповый бит, отсутствие контроля четности. |
- fd
- Открывает устройство с помощью функции open(). Опции:
- -d устройство
- Устройство, на котором открывается fd (по умолчанию –
/dev/ser1
).
- -P
- Приоритет обработки события ввода.
- -s
- Входной интерфейс является последовательным (модулю разрешено использовать команды devctl(), связанные с последовательным портом).
kbddevКлавиатура PS2. Опции:
- -d устройство
- Прерывание (IRQ) (значение по умолчанию –
1
).
- -f имя_файла
- Создать указанный файл и выполнить сбор всех данных, передаваемых на уровень протокола (только в целях отладки).
- -P
- Приоритет обработки события, связанного с клавиатурой.
- -p порт_ввода-вывода,смещение
- Порт (значение по умолчанию –
0x60
) и смещение адреса порта состояния (значение по умолчанию – 4
).
- -r
- Выполнить сброс порта клавиатуры. Эту опцию целесообразно использовать в случае работы с аппаратными средствами без BIOS (например, PowerPC, MIPS).
mousedevМышь PS2. Опции:
- -f имя_файла
- Создать указанный файл и выполнить сбор всех данных, передаваемых на уровень протокола (только в целях отладки).
- -i номер_прерывания
- Прерывание (IRQ) (значение по умолчанию –
12
).
- -P
- Приоритет обработки события, связанного с мышью.
- -p порт_ввода-вывода,смещение
- Порт (значение по умолчанию –
0x60
) и смещение адреса порта состояния (значение по умолчанию – 4
).
- -r
- Выполнить сброс порта мыши. Эту опцию целесообразно использовать в случае работы с аппаратными средствами без BIOS (например, PowerPC, MIPS).
 | Если в командной строке указаны обе опции (kbddev и mousedev) и используются нестандартные номера портов, значения номеров портов для модулей должны быть одинаковыми. |
uartПрямой доступ к UART (универсальным асинхронным приемопередатчикам) 8250/16450/16550. Опции:
- -1
- Использовать порт COM1.
- -2
- Использовать порт COM2.
- -i номер_прерывания
- Прерывание (IRQ) для устройства с последовательным интерфейсом (значение по умолчанию –
4
).
- -i номер_прерывания
- Прерывание (IRQ) для устройства с последовательным интерфейсом (значение по умолчанию –
4
).
- -P
- Приоритет обработки события ввода.
- -p порт_ввода-вывода
- Порт устройства с последовательным интерфейсом (значение по умолчанию –
3f8
).
- keyboard
- Преобразовать скан-коды в UNICODE. Опции:
- -k файл_kbd
- Файл, обеспечивающий поддержку национальных языков или альтернативных раскладок для клавиатуры (например, раскладки Дворака). Местоположение по умолчанию таких файлов –
/usr/photon/keyboard
. Для получения информации о создании отображений клавиатуры см. mkkbd.
relОтфильтровать и сжать относительные координаты для событий, связанных с мышью. Опции:
- -a значение
- Параметр ускорения прокрутки колесом мыши (значение по умолчанию –
10
). Чем больше это значение, тем быстрее выполняется прокрутка при использовании колеса мыши.
- -G увеличение
- Множитель скорости движения (значение по умолчанию –
1
).
- -l
- (буква "l") Переключить функции правой и левой кнопок.
- -T порог
- Пороговое значение для удваивания скорости, в шагах мыши (100).
- -x
- Обратное преобразование x.
- -y
- Обратное преобразование y.
ЗОСРВ «Нейтрино»
arm, ppc, x86
 | В настоящий момент модуль требуется лишь системам, работающим в режиме совместимости. В большинстве остальных случаев он конфликтует с драйвером devh-ps2ser.so, загружаемым менеджером io-hid. В современных системах от его использования рекомендуется отказаться в пользу сочетания io-hid и devi-hid. |
 | Если драйвер devi-* используется для сенсорного экрана, требуется файл калибровки. Файл калибровки генерируется утилитой calib:
calib > calib_file.txt |
Драйвер devi-hirun представляет собой основной (наиболее часто используемый) драйвер ввода Photon. Утилита inputtrap обнаруживает драйверы и запускает драйвер devi-hirun.
Драйвер devi-hirun принимает данные от устройства ввода (например, мыши или клавиатуры), интерпретирует их и выполняет определенную дальнейшую обработку данных. Обычно эта обработка заключается в создании пакетов данных, соответствующих событиям, и передаче этой информации в среду обработки событий Photon.
Драйвер devi-hirun имеет многоуровневую структуру:
- уровень фильтров
- уровень протоколов
- уровень устройств
На каждом уровне данные интерпретируются/модифицируются и передаются на следующий уровень. В конечном счете, данные (в виде событий) поступают в среду обработки событий в Photon.
Для каждого устройства, обслуживаемого драйвером devi-hirun, существует отдельный тракт, проходящий через три уровня. Этот тракт называется "линией шины событий". Линия шины событий состоит из модулей, каждый из которых соответствует одному уровню. Модули соединены программной шиной. При продвижении данных от уровня к уровню по шине данные преобразуются каждым модулем в формат, распознаваемый модулем на следующем уровне.
Важно отметить, что допускается запускать любое количество экземпляров драйвера devi-hirun, по одному экземпляру для каждого устройства. Либо можно запустить один экземпляр devi-hirun для всех устройств. Выбор одного из этих сценариев обычно обусловлен личными предпочтениями.
Если утилита inputtrap обнаруживает мышь Microsoft с последовательным интерфейсом и клавиатуру, для взаимодействия с которой используется дескриптор файла, полученный при открытии /dev/kbd
, то эта утилита вызывает драйвер devi-hirun следующим образом:
devi-hirun kbd fd -d/dev/kbd msoft fd &
Если утилита inputtrap обнаруживает мышь PS/2, подключенную через дополнительный порт на контроллере клавиатуры (mousedev), и клавиатуру, подключенную через порт основной клавиатуры на контроллере клавиатуры (kbddev), то утилита вызывает драйвер devi-hirun следующим образом:
devi-hirun kbd kbddev ps2 mousedev &
Базовые подсистемы ЗОСРВ «Нейтрино», Драйверы
devi-*, inputtrap, calib, devh-ps2ser.so, io-hid
Предыдущий раздел: Драйверы