feat(sbp2): expose the current session and command ABI to the app#85
Draft
gly11 wants to merge 3 commits into
Draft
feat(sbp2): expose the current session and command ABI to the app#85gly11 wants to merge 3 commits into
gly11 wants to merge 3 commits into
Conversation
gly11
force-pushed
the
sbp2/app-diagnostics
branch
from
July 26, 2026 09:24
417b5ec to
5d68165
Compare
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.
Summary
Why this replaces the older fork PRs
This consolidates the still-useful parts of gly11#7 and gly11#9.
The old connector used selectors 53-61, but current main uses 52-60 and reserves selector 61 for the developer bus-reset request. It also used a fixed 512-byte command-result buffer. Current main consumes a result on read, so retrying after
kIOReturnNoSpacewould lose a large READ result. This version validates the request first and allocates the full result capacity before the destructive read.Validation
Committed PR branch
ASFWTestssuite passesLive read-only MCP follow-up
With the #84 driver installed and the MCP server running, local follow-up MCP changes were exercised against the Epson V750 Pro / GT-X970 unit:
asfw_sbp2_list_unitsdiscovered GUID0x00004800004D438Dasfw_sbp2_inspect_unitdecoded ROM offset0xFand LUN 0These MCP follow-up changes are still local and are not included in this PR's current head. They should be submitted separately rather than silently expanding this PR.
Remaining hardware coverage
asfw_sbp2_get_session_statuscorrectly reportscapabilityUnavailablefrom a different MCP/user-client owner because live session state is owner-scopedThis PR therefore remains a draft.
CI organization
Shared CI workflow cleanup is tracked separately in #88. After #88 merges, this branch should be rebased onto
mainso the duplicated CI commits can be dropped cleanly.