Как устройство PCIe выглядит загружаемым в BIOS / UEFI? - PullRequest
3 голосов
/ 24 сентября 2019

У меня есть хост-система на базе Intel с дочерней картой PCIe, разработанная моей компанией.Мы можем его перечислить, чтобы память могла использоваться совместно с процессором Intel.Я стремлюсь сделать пространство памяти дочерней карты, доступное через PCIe, распознаваемым BIOS / UEFI как загрузочное.

Я мог бы пойти по пути реализации одного из многих стандартов HCI, но, похоже, это такбудет медленным, так как эта дочерняя карта управляется процессором, а HCI должен быть реализован в программном обеспечении.Более конкретный вопрос заключается в том, существует ли известный формат загрузочной памяти, который BIOS / UEFI может распознать после перечисления дочерней карты?Googling не принес большого успеха для меня и этих стандартов, и то, как биос или UEFI соответствуют указанным стандартам во время загрузки, кажется племенным знанием и его трудно обнаружить.

Другие детали:

  • Я хочу загрузить либо Linux, либо Vxworks на центральном процессоре хоста.
  • Оба изображения находятся в энергонезависимой памяти на дочерней плате.
  • Процессор дочерней платы отвечает за представление изображения в общей папке.память через PCIe к хост-процессору.
  • Вы могли бы почти рассматривать дочернюю карту как плату расширения NVMe или SATA SSD, насколько центральный процессор будет знать, но дочерняя карта отвечает за большую функциональность, чем просто загрузкаосновной процессор, поэтому эти типы устройств не работают для моего приложения.

1 Ответ

0 голосов
/ 25 сентября 2019

Чистый способ сделать это - показать вашему устройству опциональное ПЗУ PCI (раздел 14.4.2 в UEFI 2.8 ).Вы могли бы довольно легко реализовать базовый SIMPLE_FILESYSTEM_PROTOCOL, представляющий изображения в виде файлов в файловой системе.Нет необходимости эмулировать HCI.

...