Я хочу, чтобы процесс Bios POST поверил, что установлена видеокарта. Необходимость возникает потому, что кто-то не очень умный решил, что платы без активной видеокарты не должны загружаться. Об этом уже говорилось в других вопросах, наиболее глубоких: требуется ли современному ПК для работы видеокарта?

Мое понимание взаимодействия BIOS и аппаратного обеспечения таково, что Bios идентифицирует виды оборудования на очень элементарном уровне связи, кроме того, существует не так много каналов, где такая связь могла бы иметь место (я подозреваю, что контакт 7 A находится на стороне земли). В то время как для USB-устройств коды, идентифицирующие природу устройства, легко найти в Интернете для устройств PCIe, это, кажется, хорошо охраняемый секрет или, скорее, запутано мелочами. Однако это должно быть знание учебника, поэтому я был бы рад, если бы кто-то знал, где это указано, или лучше, как это работает на практике.

Я знаю, что могу загрузить плату за BIOS, вытащить видеокарту и подключить адаптер SATA. В конце концов, PCIe поддерживает «горячее» подключение, так что он должен работать. Но выполнение этого делает перезагрузку своего рода рутинной работой, иногда заставляющей меня откладывать обновления до такой степени, что мне все равно нужно перезагрузиться по какой-то другой причине.

1 ответ1

2

Идентификация устройств USB и PCI на самом деле очень похожа. В случае PCI (PCIe такой же) информация находится в заголовке конфигурации PCI. Они появляются в физическом адресном пространстве в предсказуемых, а значит, и в бесчисленных местах.

Формат заголовка конфигурации очень общедоступен. Существует код поставщика, идентификатор продукта, идентификатор подсистемы и номер редакции. Там также есть "классный" код. Видеокарты класса 030000. USB и PCI даже используют один и тот же набор кодов поставщиков - например, поставщиком 0x8086 является Intel.

Это то, что ищет прошивка. Вы не сможете обмануть его, соединив пару контактов. Вам понадобится каркас стандартного целевого устройства PCIe, которое отвечает на запросы с заполненным заголовком конфигурации.

Хуже того: я не думаю, что будет достаточно использовать "простое" устройство PCIe, которое связано с его идентификатором устройства и кодом класса. Ваша прошивка захочет поговорить с этой видеокартой со стандартным интерфейсом регистров VGA, и это не сработает.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .