哦哦,好的,我再看下network_adapter组件的源码,之前看日志以为是bmc_network先感知到的NCSI Port,然后再由network_adapter来进行注册
用/sbin/ifconfig命令查看一下网口信息,是否有eth0
sr文件中,NCSIChanel的配置信息如下(目前是直接写死的方式):
我这个网卡只支持一个Port,为啥日志看到的打印port num = 4,这是啥情况?
范工,请问下从这些日志和配置来看,是哪里出现的问题呀? 能看出来不
确定是eth0作为ncsi网口吗?如果是的话,需要在初始化的时候用tcpdump抓包分析ncsi报文交互
4是默认值,只要你需要的channel通了,其他channel发了也不影响
可以确定,eth2是专用网口,eth0是NCSI共享网口
请教下这个Channel通道的值怎么确定呀?硬件设计上决定的?我现在是把NCSICHannelMgmt_1对象配成OCP1在位,NCSIChanel配置成2,因为看代码里默认的通道值是2。
这里的抓包调试有啥文档可以参考下不
写死没用,要按照vpd仓里的配置对应的Accessor和Scanner,而且得看扩展板是否支持这些寄存器
嗯,得扩展板支持这些寄存器,NCSIChannel也是关联的Accessor,修改它的值相当于修改寄存器ncsi的指向,你写死就没意义了
这个ncsi网口vlan的配置,不代表现在是ncsi网口,这个配置要切到ncsi网口才会生效,现在截图里面还是在专用网口上
哦哦,好的。我现在的疑问是为啥network_adapter组件没有识别到这个NCSI网口并初始化成功呀?
在network_adapter组件中imu_cmd.get_info_from_pmu这个接口会失败,所以我也是写死在代码里(能直接写死吗,这里),让其强制返回网口的BDF值,但是NCSI功能初始化还是失败。
如果配置Accessor_NCSI这些对象,则network_adapter组件没法检测到网卡
另外devmon这个组件在通过PMU查询网卡信息时,也是失败的
1970-01-01 02:11:41.148191 devmon ERROR: imu.cpp(82): [IMU-I2C-TRACE] ===== IMU->I2C->PMU PCIe Info Request Start =====
1970-01-01 02:11:41.148460 devmon ERROR: imu.cpp(89): [IMU-DEBUG] Getting info from IMU: is_local=false, socket_id=0, bus=2, device=0, function=0, address=0x00, read_len=4
1970-01-01 02:11:41.153749 devmon ERROR: imu.cpp(128): [IMU-I2C-TRACE] Step 1: Preparing PMU PCI request for I2C transmission
1970-01-01 02:11:41.153944 devmon ERROR: imu.cpp(155): [IMU-I2C-TRACE] Step 2: PMU request constructed - 9 bytes
1970-01-01 02:11:41.154081 devmon ERROR: imu.cpp(156): [IMU-I2C-TRACE] PMU Request Header: db 07 00
1970-01-01 02:11:41.154195 devmon ERROR: imu.cpp(157): [IMU-I2C-TRACE] PMU Request Payload: 40 00 00 20 00 03
1970-01-01 02:11:41.154395 devmon ERROR: imu.cpp(163): [IMU-DEBUG] Sending PMU PCI request via ME channel: cpu_id=0x40, addr1=0x00, addr2=0x00, addr3=0x20, addr4=0x00, read_len=3
1970-01-01 02:11:41.154524 devmon ERROR: imu.cpp(165): [IMU-DEBUG] Request data: db 07 00 40 00 00 20 00 03
1970-01-01 02:11:41.154608 devmon ERROR: imu.cpp(167): [IMU-I2C-TRACE] Step 3: Sending to IPMB(ME) → I2C → PMU
1970-01-01 02:11:41.154711 devmon ERROR: imu.cpp(169): [IMU-I2C-TRACE] IPMB Channel: ME (channel_type=0x01)
1970-01-01 02:11:41.154825 devmon ERROR: imu.cpp(171): [IMU-I2C-TRACE] IPMI NetFn: 0x2e (OEM), Cmd: 0x44
1970-01-01 02:11:41.154893 devmon ERROR: imu.cpp(172): [IMU-I2C-TRACE] Timeout: 5000ms
1970-01-01 02:11:41.155069 devmon ERROR: ipmb.cpp(96): Sending IPMI request: Channel=1(ME), NetFn=0x2e, Cmd=0x44, DataLen=9, Timeout=5000ms
1970-01-01 02:11:41.155209 devmon ERROR: ipmb.cpp(101): [ME-DEBUG] IPMI request data: db 07 00 40 00 00 20 00 03
1970-01-01 02:11:41.156508 devmon ERROR: ipmb.cpp(143): [ME-DEBUG] Sending to ipmi_core: NetFn=0x2e, Cmd=0x44, Instance=0, LUN=0
与此同时,busctl命令拿这个信息也是直接报错
因为你的NCSIChannel得对应修改寄存器的指向,才能让ncsi通,1-NCSI连至CPU;2-NCSI连至OCP1;3-NCSI连至OCP2;4-NCSI连至PCIe网卡








