Skip to content

Lock picotool version on master to 2.1.1 #2401

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

will-v-pi
Copy link
Contributor

The master SDK branch (and the SDK release tags eg 2.1.1) should point to specific picotool tags, to ensure you get a compatible picotool - currently it points to the develop branch of picotool

This has been set to develop for the 2.1.0 and 2.1.1 releases, so those releases may break in the future if picotool loses backwards compatibility (eg SDK header movement, or changes to picotool commands)

The master SDK branch (and the SDK release tags eg 2.1.1) should point to specific picotool tags, to ensure you get a compatible picotool
@will-v-pi will-v-pi requested a review from kilograham April 7, 2025 16:09
will-v-pi added a commit to raspberrypi/picotool that referenced this pull request May 29, 2025
This is required due to 2.1.0 and 2.1.1 SDK releases pointing at picotool develop branch rather than the respective picotool releases (raspberrypi/pico-sdk#2401)
kilograham added a commit to raspberrypi/picotool that referenced this pull request May 29, 2025
…key shares instead of just the AES key (#207)

Note: this is not the final commit for this functionality, so use with caution for now

* Use 4-way key shares for AES private keys

The privateaes.bin key file is now 4x256bit numbers (A,B,C,D), and the AES key X is A^B^C^D

* Remove check that ELF segments are between metadata blocks

This is not required, as you can still load data outside of the region between the metadata blocks which contain the binary - for example, loading code into scratch memory.

* Add enc_bootloader binary

You can now use `picotool encrypt --embed ...` to create a self-decrypting binary, using enc_bootloader

* Specify file types where useful for untyped files (json, pem, bin)

* Implement FIB workaround by storing inverse of row n in row n+32 of each OTP page

* Only delete existing load_maps when encrypting

These only cause issues when encrypting, as the old block needs to be included in the new load_map

When signing, the old load_map can be used again without issue


* Throw clearer error when using picotool >2.1.1 with SDK <=2.1.1

This is required due to 2.1.0 and 2.1.1 SDK releases pointing at picotool develop branch rather than the respective picotool releases (raspberrypi/pico-sdk#2401)

---------

Co-authored-by: Graham Sanderson <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant