QNX.ORG.RU

Установка и настройка => Поддержка аппаратного обеспечения в QNX => Тема начата: stend.poms от Февраля 09, 2015, 03:53:20 pm



Название: Проблема с PCI. Устройство работает только в первых 3 слотах из 12
Отправлено: stend.poms от Февраля 09, 2015, 03:53:20 pm
PCI устройство TE1-PCI-С работает только в первых трех слотах платы расширения.
В остальных слотах (с 4 по 12) при чтении из адресного пространства (in16();) получаем FFFF (код прикреплён).

Оборудование:
Материнская плата PEAK777VL2 на плате расширения PX-14S3-RS-R50 с 12-ю PCI слотами.
PCI устройство Elcus TE1-PCI-С
QNX 6.5.0

Под Windows 7 x86 работает.
Под Ubuntu 14 x64 НЕ работает.
Под QNX 6.5.0 с драйвером из комплекта поставки тоже НЕ работает.
Функция pci_attach_device() работает только один раз. То есть, чтобы она снова заработала, надо перезагрузить QNX.

Как решить эту проблему?

Прикреплено:

PLX9030_test.cc - C++ тестовый код
PLX9030_test.txt - Результат выполнения этого кода
pci -v.txt - Результат выполнения команды pci -v
simpletest.txt - Результат выполнения официальной программы проверки.


Название: Re: Проблема с PCI. Устройство работает только в первых 3 слотах из 12
Отправлено: Basil-64 от Февраля 15, 2015, 09:28:49 pm
Рискну предположить что вопрос в инициализации моста PCI/PCI объединительной кросс-платы. Копать стоит туда. Винда обычно мосты переинициализирует. Куних полагается на инициализацию, проведенную биосом sbc. Ubuntu видимо тоже. Вариант раз - бодаемся с биосом, ищем последние обновления. Вариант два - берем мелкоскоп, читаем маркировку чипа на кросс-плате, ищем мануал, пишем его инициализацию.