Я работаю с пакетом поддержки плат (BSP) в VxWorks, который использует pciAutoConfig() для настройки шины PCI. Когда я добавляю плату контроллера Ethernet к шине, процедуры отображения pci не показывают карту.Как настроить мостовое устройство PCI-to-PCI в VxWorks?
Используя анализатор шины, я обнаружил, что адаптер Ethernet фактически состоит из моста PCI-to-PCI с двумя контроллерами Ethernet за мостом. Похоже, что BSP неправильно использует мост PCI-to-PCI, который содержит контроллер Ethernet.
Вопрос в том, какую библиотеку и конфигурации следует использовать для настройки моста PCI-to-PCI? Я думаю, что эти вызовы перейдут в sysHwInit(), где существующие вызовы pciAutoConfig().
pciAutoCfgCtl() имеет параметр PCI_BRIDGE_PRE_CONFIG_FUNC_SET, который указывает на определенную пользователем функцию для настройки шины. Это единственный метод? Или есть что-то в библиотеках VxWorks, которые могут сделать это для меня?
Спасибо, BSP вызывает библиотеку pciAutoConfig от VxWorks. Это хорошо работает, когда мой код работает на процессоре в системном слоте. К сожалению, для меня у меня другая настройка. Я использую тестовый интерфейс для существующей системы. Мой процессор не входит в системный слот. Запуск pciAutoConfig здесь зависает системы. Я читаю книгу системной архитектуры PCI, чтобы надеяться найти способ настройки моей нечетной топологии. –