Smc对象和i2c bus的对应关系问题

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

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中只要在同一条总线,设备地址一致,就会出现这种合并的现象

好的,多谢。