5
3
Fork
You've already forked bmputil
2

Feature: BMD RSP v3 support #85

Merged
freyjadomville merged 21 commits from feature/full-bmp-rsp-support into main 2026年05月27日 22:23:44 +02:00

In this PR we fully implement BMD remote protocol v3. This includes implementing a proper error type for failed ADIv5 transactions, encoding what caused the failure in a way that can be properly handled by the caller with a match statement or similar.

The branch this is on will be used for additional remote protocol development as this is the third of a series of 4 or 5 PRs implementing full remote protocol support into bmputil, so should be left after merge.

This PR did not in the end address the need for an improved Response type, however the changes that are included allow a better understanding of what such a type will need to look like, allowing its address in the next PR. There will be an additional PR after that one as RSP v4 support will need to be implemented across a couple of PRs on account of the RISC-V accelerations needing their trait defining, and error type. It is because of this that the Response type work was not completed in this PR.

In this PR we fully implement BMD remote protocol v3. This includes implementing a proper error type for failed ADIv5 transactions, encoding what caused the failure in a way that can be properly handled by the caller with a `match` statement or similar. The branch this is on will be used for additional remote protocol development as this is the third of a series of 4 or 5 PRs implementing full remote protocol support into bmputil, so should be left after merge. This PR did not in the end address the need for an improved Response type, however the changes that are included allow a better understanding of what such a type will need to look like, allowing its address in the next PR. There will be an additional PR after that one as RSP v4 support will need to be implemented across a couple of PRs on account of the RISC-V accelerations needing their trait defining, and error type. It is because of this that the Response type work was not completed in this PR.
serial/remote: Switched to the proper error type to properly convey the error states from the ADIv5 protocol accelerations in a way that can be properly handled by the caller
All checks were successful
ci/woodpecker/pr/build-windows/2 Pipeline was successful
ci/woodpecker/pr/build-linux Pipeline was successful
ci/woodpecker/pr/build-windows/1 Pipeline was successful
ci/woodpecker/push/build-windows/2 Pipeline was successful
ci/woodpecker/push/build-windows/1 Pipeline was successful
ci/woodpecker/push/build-linux Pipeline was successful
2197648dc7
northernpaws left a comment
Copy link

Looks good to me!

Looks good to me!
freyjadomville left a comment
Copy link

Also looks good to me!

Also looks good to me!
Sign in to join this conversation.
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
blackmagic-debug/bmputil!85
Reference in a new issue
blackmagic-debug/bmputil
No description provided.
Delete branch "feature/full-bmp-rsp-support"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?