![]() |
Модераторы: xvr |
![]() ![]() ![]() |
|
Guest |
|
|||
Unregistered |
И все таки, почему не работает этот модуль так как надо на 2.4.28...
Он запускаетя пишет скан коды в лог, но клава не работает как положено.Сканкоды пишет, а в самой системе ниче не нажимается - ПОЧЕМУ?Пусть не выгружается, только заработает.Помогите плиз!!! #include <linux/kernel.h> /* We're doing kernel work */ #include <linux/module.h> /* Specifically, a module */ #include <linux/sched.h> #include <linux/tqueue.h> #include <linux/interrupt.h> #include <asm/io.h> static void got_char(void *scancode) { printk("Scan Code %x %s.\n", (int) *((char *) scancode) & 0x7F, *((char *) scancode) & 0x80 ? "Released" : "Pressed"); } irqreturn_t irq_handler(int irq, void *dev_id, struct pt_regs *regs) { static unsigned char scancode; static struct tq_struct task ={ .routine=got_char, .data=&scancode }; unsigned char status; status = inb(0x64); scancode = inb(0x60); queue_task(&task, &tq_immediate); mark_bh(IMMEDIATE_BH); return IRQ_HANDLED; } int init_module() { free_irq(1, NULL); return request_irq(1, /* The number of the keyboard IRQ on PCs */ irq_handler, /* our handler */ SA_SHIRQ, "test_keyboard_irq_handler", NULL); } void cleanup_module() { free_irq(1, NULL); } MODULE_LICENSE("GPL"); |
|||
|
||||
GrayCardinal |
|
|||
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 8 Всего: 58 |
Извините, но я на столько трезвый что не вижу почему должно быть наоборот. ![]() Еще раз извините, я в последнее время немножко злой ![]() ![]() Так вот. Понятия не имею что там в 2.4 (пользую 2.6) но могу сказать следующее : /usr/src/linux-2.4.22-1.2121.nptl/drivers/input/keybdev.c есть строчка вида handle_scancode(0x37, down); К чему бы это ? ЗЫ Переходите на 2.6, может обсудим чего ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Программирование под Unix/Linux" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |