Atlas 300V pro NPU卡信息显示不全

【当前背景】
代码版本:25.03
MCU固件版本:24.5.9
系统固件版本:7.5.0.5.220

【问题描述】
当前在openUBMC适配300V Pro的NPU卡,适配后显示的信息不全,没有显示内存容量和系统固件版本


300V Pro CSR配置

"PCIeDevice_1": {
            "Segment": 1,
            "DeviceName": "PCIe Card $ (NPU)",
            "DiagnosticFault": 0,
            "PredictiveFault": 0,
            "FunctionClass": 9,
            "LinkSpeedReduced": 0,
            "CorrectableError": 0,
            "UncorrectableError": 0,
            "FatalError": 0,
            "Position": "",
            "Container": "${Container}",
            "GroupPosition": "PCIeDevice_${GroupPosition}",
            "DeviceType": 8,
            "PCIeDeviceType": "SingleFunction",
            "SlotType": "FullLength",
            "FunctionProtocol": "PCIe",
            "FunctionType": "Physical"
        },
        "FruData_NPUCard": {
            "FruId": 1,
            "StorageType": "MCU",
            "FruDev": "#/Chip_Dmini_Elabel",
            "FruName":"<=/PCIeCard_1.Name"
        },
        "NPUCard_1":{
            "Name": "<=/PCIeCard_1.Name",
            "CardDescription": "<=/PCIeCard_1.Description",
            "DeviceName": "<=/PCIeDevice_1.DeviceName",
            "RefChip":"#/Chip_Dmini",
            "RefEeprom":"#/Chip_Dmini_Elabel",
            "RefFrudata": "#/FruData_NPUCard",
            "Model": "Atlas_300I_Pro",
            "SlotNumber": "${Slot}",
            "PcbVersion": ".A",
            "BoardID": 171,
            "FirmwareVersion": "N/A",
            "CardPartNumber": "03028DFH",
            "SerialNumber":"<=/FruData_NPUCard.BoardSerialNumber"
        },
        "Fru_NPUCard": {
            "PcbVersion": ".A",
            "FruId": 1,
            "PowerState": 1,
            "FruName": "<=/PCIeCard_1.Name",
            "Health": 0,
            "EepStatus": 1,
            "Type": 8,
            "FruDataId": "#/FruData_NPUCard"
        },
        "PCIeCard_1": {
            "DeviceName": "<=/PCIeDevice_1.DeviceName",
            "SlotID": "<=/PCIeDevice_1.SlotID",
            "NodeID": "<=/PCIeDevice_1.SlotID |> string.format('PCIeCard%s',$1)",
            "Health": "<=/Component_PCIeCard.Health",
            "Name": "#/NPUCard_1.BoardID |> expr( $1==182 ? 'Atlas 300V Video Analysis Card' : $1==175 ? 'Atlas 300V Pro Video Analysis Card' : 'Atlas 300I Pro Inference Card')",
            "BoardName": "<=/FruData_NPUCard.BoardProductName;<=/FruData_NPUCard.BoardProductName |> string.cmp($1, '') |> expr($1 ? 'IT21PDDA' : $2)",
            "Description": "#/PCIeCard_1.Name |> string.format('%s PCI-E 1*16x (HHHL)', $1)",
            "FunctionClass": 9,
            "VendorID": 6629,
            "DeviceID": 54528,
            "SubVendorID": 512,
            "SubDeviceID": 256,
            "Position": "<=/PCIeDevice_1.Position",
            "LaneOwner": "<=/PCIeDevice_1.SocketID",
            "FirmwareVersion": "#/NPUCard_1.FirmwareVersion",
            "Manufacturer": "Huawei",
            "PartNumber": "03028DFH",
            "MaxFrameLen": 64,
            "LinkSpeed": "N/A",
            "LinkSpeedCapability": "N/A",
            "PcbVersion": "#/NPUCard_1.PcbVersion",
            "BoardID": "#/NPUCard_1.BoardID",
            "DevBus": "<=/PCIeDevice_1.DevBus",
            "DevDevice": "<=/PCIeDevice_1.DevDevice",
            "SerialNumber": "<=/FruData_NPUCard.BoardSerialNumber",
            "DevFunction": "<=/PCIeDevice_1.DevFunction"
        },

在ibmc v2版本上进行交叉验证发现这些信息可以正常显示

使用300I Duo的卡适配openUBMC后,系统版本和内存容量可以正常显示

300I Duo CSR配置文件

