1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-30 11:28:21 +00:00
Commit Graph

56 Commits

Author SHA1 Message Date
tychovrahe
21c1359ac6 refactor(core): streamline layout definitions
[no changelog]
2024-09-27 09:49:20 +02:00
cepetr
7f3cff04f1 refactor(core/embed): introduce new mpu driver
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
ae4e195d6e refactor(core/embed): simplify bootutils api
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
0666e6ea9a refactor(core/embed): rename boot_args to bootuils
[no changelog]
2024-09-24 12:21:53 +02:00
tychovrahe
b685820fb3 feat(core): implement firmware downgrade protection 2024-09-03 13:07:34 +02:00
tychovrahe
d334b92073 feat(core): add bootloader unlocking functionality to U5 optiga models 2024-09-03 13:07:34 +02:00
tychovrahe
ee6410acdd fix(core/bootloader): fix repeated firmware upload
[no changelog]
2024-09-03 08:39:42 +02:00
tychovrahe
b8c27d5fd6 feat(core/bootloader): only allow confirm-less firmware installation for full-trust images 2024-09-03 08:39:42 +02:00
tychovrahe
dc276d1520 fix(core/bootloader): fix firmware update on stm32u5a
[no changelog]
2024-08-20 13:12:18 +02:00
tychovrahe
a265b0f176 fix(core/bootloader): evaluate model before vendor header signature when installing firmware 2024-08-20 12:22:35 +02:00
cepetr
5fc3c6e617 refactor(core): improve and simplify error handling
[no changelog]
2024-06-17 16:57:33 +02:00
Andrew Kozlik
c2c1591f5c chore(core): Improve VTRUST bits documentation and naming.
[no changelog]
2024-05-17 14:37:38 +02:00
Andrew Kozlik
27f54eec9c feat(core): Add unit packaging variant field to Features.
[no changelog]
2024-04-25 15:51:52 +02:00
tychovrahe
1600759457 refactor(core): simplify secret.h api, hide platform differences
[no changelog]
2024-04-11 16:13:58 +02:00
tychovrahe
89147ef493 refactor(core): improve flash api by introducing flash_area_write_data function
[no changelog]
2024-04-03 10:18:40 +02:00
tychovrahe
70a673fabc feat(core): use flash bursts for faster flashing
[no changelog]
2024-03-19 13:17:25 +01:00
tychovrahe
c3f84e2949 perf(core): optimize boot speed on U5 by using has processor to calculate image hashes, switches to sha256
[no changelog]
2024-02-29 23:05:56 +01:00
cepetr
c4c571d837 chore(core): refactor boot_args
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
8150636a81 feat(core): add basic support for STM32U5 2024-02-29 23:05:56 +01:00
tychovrahe
8147b11345 fix(core): fix quadword-only storage
[no changelog]
2024-02-20 09:37:28 +01:00
Andrew Kozlik
b2f05f187f feat(storage): Work with generic flash blocks instead of quadwords.
[no changelog]
2024-02-20 09:37:28 +01:00
tychovrahe
10021bf364 chore(core): fix gen and style problems
[no changelog]
2023-10-31 13:32:20 +01:00
Ondrej Mikle
a4079d0cc5 chore(core/bootloader): make cstyle check work 2023-10-27 16:41:56 +02:00
Ondrej Mikle
6658ad84d1 fix(core/bootloader): explicit casts on version compare to control signed/unsigned arithmetic mix 2023-10-27 16:41:56 +02:00
cepetr
da7125f427 feat(core/bootloader): make firmware flashing more safe 2023-10-27 16:41:56 +02:00
cepetr
ba83a7e644 feat(core): introduce interaction-less upgrade 2023-10-27 16:15:15 +02:00
Andrew Kozlik
c48b606867 feat(core): Add bootloader_locked flag to Features message.
[no changelog]
2023-09-15 14:08:02 +02:00
tychovrahe
6d9e4321fd feat(core): add install restricted screen on installation with locked bootloader
[no changelog]
2023-08-25 14:41:59 +02:00
tychovrahe
e8281385f6 feat(core): implement secret handling in bootloader 2023-08-15 09:37:38 +02:00
tychovrahe
238e3fd7c1 refactor(core): add abstraction over flash memory layout
[no changelog]
2023-07-25 10:25:20 +02:00
tychovrahe
8d812ca36e feat(core): support device variants
[no changelog]
2023-06-07 19:48:53 +02:00
tychovrahe
a2f8cb9d1c feat(core): add internal model field to features
[no changelog]
2023-06-06 09:39:45 +02:00
matejcik
dd4d020a76 fix(core/bootloader): correctly handle images smaller than one chunk 2023-04-14 16:20:49 +02:00
matejcik
a2f7d8395f fix(core/bootloader): erase the storage as soon as we know we should
This fixes a problem that would previously cause the storage to be
erased every time.
2023-04-03 22:01:26 +02:00
matejcik
7638694484 chore: make fields on FirmwareRequest required (fixes #1941)
[no changelog]
2023-04-03 22:01:26 +02:00
matejcik
63c27bafd6 fix(core/bootloader): properly display upgrade/downgrade 2023-04-03 22:01:26 +02:00
matejcik
ae9960ca61 feat(core): introduce bootloader emulator 2023-04-03 22:01:26 +02:00
tychovrahe
3f54b84aef fix(core/bootloader): fix retries when reading from USB 2023-03-22 15:09:39 +01:00
tychovrahe
5a991f3244 feat(core/rust): bootloader implementation in rust 2023-03-09 16:14:36 +01:00
tychovrahe
461f566777 fix(core/bootloader): fix detection of installed firmware
[no changelog]
2023-01-26 11:56:08 +01:00
tychovrahe
115f7daaaa feat(core): prevent installing and running of incompatible firmware, prevent bootloader downgrade 2023-01-12 15:38:36 +01:00
tychovrahe
c33f92bd72 feat(core): add RGB LED driver for Model R 2022-06-22 09:28:31 +02:00
Pavol Rusnak
b0e0280465 chore: drop obsolete fw_vendor_keys field from Features
[no changelog]
2022-01-03 14:23:58 +01:00
Pavol Rusnak
35d40cc164 fix(core): change logic of vendor header comparison
Previously we checked whether the current vendor header and
the new vendor header are the same by comparing the embedded keyset.

What originally looked like a good idea is not that good, because
this disallows us from ever changing the vendor header signing keys
without causing erasure of the storage during the version update.

This commit fixes that by changing the logic to comparing just the
vendor string.

Change of function names is purely cosmetic:
* vendor_keys_hash -> vendor_header_hash
* check_vendor_keys_lock -> check_vendor_header_lock
2022-01-03 14:23:58 +01:00
Pavol Rusnak
1e2bb337a9
refactor(core): drop buttons argument for ui_screen_firmware_info 2021-03-10 17:42:52 +01:00
Pavol Rusnak
5dd3d73d00
fix(core): remove unused stuff from bootloader_ci
plus minor ui function renames
2021-03-04 17:01:01 +01:00
Pavol Rusnak
2dc094bd3e
fix(core): small secbool refactors 2021-03-04 11:59:38 +01:00
Pavol Rusnak
f46380147f fix(core): update sync protobuf messages in bootloader 2021-02-10 10:56:52 +01:00
Pavol Rusnak
b9c0b3969b
legacy+core: unify error codes in bootloaders (#1347) 2020-11-18 11:21:57 +01:00
Pavol Rusnak
336a417233 core/bootloader: distinguish between a vendor change and downgrade with wipe 2020-03-25 15:15:12 +01:00