Расширение HSMP на клиентские платформы
Разработчики AMD отправили в мейнлайн Linux-ядра патчи, расширяющие возможности драйвера AMD HSMP (Host System Management Port). Если ранее этот интерфейс использовался исключительно для серверных процессоров EPYC, то теперь он адаптирован для клиентских SoC семейства Zen 6 — мобильных APU Medusa (Medusa1/Medusa2) и настольных процессоров Olympic Ridge.
Ключевое отличие клиентских платформ заключается в использовании иного почтового ящика (mailbox) для взаимодействия с микрокодом, что потребовало внесения специфических изменений в драйвер для корректной обработки сообщений.
Функционал уровня Ryzen Master
Патчи внедряют набор сообщений SMC (System Management Controller), идентичный тому, что используется в проприетарном приложении Ryzen Master для Windows. Это означает, что Linux-драйвер теперь может обращаться к тем же функциям управления, что и официальная утилита AMD.
Технические возможности нового интерфейса
Добавленные клиентские идентификаторы сообщений (message IDs) предоставляют глубокий доступ к управлению системой. Ниже приведены ключевые функции, доступные через новый интерфейс:
| Функция управления | Описание возможности |
|---|---|
| Разгон (Overclocking) | Включение/отключение режима разгона и установка частоты OC для всех ядер |
| Напряжение (VID) | Установка напряжения разгона (OC VID) |
| Температура | Установка порога максимальной температуры (TjMax) |
| Шина FCLK | Динамическая настройка частоты системной шины (FCLK) |
| Мониторинг | Доступ к различным датчикам и метрикам состояния CPU |
Что это значит для пользователей Linux?
На данный момент в ядре реализована только базовая поддержка на уровне драйвера (kernel-space). Пользовательское пространство (user-space) для управления этими функциями пока не анонсировано. Однако наличие новых ioctls и открытая архитектура HSMP создают идеальные условия для сообщества.
Сценарий развития событий может пойти по пути, аналогичному управлению графикой AMD: компания не будет выпускать официальный аналог Ryzen Master для Linux, но позволит open-source проектам (таким как ryzenadj или будущим инструментам) реализовывать собственные интерфейсы для разгона и мониторинга. Это даст энтузиастам возможность настраивать Zen 6 прямо из-под Linux без использования Windows.
Источник: Phoronix ↗