"PCIeDevice_1": {
            "Segment": 1,
            "DeviceName": "PCIe Card $ (Atlas 300I Duo)",
            "DiagnosticFault": 0,
            "PredictiveFault": 0,
            "FunctionClass": 9,
            "LinkSpeedReduced": 0,
            "CorrectableError": 0,
            "UncorrectableError": 0,
            "FatalError": 0,
            "Position": "",
            "Container": "${Container}",
            "GroupPosition": "PCIeDevice_${GroupPosition}",
            "DeviceType": 8,
            "PCIeDeviceType": "SingleFunction",
            "SlotType": "FullLength",
            "FunctionProtocol": "PCIe",
            "FunctionType": "Physical"
        },
        "FruData_NPUCard": {
            "FruId": 1,
            "StorageType": "MCU",
            "FruDev": "#/Chip_Dmini_Elabel"
        },
        "Fru_NPUCard": {
            "PcbVersion": ".A",
            "FruId": 1,
            "PowerState": 1,
            "FruName": "Atlas 300I Duo",
            "Health": 0,
            "EepStatus": 1,
            "Type": 8,
            "FruDataId": "#/FruData_NPUCard"
        },
        "NPUCard_1":{
            "Name": "Atlas 300I Duo Inference Card",
            "CardDescription": "Atlas 300I Duo Inference Card PCI-E 1*16x(FHFL)",
            "DeviceName": "<=/PCIeDevice_1.DeviceName",
            "RefChip":"#/Chip_Dmini",
            "RefEeprom":"#/Chip_Dmini_Elabel",
            "RefFrudata": "#/FruData_NPUCard",
            "Model": "Atlas_300I_Duo",
            "SlotNumber": "${Slot}",
            "PcbVersion": ".A",
            "BoardID": 177,
            "FirmwareVersion": "N/A",
            "CardPartNumber": "03029WRV",
            "SerialNumber":"<=/FruData_NPUCard.BoardSerialNumber"
        },
        "PCIeCard_1": {
            "DeviceName": "<=/PCIeDevice_1.DeviceName",
            "SlotID": "<=/PCIeDevice_1.SlotID",
            "NodeID": "<=/PCIeDevice_1.SlotID |> string.format('PCIeCard%s',$1)",
            "Health": "<=/Component_PCIeCard.Health",
            "Name": "Atlas 300I Duo",
            "BoardName": "<=/FruData_NPUCard.BoardProductName;<=/FruData_NPUCard.BoardProductName |> string.cmp($1, '') |> expr($1 ? 'IT21PD2E' : $2)",
            "Description": "Atlas 300I Duo Inference Card PCI-E 1*16x(FHFL)",
            "FunctionClass": 9,
            "VendorID": 6629,
            "DeviceID": 54528,
            "SubVendorID": 512,
            "SubDeviceID": 272,
            "Position": "<=/PCIeDevice_1.Position",
            "LaneOwner": "<=/PCIeDevice_1.SocketID",
            "FirmwareVersion": "#/NPUCard_1.FirmwareVersion",
            "Manufacturer": "Huawei",
            "PartNumber": "03029WRV",
            "MaxFrameLen": 32,
            "LinkSpeed": "N/A",
            "LinkSpeedCapability": "N/A",
            "PcbVersion": "#/NPUCard_1.PcbVersion",
            "BoardID": "#/NPUCard_1.BoardID",
            "DevBus": "<=/PCIeDevice_1.DevBus",
            "DevDevice": "<=/PCIeDevice_1.DevDevice",
            "SerialNumber": "",
            "DevFunction": "<=/PCIeDevice_1.DevFunction"
        },

【疑问点】
使用类似的CSR配置文件对两张NPU卡进行适配,为什么300I DUO的卡可以正常显示信息,300V Pro却不能显示系统固件版本和内存容量,300V Pro的卡是否支持显示这两条信息

我认为可先查看下OS下的300V Pro驱动和固件是否安装并配套

300vpro的驱动和固件和300idou应该是一样的吧,我们也遇到了同样的问题,在os下刷了300vpro的固件,资源树上没有显示300vpro的固件版本

请问一下你使用的300vpro的配置,在bmc web-其他-Pcie卡界面会不会加载很慢,一直转圈?

会的,如果是多张卡的话,BMC第一次加载很慢

并且我这边加载的第一次可能还会是显示300ipro,我想可能是boardid没有及时同步导致的吧

Atlas 300V pro走的协议是跟Duo卡一致?是不是跟Pro卡协议一致;
如果是Pro卡协议,NpuCard对象的Model属性需要配置 Atlas_300I_Pro

当前配置的就是Altas_300I_Pro

能打开组件的debug开关,然后一键收集提供下?

因社区上传不了压缩包且整个一键收集日志太大,当前只上传了app_log,修改后缀为.zip就可以解压查看日志了,组件已经打开debug开关
applog.txt (3.0 MB)

打开是乱码

老师您好,这个是一个压缩包,因为社区上传不了压缩包,需要修改后缀名为.zip再解压,以下是app.log里面部分内容

老师您好,这个问题有什么进展吗

请问你们有遇到过 有些300v的AicoreTemp数据 有些槽位很快就读到了 有些槽位很久才能读到该值这种情况吗?

你好,麻烦发送一份一键收集的日志到邮箱:hwzhangzhiyang@foxmail.com

话题许久未更新,若有问题重新提问,此话题关闭