AMD предлагает подсистему eSPI для ядра Linux
Компания AMD представила в списке рассылки разработчиков ядра Linux серию патчей, предлагающих новую подсистему для стандарта Enhanced Serial Peripheral Interface (eSPI). Интерфейс изначально разработала Intel как коммуникационный протокол для связи с BIOS, системными контроллерами и другой периферией — например, модулями TPM. Он задумывался как альтернатива интерфейсу LPC, традиционному SPI и прочим способам передачи служебных сигналов.
Теперь eSPI начала применять и AMD, что и стало поводом для инициативы. Инженер компании Кришнамурти М. заранее спросил у сообщества, стоит ли расширять существующий код подсистемы SPI или же вводить eSPI как отдельный тип шины. В итоге выбран второй путь: патчи создают самостоятельную подсистему, а её первым потребителем становится новый драйвер eSPI для оборудования AMD.
Что уже работает
Код протестирован и проверен на платформе AMDI0070 — там он функционирует. Впрочем, у нынешней версии есть известные ограничения. Пока отсутствует поддержка Device Tree: код AMD опирается исключительно на ACPI. Перечисление подчинённых устройств выполняется вручную, а часть операций планируется добавить в последующих патчах.
Таким образом, речь идёт о начальном заделе, а не о готовом решении. Подобный подход типичен для ядра Linux: базовую инфраструктуру предлагают на ранней стадии, чтобы обсудить архитектурные решения с сообществом, а недостающую функциональность дополняют итеративно. Любопытна и сама ситуация, когда AMD берётся выстраивать в ядре поддержку стандарта, придуманного главным конкурентом, — но для отраслевых интерфейсов это обычное дело.
Желающие ознакомиться с работой AMD над eSPI могут найти серию патчей в списке рассылки разработчиков ядра Linux.
Источник: Phoronix
Комментарии
Войдите, чтобы комментировать.