Re[2]: Разделяемые прерывания в LINUX
От: OpenGL  
Дата: 08.09.04 11:08
Оценка:
Здравствуйте, anna_savelieva, Вы писали:

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


_>Теперь, если же твое устройство поддерживает возможность разделения прерываний.


_>Когда ты регистрируешь обработчик c помощью

_>request_irq(irq, handler, flags, name, void *dev_id)
_>последний аргумент dev_id как раз нужен будет для идентификации твоего устройства.

_>То есть в обработчике вторым аргументом будет передаваться именно твой dev_id, который ты указал при регистрации. Соответственно тебе нужно в обработчике всего лишь проверить, твой это dev_id или не твой


Дак вот в том то и прикол что он всегда мой, я в нем передаю локальный контекст (свою структуру данных устройста).
Устройство на прямую не дает этой возможности (подтверждения прерывания), но факт что в Windows аналогичный драйвер работатет, а в Linux нет, при том и там и там несколько устр-в сидят на одном прерывании.
Нужно просто в обработчике узнать с какого слота pci было прерывание, но вот как?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.