|
Прерывания PCI. |
|
|
|
 |
Ответов
|
Jun 4 2015, 10:03
|
Участник

Группа: Участник
Сообщений: 34
Регистрация: 25-04-05
Пользователь №: 4 466

|
Перешел я на использование IOConnectInterruptEx, FULLY_SPECIFIED (в XP можно только эту версию использовать). В описании на альтеровскую корку написано, что по включению используются legacy (lane-based) и для использования MSI надо ручками менять биты в одном из конфиг регов. До этого я не дошел, так что фактически продолжаю использовать legacy. IOConnectInterruptEx ничего нового не дал. Все осталось как есть. Есть пару подробностей относительно срабатывания OnInterrupt при старте винды. Ранее я писал, что если я верну TRUE, то винда перегрузится. Это не совсем точно. В обработчике прерывания я лезу в плату и проверяю бит, что это мое прерывание. Так вот перезагрузку вызывает именно обращение к моей плате. Если в обработчике я просто буду делать DebugPrint и возвращать TRUE, то винда загрузится. Но обработчик прерывания будет постоянно вызываться и вызываться, точно так же, как и в случае, когда обработчик всегда возвращал FALSE. Я предполагаю, что перезагрузка происходит потому, что ServiceContext, передаваемый обработчику вовсе не содержит адреса на мой DeviceExtension, поля которого я использую при обращении к плате. Надо будет выкинуть в дебаг его значение. Выглядит, как будто это прерывание никак обрабатывается (не сбрасывается источник) и мне его постоянно присылают. Похожее наблюдается, если в девайсе установить прерывание и не чистить - хоть OnInterruptEx будет возвращать TRUE, обработчик прерывания будет постоянно вызываться, пока в девайсе оно не снимется. Я даже подумал, что может корка глючит. После загрузки винды дернул сигнал запроса прерывания вверх-вниз, но это ничего не поменяло. Вот такие новости.
Сообщение отредактировал otv116 - Jun 4 2015, 10:06
|
|
|
|
Сообщений в этой теме
Methane Прерывания PCI. Sep 10 2010, 04:00 Victor® Цитата(Methane @ Sep 10 2010, 07:00) Наро... Sep 10 2010, 06:07 Methane Цитата(Victor® @ Sep 10 2010, 09:07) Что-... Sep 10 2010, 06:16  Victor® Цитата(Methane @ Sep 10 2010, 09:16) В ко... Sep 10 2010, 06:48   Methane Цитата(Victor® @ Sep 10 2010, 09:48) К со... Sep 10 2010, 06:51 Methane Стабильно генерит 1 прерывание и клин. Чует мое се... Sep 10 2010, 08:31 DS Цитата(Methane @ Sep 10 2010, 12:31) Стаб... Sep 10 2010, 08:44  Methane Цитата(DS @ Sep 10 2010, 11:44) Это обычн... Sep 10 2010, 08:56   DS Цитата(Methane @ Sep 10 2010, 12:56) Алго... Sep 10 2010, 08:59    Methane Цитата(DS @ Sep 10 2010, 11:59) А запрос ... Sep 10 2010, 09:15     DS Цитата(Methane @ Sep 10 2010, 13:15) Или ... Sep 10 2010, 09:22      Methane Цитата(DS @ Sep 10 2010, 12:22) Да.
Не па... Sep 10 2010, 13:25       DS Цитата(Methane @ Sep 10 2010, 17:25) Не п... Sep 10 2010, 13:31        Methane Цитата(DS @ Sep 10 2010, 16:31) Осциллогр... Sep 10 2010, 13:36 DS Нет клина прерывания (после выхода обработчик вызы... Sep 10 2010, 13:41 Methane Только что проверил, у меня прерывание вызывается ... Sep 10 2010, 13:48 DS Цитата(Methane @ Sep 10 2010, 17:48) Толь... Sep 10 2010, 14:00  Methane Цитата(DS @ Sep 10 2010, 17:00) А в цепоч... Sep 10 2010, 14:56 Methane Вот пример из примера Альтеры.
Код // LEGACY INT... Sep 13 2010, 09:20 DS Из обработчика прерывания можно каким нибудь прово... Sep 13 2010, 11:01 Oldring Цитата(DS @ Sep 13 2010, 15:01) Из обрабо... Sep 13 2010, 11:11 Methane Цитата(DS @ Sep 13 2010, 14:01) Из обрабо... Sep 13 2010, 11:55  Oldring Цитата(Methane @ Sep 13 2010, 15:55) Вста... Sep 13 2010, 12:01   Methane Цитата(Oldring @ Sep 13 2010, 15:01) ... Sep 13 2010, 12:20    Oldring Цитата(Methane @ Sep 13 2010, 16:20) Комп... Sep 13 2010, 12:27     Methane Цитата(Oldring @ Sep 13 2010, 15:27) А по... Sep 13 2010, 12:35      Oldring Цитата(Methane @ Sep 13 2010, 16:35) Все ... Sep 15 2010, 06:29       Methane Цитата(Oldring @ Sep 15 2010, 09:29) Ну т... Sep 15 2010, 07:08        Oldring Цитата(Methane @ Sep 15 2010, 11:08) Вот ... Sep 15 2010, 07:22         Methane Цитата(Oldring @ Sep 15 2010, 10:22) Спас... Sep 15 2010, 07:43 otv116 Добрый день.
У меня тоже возникли проблемы с преры... May 26 2015, 06:28 krux у PCIe нет отдельной сигнальной цепи-прерывания в ... May 26 2015, 11:37 soldat_shveyk Не пугайтесь раньше времени, все что Вы описали пр... May 26 2015, 12:15 otv116 Спасибо.
soldat_shveyk,
я делал эксперимент с во... May 26 2015, 18:52 soldat_shveyk Пробуйте MSI.
Отпишитесь потом в этой ветке, если... May 27 2015, 04:46 otv116 Идея про неправильный ServiceContext себя не подтв... Jun 5 2015, 09:22 otv116 С тостером та же фигня.
Тупик, блин. Jun 7 2015, 19:00 otv116 Решил поглядеть, что будет на Win8 x64.
При загруз... Jun 9 2015, 19:20 otv116 Чтобы отмести возможные глюки моей платы, воткнул ... Jun 11 2015, 19:29 otv116 Разобрался я в чем дело.
soldat_shveyk первым же ... Jun 17 2015, 07:47
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|