dev-qemu: Add minimal tasks for completing HID handshake#31
Merged
Conversation
e01a038 to
d9c1468
Compare
There was a problem hiding this comment.
Pull request overview
Adds a minimal HID-over-I2C implementation to the dev-qemu platform so a host (notably Windows) can complete the initial HID handshake during startup, enabling more reliable EC↔host comms validation in QEMU-based setups.
Changes:
- Spawns new HID host/device Embassy tasks from
dev-qemu’smain. - Introduces a minimal HID-over-I2C device implementation (descriptor + report descriptor + basic command acks).
- Extends the QEMU board abstraction with an I2C target peripheral and an active-low GPIO “interrupt” line, plus required dependency updates.
Reviewed changes
Copilot reviewed 4 out of 5 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| platform/dev-qemu/src/main.rs | Wires up and spawns the new HID host/device tasks during boot. |
| platform/dev-qemu/src/hid.rs | Implements the minimal HID-over-I2C handshake behavior and task loops. |
| platform/dev-qemu/src/board.rs | Adds I2C target + GPIO interrupt line to the board bring-up. |
| platform/dev-qemu/Cargo.toml | Adds HID-related dependencies and updates cargo-machete ignores. |
| platform/dev-qemu/Cargo.lock | Locks new dependency graph entries introduced by HID support. |
RobertZ2011
approved these changes
Jun 26, 2026
philgweber
reviewed
Jun 26, 2026
philgweber
approved these changes
Jun 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Updates
dev-qemuto have a couple basic tasks that can complete the initial HID over i2c handshake that Windows will typically do on startup.This it mainly to support the odp-platform-qemu-arm repo so that we can verify the Windows qemu instance can always successfully talk to the EC qemu instance and also serves as a basic example for further HIDI2C development within the qemu ec.