1,有没有办法在板卡上查询资源树的Smc对象对应的是哪一路I2C? 如查询Smc_CpuBrdSMC_0101和Smc_CpuBrdSMC_010101对应的是哪一路I2C ?V2可以通过lsprop查询Lbus类型。

2, Smc_CpuBrdSMC_0101对象对应的是CPU模组,Smc_CpuBrdSMC_010101这个对象是什么用途? 如何查询?
3, Sr文件中只定义了一个Smc_CpuBrdSMC对象,后缀0101是怎么来的?
1,有没有办法在板卡上查询资源树的Smc对象对应的是哪一路I2C? 如查询Smc_CpuBrdSMC_0101和Smc_CpuBrdSMC_010101对应的是哪一路I2C ?V2可以通过lsprop查询Lbus类型。

2, Smc_CpuBrdSMC_0101对象对应的是CPU模组,Smc_CpuBrdSMC_010101这个对象是什么用途? 如何查询?
3, Sr文件中只定义了一个Smc_CpuBrdSMC对象,后缀0101是怎么来的?
这些都可以在sr中查看。
步骤一:
在环境中执行:ipmcget -d v,查看对应板卡的sr。
例如:
---------------- CPU Board INFO ----------------
CpuBoard1 BoardName: BC82AMDT
CpuBoard1 BoardID: 0xffff
CpuBoard1 CUID: 00000001020302024339
CpuBoard1 PCB: .A
CpuBoard1 CPLD Version: (U6288)1.09
CpuBoard1 CSR: 3.01
确定BCU(CPU Board)的sr编号为00000001020302024339。
步骤二:
查看对应的sr的ManagementTopology,里面有对于smc属于哪一条I2c的定义,例如:
“I2c_1”: {
“Chips”: [
“Smc_CpuBrdSMC”,
“Eeprom_BCU”,
“Eeprom_LogChip”
]
},
问题二和问题三是同一个问题,对于后缀0101或者010101的概念不清晰。
openUBMC中会用后缀来表示对象的配置来自于不同的板卡。参考 板卡适配指南 | openUBMC
也就说明了Smc_CpuBrdSMC_0101是来自于BCU的配置,010101是来自于IEU(Riser)的配置。
为了避免不同板卡之间配置相同名字的对象,openUBMC框架使用后缀position表示板卡的唯一对象,该后缀会在加载sr的时候自动分配
V3目前还不支持通过在板卡上查看吗? 仅支持通过sr查看有个弊端,如果代码有bug 会出现sr定义和实际板卡上生效的不一致问题,需要通过板卡上查看来判断sr 定义和板卡上生效的是否与预期一致。
在一键收集日志AppDump\hwproxy目录下,有一个topology.txt的文件,里面记录了链路信息和smc挂载在哪条I2c的树状结构。你可以在这里面查看
这个文件可以看到哪个对象在哪路总线下。另外topology.txt中显示的Chip alias是表示Smc_ExpBoardSMC_010101是 Smc_ExpBoardSMC_0101的别名,表示同一个对象吗?
Chip alias:
Smc_ExpBoardSMC_010101 → Smc_ExpBoardSMC_0101
Smc_CpuBrdSMC_010101 → Smc_CpuBrdSMC_0101
是别名的意思。两个对同一个对象。在csr中只要在同一条总线,设备地址一致,就会出现这种合并的现象
好的,多谢。