-> SM
Сегодня решил немного поэкспериментировать. Стал писать в девайс не через виртуальные адреса, выдаваемые драйвером, а с помощью IOCTL закидывал в драйвер данные, а в нем с помощью WRITE_REGISTER_BUFFER_ULONG64 кидал в девайс. Результат такой: TLP стали содержать по одному 64-битному слову. Но это прокатит только для 64-битных операционок. Но все равно, это не та скорость, о которой так долго говорили большевики

Хотел попробовать через виртуальные адреса, но из Win64 приложения. Но тот код, что работал под 32, не поехал. Второй вызов SetupDiGetDeviceInterfaceDetail постоянно выдает ошибку 1784. Но это уже не по теме.
-> novartis
Спасибо за ссылку.
С QSys я как раз и хотел начать, чтобы не заморачиваться с разбором TLP. Но ничего не получилось. Делал все по инструкции из UG_pci_express, только подправляя под свою плату (она 1х, а не 4х). Скомпилилось нормально, TQ не ругался, но устройсво виндой не обнаруживалось вообще. ltssm никаких признаков жизни не демонстрировали, оставаясь все время в 0. В общем, не дожал я это дело. Да и не лежит как то душа к этим "кубикам".