hid.c был доступен в ядре 2.4.9 и более ранних версиях, но теперь разбит на несколько файлов
События HID клавиатуры / мыши / джойстика можно отслеживать / изменять на уровне ядра
Получите исходный файл ядра вашей версии ядра.
http://lxr.linux.no/linux+v2.6.27.14/drivers/
для модуля ядра HID (hid.o) linux, переименуйте исходные файлы в
my-hiddraw.c
*
my-hid-core.c
*
my-hid-input.c
*
my-hid-input-quirk.c
Makefile:
obj-m: = myhid.o
myhid-objs: = my-hiddraw.o my-hid-core.o my-hid-input.o my-hid-input-quirk.o
KDIR: = / lib / modules / $ (shell uname -r) / build
PWD: = $ (shell pwd)
по умолчанию:
$ (MAKE) -C $ (KDIR) M = $ (PWD) модулей
Добавить модуль в ядре как
$ sudo rmmod usbhid; sudo rmmod hid; sudo insmod myhid.ko; sudo insmod / [МОДУЛЬНЫЙ ПУТЬ] /usbhid.ko
*********************************************** ****************************
hid-input.c отвечает за отправку событий в подсистему ввода / hiddev.c
Для справки смотрите документацию Linux hiddev.txt и input.txt
В hid-input.c событие hidinput _ hid _ () отвечает за отправку событий
- void hidinput _ hid _ event (struct
hid _ устройство * hid, структура hid _ поле
* поле, структура hid_usage * использование, значение __s32)
Использовать в конце функции перед событием ввода _ (ввод, использование-> тип, использование-> код, значение);
printk ("\ n hidinput _ hid _ событие% i,% i,% i", использование-> тип, использование-> код, значение);
Получить / изменить эти значения и передать их в input _ events ()
*********************************************** ****************************
Привет
mmadni [AT] Gmail [DOT] ком