У меня есть устройство на базе PCI, в частности на основе tms320c6000 DSP. Я пытаюсь связать (считывая некоторые регистры) с помощью этого устройства через Jungo WinDriver. Удивительно, но иногда это работает, а иногда нет, когда система не зависает, и я должен перезапустить систему.Не детерминированное поведение при использовании драйвера jungo для связи с устройством PCI
Это сокращенный код, который я использовал, например, для чтения регистров EMIF.
WD_TRANSFER tt[9];
BZERO(tt);
for (unsigned i = 0; i < 9; i++) {
tt[i].cmdTrans = RM_DWORD;
tt[i].dwPort = mmr + (i * 4);
}
WD_MultiTransfer(hDevice, &tt, 9);
MMR пришел из функции WD_CardRegister которая дала информацию о БАРС PCI и их отображенной адрес (MMR не является prefechtable карту памяти).
Я был бы очень признателен, если бы кто-нибудь мог дать мне некоторый намек на то, что может вызвать эту проблему.
Благодаря