LINUX.ORG.RU

Сообщения nihao

 

Собственный модуль. На 2.4 работало, а на 2.6 - ...

Форум — Development

Есть PCI-ная железка. Под нее на 2.4 был написан модуль. В момент загрузки модуля читалось конф.пространство этой железки, откуда добывали адреса портов, памяти, и номер прерывания, необходимые этой железке. Все это благополучно захватывалось и работало. При переходе на ядро 2.6 столкнулись с проблемой: номер прерывания читается не тот, что сама система определяет для этой платы. В итоге обработчик вешаем на одно прерывание, а в реале происходит другое. Да, порты и память продолжают определяться правильно.

вот кусок кода, работающего под 2.4: where = 0x3c; pci_read_config_byte(dev, where, &INT1); if(mes==1) printk («Interrupt1 %d\n», INT1);

// Interrupt request... rezult = request_irq(INT1, interrupt6202, SA_SHIRQ, DEV_NAME, interrupt6202); if ((rezult) && (mes==1) ) { printk(«Can't get IRQ line\n») ; }

Что надо исправить, чтобы и под 2.6 этот код заработал?

nihao
()

RSS подписка на новые темы