Взаимодействие с Linux ввело драйвер ядра от пространства пользователя

Я разрабатываю драйвер ядра Linux для мультисенсорного устройства. Прямо сейчас я уже имею сенсорный вводимый к подсистеме ядра Linux, и она работает. Проблема состоит в том, что я также должен взаимодействовать с устройством для изменения настроек и так далее.

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

Мой первый тест драйвера начал некоторые дополнительные операции, которые я не могу найти на текущей модели, которую я использую. Это имело открытый, близко, чтение, запишите operatins, который я мог выполнить от пространства пользователя.

Как я могу сделать такие вещи с входными драйверами? Есть ли какой-либо официальный путь?

Заранее спасибо,

С наилучшими пожеланиями,

Nuno Santos

1
задан 14 November 2011 в 16:13

2 ответа

Необходимо реализовать устройство посимвольного ввода-вывода, введенное во входную подсистему стандарта ядра. Проверьте эту книгу. read(), write(), ioctl(), и т.д. типичные символьные операции драйверов, любой символьный драйвер имеет, по крайней мере, open() и close(). Так или иначе, какую подсистему ядра Вы использовали в своей последней версии драйвера? Самый полезный путь к любой разработке ядра к связанным с чтением документам в Документации / исходного каталога ядра и прочитал код драйверов ядер области, связанной с Вашими задачами.

1
ответ дан 7 December 2019 в 17:46

Можно объединить драйвер устройства ввода с символьным драйвером, и затем Вы получаете файл устройств, в который можно записать данные конфигурации и прочитать конфигурацию из. Взаимодействие между двумя разделенными драйверами в пространстве ядра не должно также быть сложным.

Я предполагаю, что Вы уже знаете эту книгу, она могла бы ответить на Ваш вопрос подробно:

Драйверы устройств Linux, 3-й выпуск

0
ответ дан 7 December 2019 в 17:46

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

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