// 此模板仅供参考,如果不适用可以修改
问题描述
SR配置:14140130_19e50222_19e504b1.sr
BMC和1823网卡直接是通过 I2C over Hisport 来通信的,下面下挂了如下器件
"I2cMux_Hisport": {
"Chips": [
"Chip_Hi1822",
"Pca9555_PCIe",
"Eeprom_NetCard"
]
}
EEPROM可以读到数据
~ ~ # mdbctl call Eeprom_NetCard_01011502 bmc.kepler.Chip.BlockIO Read 0 0x0 128
[0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,117,97,119......]
% attach hwproxy
Success
% tracechip Eeprom_NetCard_01011502 start
% 2026-08-25 19:44:23.194305, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 0, read_length: 32, read_result: 46 52 55 FF FF FF FF FF 01 00 01 02 29 00 00 D3 01 01 00 C0 C0 C1 00 BD 01 27 00 ED 93 F4 C6 48
2026-08-25 19:44:23.198413, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 32, read_length: 32, read_result: 75 61 77 65 69 C9 42 43 35 33 45 54 48 4E 31 CC 50 30 32 36 36 37 30 35 32 31 38 30 CA 30 33 30
2026-08-25 19:44:23.202865, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 64, read_length: 32, read_result: 32 30 37 35 32 38 35 C0 F0 80 44 65 73 63 72 69 70 74 69 6F 6E 3D 4D 61 6E 75 66 61 63 74 75 72
2026-08-25 19:44:23.208680, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 96, read_length: 32, read_result: 65 64 20 42 6F 61 72 64 2C 53 50 32 32 36 44 2C 42 43 35 33 45 54 48 4E 31 F0 81 2C 45 74 68 65
2026-08-25 19:44:23.211871, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 128, read_length: 32, read_result: 72 6E 65 74 20 4E 49 43 2C 32 30 30 47 45 2C 44 75 61 6C 20 50 6F 72 74 73 2C 51 53 46 50 35 36
2026-08-25 19:44:23.229595, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 160, read_length: 32, read_result: 28 57 69 74 68 6F 75 74 20 4F F0 82 70 74 69 63 61 6C 20 4D 6F 64 75 6C 65 29 2C 50 43 49 45 20
2026-08-25 19:44:23.230812, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 192, read_length: 32, read_result: 35 2E 30 20 78 31 36 2D 56 65 6E 64 6F 72 20 49 44 20 31 39 65 35 2D 44 65 76 69 F0 83 63 65 20
2026-08-25 19:44:23.232654, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 224, read_length: 32, read_result: 49 44 20 30 32 32 32 2D 32 2D 53 75 62 76 65 6E 64 6F 72 20 49 44 20 31 39 65 35 2D 53 75 62 64
2026-08-25 19:44:23.233818, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 256, read_length: 32, read_result: 65 76 69 63 65 20 49 44 20 30 34 42 C6 04 31 2C 32 2A 32 CF 00 49 73 73 75 65 4E 75 6D 62 65 72
2026-08-25 19:44:23.235104, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 288, read_length: 32, read_result: 3D 30 30 CE 00 43 4C 45 49 43 6F 64 65 3D 4E 75 6C 6C C9 00 42 4F 4D 3D 4E 75 6C 6C CD 00 4D 6F
2026-08-25 19:44:23.239530, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 320, read_length: 32, read_result: 64 65 6C 3D 53 50 32 32 36 44 C1 00 00 00 00 3E 01 03 00 C6 48 75 61 77 65 69 C0 C0 C0 C0 C0 C0
2026-08-25 19:44:23.246468, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 352, read_length: 32, read_result: C1 00 00 00 00 00 00 92 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
2026-08-25 19:44:23.260710, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 384, read_length: 32, read_result: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
2026-08-25 19:44:23.264064, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 416, read_length: 32, read_result: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
2026-08-25 19:44:23.265215, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 448, read_length: 32, read_result: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
2026-08-25 19:44:23.266404, Unknown, block_read, Eeprom_NetCard_01011502, addr: 172, offset: 480, read_length: 32, read_result: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
但是 Chip_Hi1822 会报错,温度读不到
trace信息如下
% attach hwproxy
Success
% tracechip Chip_Hi1822_01011502 start
% 2026-08-25 19:40:11.103976, bmc.kepler.network_adapter, block_read, Chip_Hi1822_01011502, addr: 232, offset: 4294967295, read_length: 64, read_result: ./opt/bmc/apps/hwproxy/lualib/stream/i2c_over_hisport.lua:50: ioctl(HIS_CMD_I2C_STREAM_READ) failed: Connection timed out
2026-08-25 19:40:11.540905, bmc.kepler.network_adapter, block_read, Chip_Hi1822_01011502, addr: 232, offset: 4294967295, read_length: 64, read_result: ./opt/bmc/apps/hwproxy/lualib/stream/i2c_over_hisport.lua:50: ioctl(HIS_CMD_I2C_STREAM_READ) failed: Connection timed out
2026-08-25 19:40:11.985554, bmc.kepler.network_adapter, block_read, Chip_Hi1822_01011502, addr: 232, offset: 4294967295, read_length: 64, read_result: ./opt/bmc/apps/hwproxy/lualib/stream/i2c_over_hisport.lua:50: ioctl(HIS_CMD_I2C_STREAM_READ) failed: Connection timed out
2026-08-25 19:40:13.614470, bmc.kepler.network_adapter, block_read, Chip_Hi1822_01011502, addr: 232, offset: 4294967295, read_length: 64, read_result: ./opt/bmc/apps/hwproxy/lualib/stream/i2c_over_hisport.lua:50: ioctl(HIS_CMD_I2C_STREAM_READ) failed: Connection timed out
环境信息
-
操作系统:[如 Ubuntu 24.04]
-
软件版本:[如 OpenUBMC2509]
-
硬件配置:[如 CPU、内存等]
重现步骤
-
[第一步]
-
[第二步]
-
[第三步]
期望结果
能正确读到温度
实际结果
无法读取
尝试过的解决方案
手动发命令读取
分析结论
可能是 i2c_over_hisport 读 read_length: 64 对长度有要求,不能读64字节?