CRPS电源适配问题求助

最近在进行一款 CRPS 电源的适配工作,BMC 通过 I2C 直连电源,协议使用 PMBUS。
按照此前培训的指导流程,我已完成相关 CSR 修改,目前在 BMC 上可以看到 OnePower 对象,并且可以通过 EEPROM 提供的 blockIO 命令读取到电源信息。但在调试过程中仍有一些疑问:

  1. PsuSlot 对象未在资源树中找到
    使用 busctl --user tree bmc.kepler.power_mgmt 未看到 PsuSlot 对象,但从日志上看似乎已正常加载了该对象。
  2. 设备树与 CSR 加载逻辑不一致
    预期设备树应根据 CSR 同时加载 adapter 下的 PsuSlot.lua,但实际只正常加载了 OnePower.lua,原因不太明确。
    image
    补充CSR配置信息
    电源相关的CSR配置(拓展板14100513_EXU_0.sr)
    链路拓扑相关定义

    电源相关对象的定义,Scanner当前不支持在位信息获取所以在位状态固定为1.

    电源CSR(14100513_PSU_0.sr)
    对于OnePower的定义

@fumingquan 请帮忙看看这个问题,相关改动是否正确,如果有问题的话正确的修改方法是什么?

1、 PsuSlot 对象是私有对象,不会体现在资源树上
2、这里power_mgmt设备树代码目录是怎么样的,是否加载了默认的PsuSlot

adapter目录就是这个样子,这两个文件我都没有修改, 只是把通用的代码文件复制过来了。


然后只有OnePower加载的14100513_PSU_0目录下面的,PSUSLOT还是加载的通用的

这里PsuSlot和OnePower都是配置在一个csr下面吗?如果不是应该建立一个PsuSlot对应的文件夹,文件夹名和PsuSlot所在的CSR同名

1 个赞

PsuSlot对象是在拓展板14100513_EXU_0.sr里面定义的, 然后OnePower是定义在电源板14100513_PSU_0.sr
正确的方法是psuslot的对象要新建一个目录14100513_EXU_0放PsuSlot吗


这样可以吗

是的

好的, 验证通过, 感谢~