Я делаю некоторые изменения для драйвера устройства ввода в ядре android.Новое в разработке ядра: «Виртуальный» драйвер ввода в ядре?
Данное устройство имеет ограниченный набор клавиш и разрешений на эвбиты. То, что я хочу сделать, - создать новый узел/dev/input event, который не связан с каким-либо физическим устройством, с более активными ключами и evbits, чтобы я мог отправлять реальные входные сигналы от физического драйвера в пользовательское пространство, в userpace Я слушаю их, и когда я получаю, я могу вводить события ввода в «виртуальный» драйвер, записывая его узел событий.
Является ли linux/android ядром такой вариант? На каком пути я должен следовать? Есть ли альтернатива этому?
Как второй вариант, могу ли я создать два входных узла в одном драйвере и отправить input_reports только на «физический» узел?
Не конечно, я понимаю. Если физический драйвер не поддерживает некоторые ключевые биты, как вы планируете получать неподдерживаемые ключи в пользовательском пространстве? – msh
@msh Мне в основном нужны два устройства, привязанные к реальному устройству с ограниченным набором доступных клавиатур: я отправлял их из пространства ядра в пространство пользователя с помощью input_report_key. Второе «виртуальное» устройство не должно быть привязано к какому-либо реальному устройству и должно иметь более широкий набор доступных клавиш, тогда в пользовательском пространстве я бы хотел прослушивать ключевые входы с реального устройства и вводить, записывая данные во входное событие узла, к виртуальному устройству. – Vektor88