PMBus协议规范介绍
PMBus是一套对电源进行配置、控制和监控的通讯协议标准。其最新版本为1.3,该规范还在不断演进中,比如新标准中新增的zone PMBus、AVSBus等特性。在其官网上有详细的规范文档,本节不尝试翻译规范文档,重点记录作者在了解PMBus过程中的疑问和解答。
PMBus与I2C、SMBus的区别?
PMBus在SMBus(System Management Bus)基础上增加了一套电源配置、控制和监控规范。SMBus最初是为电池智能管理而开发的一套标准,其基于I2C协议,并针对I2C协议的弱健壮性做了如下改进:
支持SMBALERT#中断;
支持错包检测(PEC);
支持包超时;
支持START/STOP保护;
支持Host Notify Protocol协议;
PMBus监控哪些参数?告警分为几级?不同告警级别有什么样的应对措施?
PMBus支持电压、电流、功率、温度和风扇等参数的上下限监控,支持warning和fault 2级告警级别(如上图所示)。
warning告警:表示监控参数异常,系统需引起关注,但可以继续运行,系统无需任何响应措施;
fault告警:比warning告警级别高,系统会根据异常对设备的危害情况,进行设备控制电路重启(restart)或输出切断(shutdown)等处理;
告警产生时如何上报给主机?
告警上报一般有如下几种方式:
主机轮询PMBus设备;
PMBus设备通过SMBALERT#中断通知主机;
Host Notify Protocol(PMBus设备临时切换成总线主机(bus master),并发送一组特定协议通知系统主机)。
什么情况下告警会取消或清除?重启是否会清除告警?
任何warning或fault告警一旦上报,只有通过如下几种方式可以取消清除:
PMBus设备接收到CLEAR_FAULTS命令;
PMBus设备RESET引脚生效;
PMBus设备通过CONTROL引脚或OPERATION命令关闭并重新打开;
断电;
如果异常一直存在,那么即使进行告警清除操作,告警会马上重新上报。
linux PMBus驱动设计分析
原文:http://www.cnblogs.com/wahaha02/p/6475966.html