Add load support for universal binaries - #349
Open
will-v-pi wants to merge 6 commits into
Open
Conversation
Also adds supported family IDs to models, used to check if family is supported for SRAM loads (and RP2040 flash loads) This fixes picotool load for the universal binaries
New ones split the last RP2040 block after all the RP2350 blocks to prevent Windows errors, so fix build_rmap_uf2 to handle that
Add robustness for invalid UF2 files Allow loading BIN/ELF files into SRAM/RP2040 regardless of the guessed family ID, to match prior behaviour
Now it also ignores UF2 compatibility checks for RP2040 and SRAM binaries too
lurch
reviewed
Jul 17, 2026
lurch
reviewed
Jul 17, 2026
lurch
reviewed
Sep 3, 2026
| @@ -314,7 +314,7 @@ SYNOPSIS: | |||
| OPTIONS: | |||
| Post load actions | |||
Contributor
There was a problem hiding this comment.
I guess some of these aren't post-load options 😉
lurch
reviewed
Sep 3, 2026
| Post load actions | ||
| --ignore-partitions | ||
| When writing flash data, ignore the partition table and write to absolute space | ||
| Ignore the partition table, or whether the family ID is compatible with the device |
Contributor
There was a problem hiding this comment.
Would there ever be a use-case for this being a separate --ignore-family-ids option rather than shoe-horning this functionality into --ignore-partitions?
If not, perhaps this wording is slightly clearer?
Suggested change
| Ignore the partition table, or whether the family ID is compatible with the device | |
| Ignore the partition table, and ignore family ID compatibility |
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.
This adds support to
picotool loadfor loading universal binaries, and other multi-family UF2sThe existing
--familyflag can be used to select which family to load from the UF2 - otherwise it picks using the partition table, or based on the supported families for the device for RP2040 or SRAM binaries (no partition table)Also fixes
picotool infoand other command support for 2.3.0 universal binaries, which have rearranged blocks that picotool was handling incorrectlyFixes #344