В ответ на различные текущие ограничения подсистемы менеджера FPGA ядра Linux инженеры AMD-Xilinx опубликовали запрос на комментарии к списку ядер Linux и планируют предоставить исправления для ядра Linux, чтобы ввести новый интерфейс sysfs, который позволит лучше контролировать пользовательское пространство FPGA.
Этот новый интерфейс sysfs может обрабатывать настройку FPGA, обнаружение и удаление драйверов, мостовое соединение, поддержку файлов наложения дерева устройств для перепрограммирования FPGA во время работы операционной системы, а также может предоставлять больше функций пользовательского пространства через основную версию ядра Linux, которые в настоящее время недоступны.
Новое предложение AMD надеется стандартизировать интерфейс пользовательского пространства подсистемы FPGA таким образом, чтобы его можно было использовать для восходящего потока к основному ядру Linux. Однако это все еще находится на стадии предложения, и это зависит от того, как его обсудит сообщество Linux.
Ниже приведен запрос на комментарий, отправленный инженерами AMD-Xilinx:
Существующая подсистема менеджера FPGA не имеет никакого интерфейса пользовательского пространства в ядре, за исключением статуса и других состояний в sysfs.
По сути, FPGA — это полупроводниковое устройство, которое можно перепрограммировать для обеспечения требуемых аппаратных функций. FPGA можно перепрограммировать с использованием различных типов логики и IP во время выполнения в соответствии с потребностями пользователя, поэтому необходимо использовать наложения дерева устройств для удаления/обновления/добавления устройств во время выполнения для существующих IP и контроллеров в FPGA.
Но на данный момент в LinuxKernel нет пользовательского интерфейса для обновления дерева устройств во время выполнения.
Не так давно ПантелисАнтониу выпустил серию работ. В этом патче представлены настройки пользовательского интерфейса для наложения дерева устройств, который представляет собой метод динамического изменения дерева устройств ядра в реальном времени. Однако из-за различных проблем эту серию могут не принять в основную ветку.
Одной из основных проблем, возникающих при использовании этого интерфейса configfs, является безопасность, поскольку он предоставляет пользователю интерфейс для изменения дерева устройств в реальном времени. Таким образом, для настройки/программирования устройств FPGA все основные поставщики FPGA используют эту серию configfs в качествеИсправили из дерева и никогда не пытались внедрить общий интерфейс для настройки/программирования восходящей FPGA, и вышестоящее ядро в конечном итоге не обеспечивало должной поддержки FPGA.
Примечание. Xilinx — крупный разработчик микросхем в области FPGA. Компания была приобретена AMD. В июне прошлого года AMD объявила, что Xilinx будет переименован в AMD Embedded.
узнать больше:
https://lore.kernel.org/lkml/DM6PR12MB3993D5ECA50B27682AEBE19FCD67A@DM6PR12MB3993.namprd12.prod.outlook.com/