[an error occurred while processing this directive]
|
(Весной искал ПСАй контроллеры. Писал (почему-то) в ВХДЛной конфе об этом.)
Первая проблема была вставить с несконфигурированым PCI заголовком в комп. При включении питания комп даже не выходил на БИОС. Нашли единственную мать от iWill-а, Пен.2 которая загрузилась. Сконфигурили на ней в заголовке Vendor ID, Devic ID, Class code. может и ещё чего, не помню. Но вот эти сделали и плата стала стартовать на всех компах. В смысле загрузка ОС проходила нормально.
Использовали ДМА.
На APOLLO 1U ICE system serves (www.arcom.com) компьютер стрелялся при загрузке драйвера. Стрелялся на вызове функции IoGetDmaAdapter, в ней один из аргументов был вроде "Тип ДМА - PCI".
Писали в суппорт.
Вот дословно одна из фраз из переписки.
The APOLLO doesn't support PCI bus DMA using the 8237 DMA controller, this is known as PC/PCI DMA and uses a serialized mechanizm to allow the transfers to occur, it's mainly only for ISA peripherals...
Посмотрели на маркировки мелкосхем достали даташиты. Читал Intel® 82801DBM ICH4-M Datasheet. Там объяснён это самый DMA serialized mechanizm.
Смысл такой в обычном ПСАйе мы тупо роняем РЕКвест, ждём ГраНТа а потом стреляем тупо адресом в любую точку. Так вот в том serialized надо последовательно дрыгать РЕКвестом чтобы передать номер запрашиваемого канала ДМА, а система в ответ будет дрыгать ГраНТом и в нём сообщит какой канал ДМА можно использовать. Нафиг мне номер канала
я не понял. Мне же адрес нужен.
HP ProLiant DL320 G3 server также отказался работать с ДМА.
Эти все компы на mobile чипсетах. Я так понимаю ноутбучные. Само железо 82801DBM ICH4-M поддерживает обычный PCI bus DMA трансфер.
В десктопах плата(ДМА) работает.
Вставлял ТВтюнер(ФлайВидео Филипс 7134), Эзернетовские карточки в эти SBC - работают. Из чего делаю вывод что те друзья не используют ДМА.
Перерыл ПСАй спецификацию, не нашёл упоминания об этом DMA serialized mechanizm-е.
Откуда у этого serialized вообще ноги растут?
Ну а мы переделываем на "без ДМА".