I2C Multi-master and Controller Slave Mode in QEMU
summary
Implemented I2C multi‑master and controller slave mode in QEMU by adding an asynchronous I2C send API and an event callback plus a bottom‑half state machine, wiring an abstract MCTP target device and using the ASPEED controller slave mode model. Tested on an ASPEED 2600 eval board with Linux AF_MCTP and nvme‑mi tooling, it lets the host talk to an NVMe‑MI device over MCTP/I2C and is upstream in QEMU, though some ASPEED driver changes and target‑receive support remain.
AI-written summary · about
chapters (6)
- 0:00Start
- 1:03The Management Component Transport Protocol
- 1:36Goals
- 4:56Basic 12C Emulation in QEMU
- 11:341st Problem
- 17:05Putting it to work with MCTP
related talks
10mBring SCSI Support Into QEMU Block Layer
27mVFIO User - Using VFIO as the IPC Protocol in Multi-process QEMU
28mCXL Emulation in QEMU - Progress, status and most importantly what next?
39mQEMU: Emulating Your Way to Success
22mAMD-vIOMMU: A Hardware-assisted Virtual IOMMU Technology
39mAsymmetric/Heterogeneous MultiProcessing (AMP/HMP): Mainline Linux and Zephyr in Unison
43mUCSI, TCPM, PD, AltModes: Demystifying USB-C and Its Support in Linux
43mUCSI, TCPM, PD, AltModes: Demystifying USB-C and Its Support in Linux
