Перейти к содержанию
    

Мониторинг PCIe-платы по PMBUS/SMBUS

Даже не знаю, есть ли смысл тут спрашивать, вопрос у меня больше софтовый, но тем не менее...

Хочется сделать плату PCIe в которой была бы возможность контролировать работу через служебный интерфейс, автоматически управлять серверными вентиляторами в зависимости от температуры и т.д. С нижним уровнем SMBUS/I2C все понятно, а вот дальше как-то мутно. Есть спецификация PMBUS, которая содержит в протоколе ряд команд для передачи данных о напряжении/температуре/вентиляторах и т.д. И оставляет довольно много для manufacturer-specific. В то же время, если смотреть исходники linux, там есть некая поддержка pmbus, но пилят драйвера под конкретные чипы.

 

Собственно вопросы:

1. Будет ли поддерживаться биосом (системным контроллером серверным) и ОС (Windows/linux) мое абстрактное устройство, если я реализую поддержку PMBUS по спецификации или потребуется пользовательская программа?

2. Если поставить стандартное устройство (или мимикрировать под него), например из списка https://github.com/torvalds/linux/tree/mast...ers/hwmon/pmbus , то повышаются ли шансы на автоматическую поддержку всяким ПО для мониторинга?

 

Пытался читать описание материнских плат серверных, там слово pmbus вообще отсутствует, про smbus один раз упоминается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По опыту не на всех материнских платах на слотах PCI-E/PCI-32 подключены линии SMBus, причем на настольных машинах чаще их нет. На серверах - как повезет.

 

А для управления в любом случае понадобится ПО + драйвера, т.к. ОС/BIOS оптимизированы на работу с устройствами (стандартными) на мат.плате и априори не рассчитаны на все то многообразие, которое может быть в нее воткнуто.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А для управления в любом случае понадобится ПО + драйвера, т.к. ОС/BIOS оптимизированы на работу с устройствами (стандартными) на мат.плате и априори не рассчитаны на все то многообразие, которое может быть в нее воткнуто.

 

если только не заплатить конкретным разработчикам, конкретной материнки, для поддержки конкретного устройства

тогда часть работы по настройке ПО/Драйвера/ос/биос переходит на их плечи.

Но выйти на разработчика и заплатить денюшку, это , увы, только для ОЧЕНЬ богатых клиентов

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

если только не заплатить конкретным разработчикам, конкретной материнки, для поддержки конкретного устройства

тогда часть работы по настройке ПО/Драйвера/ос/биос переходит на их плечи.

Но выйти на разработчика и заплатить денюшку, это , увы, только для ОЧЕНЬ богатых клиентов

 

С учетом количества доступных примеров и документации задачу написания такого ПО может сейчас решить студент на коленке. Я конечно утрирую, но по-моему не стоит упираться в поддержку BIOSом и платформой заказного железа, когда эта функциональность нужна только под ОС.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пытался читать описание материнских плат серверных, там слово pmbus вообще отсутствует, про smbus один раз упоминается.

Можно попробовать добраться к SMBUS через слоты памяти... SPD память там практически всегда присутствует.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хочется сделать плату PCIe в которой была бы возможность контролировать работу через служебный интерфейс, автоматически управлять серверными вентиляторами в зависимости от температуры и т.д. С нижним уровнем SMBUS/I2C все понятно, а вот дальше как-то мутно. Есть спецификация PMBUS, которая содержит в протоколе ряд команд для передачи данных о напряжении/температуре/вентиляторах и т.д. И оставляет довольно много для manufacturer-specific. В то же время, если смотреть исходники linux, там есть некая поддержка pmbus, но пилят драйвера под конкретные чипы.

я бы посоветовал организовать контроллер вентиляторов/термодатчиков прямо на своей плате - тем самым исключается перегрев при зависание внешнего софта. а интерфейс мониторинга/управления пробросить через канал PCIe и поддержать из своего драйвера: либо через управление своей внешней софтиной (типа как Nvidia control panel) либо через слой в класс "Hardware Monitoring support" (это в линуксе), тогда есть шанс быть поддержанным сторонним софтом для мониторинга. для windows движуха похожая, но видимо более затратная..

в общем, ищите инфу в классе видеокарт, там схожие условия

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С учетом количества доступных примеров и документации задачу написания такого ПО может сейчас решить студент на коленке. Я конечно утрирую, но по-моему не стоит упираться в поддержку BIOSом и платформой заказного железа, когда эта функциональность нужна только под ОС.

 

вот видите, какой вы разносторонний. А я только про ACPI таблицы + WMI, с их термозонами, и подумал.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно попробовать добраться к SMBUS через слоты памяти... SPD память там практически всегда присутствует.

 

А с платой PCIe связываться через отдельный кабель с переходником на DIMM? По-моему это не самая лучшая идея, особенно с учетом небольшого числа слотов DIMM на некоторых мат.платах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

но пилят драйвера под конкретные чипы.

 

потому как иной чип имеет по 6 штук I2C , и не факт что память, ЕС, GPIO expander и BMC физически висят все вместе на одном I2C.

Это как бог на душу, разработчику сервера, положит. И на какой из I2C кинут PMBus, тоже не ведомо.

Но подозреваю, что если PMBus всетаки реализован, то обязательно будет и разьем для подключению к нему на материнке, и описание оного в документации на сервер.

 

А "пилящие" драйвера под конкретный чип, скорее всего имеют схему сервера и потому знают что где искать.

Изменено пользователем Bios71

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...