Efeu: generating efficient, verified, hybrid hardware/software drivers for I2C devices
Daniel Schwyn, Zikai Liu, Timothy Roscoe
Abstract
Writing device drivers is notoriously hard, and driver bugs are a major cause of system failures and vulnerabilities. The problem is particularly acute in bus-based protocols like I 2 C, where driver correctness is only half the story: correct functioning of the complete subsystem depends on all components on the bus interoperating correctly. Unfortunately, developers cannot control all aspects of a platform, and must interact with existing devices (peripherals and/or hardware bus controllers) which may misbehave. Failures in a protocol like I 2 C, often used in critical low-level system management, can result in permanent damage to the hardware, whether a server or a satellite.
Existing techniques for creating high assurance drivers rarely tackle this interoperability issue. We present Efeu, a framework for implementing verifiably interoperable drivers for I 2 C devices. Using model checking-based verification, Efeu generates driver implementations in software, reconfigurable logic for FPGAs, and, notably, combinations of both. The split between software and hardware can be varied at implementation time and the hardware/software interface is generated automatically, enabling efficient exploration of the design space. Using Efeu, we design and evaluate a verified I 2 C driver stack, and demonstrate that Efeu finds optimal hardware/software tradeoffs to favor either throughput, CPU usage or FPGA footprint. For each objective, Efeu generates drivers with performance comparable with hand-optimized hardware/software drivers.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 3de63aae-1e52-45eb-8566-05416770e24dCited by top-tier papers2
- μUSB: Practical and Safe USB Driver Reuse for Arm TrustZoneXuankai Zhang, Sijin Li, Pei Meng, Meng Wang et al.OSDI 2026
- Rage Against the State Machine: Type-Stated Hardware Peripherals for Increased Driver CorrectnessTyler Potyondy, Anthony Tarbinian, Leon Schuermann, Eric Mugnier et al.ASPLOS 2026
Builds on1
Related papers
- DevFuzz: Automatic Device Model-Guided Device Driver FuzzingYilun Wu, Tong Zhang, Changhee Jung, Dongyoon LeeS&P 2023
- Structure-Aware, Diagnosis-Guided ECU Firmware FuzzingQicai Chen, Kun Hu, Sichen Gong, Bihuan Chen et al.ISSTA 2025 · 2 citations
- Design of Access Control Mechanisms in Systems-on-Chip with Formal Integrity GuaranteesDino Mehmedagic, Mohammad Rahmani Fadiheh, Johannes Müller, Anna Lena Duque Antón et al.USENIX Security 2023
- Democratizing and Accelerating Hardware Verification with Software-Native OptimizationYunlong Xie, Zhicheng Yao, Fangyuan Song, Jincheng Liu et al.ISCA 2026
- An I/O Separation Model for Formal Verification of Kernel ImplementationsMiao Yu, Virgil D. Gligor, Limin JiaS&P 2021 · 7 citations
