реклама на сайте
подробности

 
 
> Прерывания в Linux, Система не реагирует на прерывание
Docent86
сообщение Sep 18 2012, 04:00
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 2-03-10
Из: С.-Пб.
Пользователь №: 55 772



Железо:
Одноплатный комп + плата расширения.
Софт:
ubuntu 8.04, ядро 2.6.24-26-generic
исходники модуля для платы расширения
Суть:
Плата расширения сидит на РС-104 шине (аналог ISA), имеет встроенную память с которой и работаем, вырабатывает прерывания. Прерывания на плате задаются перемычками, соответствующие прерывания включаем в Биосе и при инициализации модуля. Прерывания выбираются согласно манулу на ОПК для исключения конфликтов. Базовый адрес тоже на перемычках и т.д. Чтение/запись памяти платы на отлично, плата работает и вырабатывает прерывания которые можно наблюдать физически (на осцилографе длительность прерывания 500мс). далее - смотрим /proc/interrupts видим наше устройство и счетчик прерываний = 0. Система не видит\не реагирует на поступающее прерывание. --> обработчик прерываний соответственно не запускается.
Танцы с бубном в биосе результатов не дали. Где искать что делать? [size="3"][/size]
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Docent86
сообщение Sep 19 2012, 11:30
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 2-03-10
Из: С.-Пб.
Пользователь №: 55 772



Наткнулся на форум по QNX - там ребята с этой же платой работают и у них точно такая же проблема. Под "окнами" и ДОСом плата работает нормально, в КуНиксе ошибка по прерываниям.
Go to the top of the page
 
+Quote Post
gosha
сообщение Sep 20 2012, 08:10
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 15-06-04
Из: Менделеево
Пользователь №: 30



QUOTE (Docent86 @ Sep 19 2012, 15:30) *
Наткнулся на форум по QNX - там ребята с этой же платой работают и у них точно такая же проблема. Под "окнами" и ДОСом плата работает нормально, в КуНиксе ошибка по прерываниям.


Все ISA прерывания через pci-isa bridge подключаются в прерывания PCI.
Физичесики на шине их всего 4 провода: pci_irq_a, pci_irq_b, pci_irq_c, pci_irq_d

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

Не спорьте.


=========================================================

Какое ISA прерывание в какую PCI_irq line (a.b.c.d) map-ятся?
Какие номера irq соответсвуют pci_irq_a, pci_irq_b, pci_irq_c, pci_irq_d

Содержимое регистров 0x60, 0x61, 0x62, 0x63 Pci-ISA bridge?
http://www.openwatcom.org/index.php/PCI_Interrupt_Routing
Убедитесь, что они правильные.


Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 3rd August 2025 - 10:26
Рейтинг@Mail.ru


Страница сгенерированна за 0.03421 секунд с 7
ELECTRONIX ©2004-2016