问题描述
1 写EXU的FRU失败
2 通过SMC指令手动关闭EEPROM写保护,FRU写入成功
~ ~ # tail -f /var/log/app.log | grep fru
2026-04-09 18:16:33.579081 alarm NOTICE: l_frudata_intf.c(94): [frudata] fru(0) ipmi write area(2) filed(2) data(abc)
2026-04-09 18:16:33.579705 frudata NOTICE: fru_ipmi.lua(194): Write fru0 E-lable data(RAW:00-02-02-00-03-61-62-63) successfully
2026-04-09 18:16:33.580480 frudata NOTICE: frudata_app.lua(298): write_fru_data_sig: Fru_id = 0.
2026-04-09 18:16:33.645453 frudata NOTICE: manage.lua(301): write fru area to eep start: fru_id = 0, FruOffset = 128, EepromWp_state = 1
2026-04-09 18:16:33.696823 frudata ERROR: frudata_service.lua(147): write_fru_area failed. fru_id = 0, ret=BMC.Error.Unknow: ./opt/bmc/libmc/lualib/mc/context.lua:203: ./opt/bmc/libmc/lualib/sd_bus/object.lua:317: ./opt/bmc/apps/hwproxy/lualib/hwproxy_objects/app_bus.lua:104: ./opt/bmc/apps/hwproxy/lualib/hw_utils/hw_wait_access.lua:101: chip: Eeprom_EXU_0101, bus: I2c_2, write failed: i2c.lua:117: response error, i2c write fail, ret: 5, input:{"len":32,"name":"Eeprom_EXU_0101","buffer":"01 00 01 02 07 00 00 F5 01 01 00 C0 C0 C1 00 BD \n01 05 00 00 00 00 C6 48 75 61 77 65 69 C3 61 62 \n","offsetWidth":2,"addrWidth":1,"addr":174,"offset":128,"mask":4294967295,"rw_type":0,"type":1,"has_error":false,"is_trace":false,"requestor":"bmc.kepler.frudata"}
^C
~ ~ # busctl --user call bmc.kepler.hwproxy /bmc/kepler/Chip/Smc/Smc_ExpBoardSMC_0101 bmc.kepler.Chip.BitIO Write a{ss}uyuay 0 134239744 1 255 1 0
~ ~ #
~ ~ # tail -f /var/log/app.log | grep fru
2026-04-09 18:16:33.579081 alarm NOTICE: l_frudata_intf.c(94): [frudata] fru(0) ipmi write area(2) filed(2) data(abc)
2026-04-09 18:16:33.579705 frudata NOTICE: fru_ipmi.lua(194): Write fru0 E-lable data(RAW:00-02-02-00-03-61-62-63) successfully
2026-04-09 18:16:33.580480 frudata NOTICE: frudata_app.lua(298): write_fru_data_sig: Fru_id = 0.
2026-04-09 18:16:33.645453 frudata NOTICE: manage.lua(301): write fru area to eep start: fru_id = 0, FruOffset = 128, EepromWp_state = 1
2026-04-09 18:16:33.696823 frudata ERROR: frudata_service.lua(147): write_fru_area failed. fru_id = 0, ret=BMC.Error.Unknow: ./opt/bmc/libmc/lualib/mc/context.lua:203: ./opt/bmc/libmc/lualib/sd_bus/object.lua:317: ./opt/bmc/apps/hwproxy/lualib/hwproxy_objects/app_bus.lua:104: ./opt/bmc/apps/hwproxy/lualib/hw_utils/hw_wait_access.lua:101: chip: Eeprom_EXU_0101, bus: I2c_2, write failed: i2c.lua:117: response error, i2c write fail, ret: 5, input:{"len":32,"name":"Eeprom_EXU_0101","buffer":"01 00 01 02 07 00 00 F5 01 01 00 C0 C0 C1 00 BD \n01 05 00 00 00 00 C6 48 75 61 77 65 69 C3 61 62 \n","offsetWidth":2,"addrWidth":1,"addr":174,"offset":128,"mask":4294967295,"rw_type":0,"type":1,"has_error":false,"is_trace":false,"requestor":"bmc.kepler.frudata"}
2026-04-09 18:17:15.646117 alarm NOTICE: l_frudata_intf.c(94): [frudata] fru(0) ipmi write area(2) filed(2) data(abc)
2026-04-09 18:17:15.646817 frudata NOTICE: fru_ipmi.lua(194): Write fru0 E-lable data(RAW:00-02-02-00-03-61-62-63) successfully
2026-04-09 18:17:15.647449 frudata NOTICE: frudata_app.lua(298): write_fru_data_sig: Fru_id = 0.
2026-04-09 18:17:15.706785 frudata NOTICE: manage.lua(301): write fru area to eep start: fru_id = 0, FruOffset = 128, EepromWp_state = 0
2026-04-09 18:17:17.299538 frudata NOTICE: manage.lua(306): write fru area to eep end: fru_id = 0, data = [Huaweiabc25.12.02.03 HuaweiSK90-1U1Nwuhansk901u1n1234432125.12.02.03]
CSR配置
"Eeprom_EXU": {
"OffsetWidth": 2,
"AddrWidth": 1,
"Address": 174,
"WriteTmout": 100,
"ReadTmout": 100,
"RwBlockSize": 32,
"WriteInterval": 20,
"HealthStatus": 0
},
"Accessor_EXUWP": {
"Chip": "#/Smc_ExpBoardSMC",
"Size": 1,
"Offset": 134239488,
"Mask": 255,
"Type": 0,
"Value": 0
},
"FruData_Expander": {
"FruId": 0,
"FruDev": "#/Eeprom_EXU",
"EepromWp": "#/Accessor_EXUWP.Value",
"BoardSerialNumber": "",
"StorageType": "TianChi"
},
环境信息
- 软件版本:OpenUBMC2512
