Skip to content
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

release new production signed bootloader to get touchpad updates #1901

Closed
mcudev opened this issue Nov 7, 2021 · 2 comments · Fixed by #2940
Closed

release new production signed bootloader to get touchpad updates #1901

mcudev opened this issue Nov 7, 2021 · 2 comments · Fixed by #2940
Assignees
Labels
bootloader core Bootloader for Trezor core code Code improvements

Comments

@mcudev
Copy link
Contributor

mcudev commented Nov 7, 2021

I'd like to request that a new signed production bootloader be released in order to get the fix for #1519 into production devices.

It looks like the latest bootloader released with production signatures is 2.0.3 from early 2019 (according to trezor-firmware/core/embed/bootloader/CHANGELOG.md and trezor-firmware/core/CHANGELOG.md).

That bootloader binary is stored at trezor-firmware/core/embed/firmware/bootloader.bin as identified by trezor-firmware/core/embed/firmware/bootloader_hashes.py and trezor-firmware/core/embed/firmware/bl_check.c, and also by trezor-firmware/core/tools/headertool.py trezor-firmware/core/embed/firmware/bootloader.bin.

To note, trezor-firmware/core/embed/bootloader/version.h has already been updated to 2.0.4.

A new bootloader will need to be built and signed and then some files, including at least the following, will need to be updated:

  • trezor-firmware/core/embed/firmware/bootloader.bin
  • trezor-firmware/core/embed/firmware/bl_check.c
  • trezor-firmware/core/CHANGELOG.md
  • trezor-firmware/core/embed/bootloader/CHANGELOG.md

I have an affected device, and I was able to workaround the old bootloader and load a new firmware that contains this fix by opening the case and dropping on a temporary screen + ctpm. After I got the new firmware on the device, then I put the original affected display + ctpm back on and was able to use touch for all the firmware functions, but none of the bootloader functions.

With this new requested bootloader, I could have just grabbed it from the distributed production firmware binary and written it to a microSD, and then loaded the new bootloader onto the device via the microSD + boardloader. That's the way that any other affected users could more easily benefit from the work requested by this issue. Thanks!

@mcudev mcudev added the code Code improvements label Nov 7, 2021
@alex-jerechinsky alex-jerechinsky added LOW low hanging fruit Simple, quick task. labels Nov 8, 2021
@hiviah
Copy link
Contributor

hiviah commented Nov 8, 2021

@prusnak I can do the the necessary steps to get the bootloader included into FW, but need you to sign it. Are you able to sign the bootloader in near future?

So mcudev could take the signed binary from a branch, and we will include the bootloader in next FW release.

@prusnak
Copy link
Member

prusnak commented Nov 8, 2021

We need to fix #1571 first before releasing the new bootloader. Let's hope this will happen in Q1 2022.

@prusnak prusnak added bootloader core Bootloader for Trezor core and removed low hanging fruit Simple, quick task. labels Nov 8, 2021
@hynek-jina hynek-jina removed the LOW label May 6, 2022
@Hannsek Hannsek added this to the New Bootloader for TT milestone Dec 13, 2022
@Hannsek Hannsek moved this to 🎯 To do in Firmware Feb 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bootloader core Bootloader for Trezor core code Code improvements
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

6 participants