This patch follows the Handing IPMI for emulating BMC patch set by Hao Wu. Building on top of the work in [PATCH] hw/misc: Add an iBT device model posted by Cédric Le Goater, this iBT model works as a backend to ipmi-host-extern.
Needed to run: - [PATCH 4/8] hw/ipmi: Refactor IPMI interface, Hao Wu - [PATCH 5/8] hw/ipmi: Take out common from ipmi_bmc_extern.c, Hao Wu - [PATCH 6/8] hw/ipmi: Move handle_command to IPMICoreClass, Hao Wu - [PATCH 7/8] hw/ipmi: Add an IPMI external host device, Hao Wu Host commandline -chardev socket,id=ipmichr1,host=localhost,port=9999,reconnect=10 \ -device ipmi-bmc-extern,chardev=ipmichr1,id=bmc0 \ -device isa-ipmi-bt,bmc=bmc0,irq=10 -nodefaults BMC commandline -chardev socket,id=ipmichr1,host=localhost,port=9999,server=on,wait=off \ -device "ipmi-host-extern,chardev=ipmichr1,responder=/machine/soc/ibt" Currently, IRQs are not functional, but it is able to connect. The following printout is from the host: [ 6.869742] ipmi_si IPI0001:00: IPMI message handler: Found new BMC (man_id: 0x002b79, prod_id: 0x0000, dev_id: 0x00) [ 12.393281] ipmi_si IPI0001:00: IPMI bt interface initialized This patch is an RFC because of the missing IRQs and the need for other patches to get merged. Thank you all. Titus Rwantare (1): hw/ipmi: add an aspeed ipmi iBT device model hw/ipmi/ipmi_extern.h | 1 + include/hw/arm/aspeed_soc.h | 2 + include/hw/ipmi/aspeed_ibt.h | 77 +++++++++ hw/arm/aspeed_ast2600.c | 12 ++ hw/arm/aspeed_soc.c | 12 ++ hw/ipmi/aspeed_ibt.c | 311 +++++++++++++++++++++++++++++++++++ hw/ipmi/meson.build | 1 + hw/ipmi/trace-events | 7 + 8 files changed, 423 insertions(+) create mode 100644 include/hw/ipmi/aspeed_ibt.h create mode 100644 hw/ipmi/aspeed_ibt.c -- 2.33.0.800.g4c38ced690-goog