1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-29 09:38:08 +00:00
Commit Graph

1080 Commits

Author SHA1 Message Date
Andrew Kozlik
a1be6f8aef fix(core/prodtest): Configure metadata correctly before checking device certificate.
[no changelog]
2023-12-15 11:18:22 +01:00
tychovrahe
d0a702eef4 fix(core): fix large area marquee rendering
[no changelog]
2023-12-14 17:35:27 +01:00
Andrew Kozlik
cbea765e38 feat(core/prodtest): Verify device certificate chain in CERTDEV WRITE.
[no changelog]
2023-12-08 12:30:28 +01:00
Andrew Kozlik
3a5aecf6cd feat(core/prodtest): Add SEC READ command.
[no changelog]
2023-12-08 12:30:28 +01:00
Martin Milata
18ccbcddd4 chore(core): bump version to 2.6.5
[no changelog]
2023-12-07 14:10:07 +01:00
gabrielkerekes
a8096652e0 refactor(core): make ethereum summary reusable for more coins
- and use it for Solana
2023-12-05 22:11:41 +01:00
grdddj
747fd17214 fix(core): correct action of left button in Ethereum summary
[no changelog]
2023-12-05 18:22:58 +01:00
grdddj
9a53ba9f44 fix(core): unify button requests in modify amount flow
[no changelog]
2023-12-04 13:15:57 +01:00
grdddj
9db8ff1fae fix(core): unify sent button requests in ETH send flow
Makes sure T2B1 will send the same ButtonRequests as T2T1.
Does it by splitting the Rust layout into two separate dialogs.

[no changelog]
2023-12-04 13:15:57 +01:00
Andrew Kozlik
d670a0bdfa feat(core): Fix malformed signatures from Optiga. 2023-12-01 00:09:17 +01:00
tychovrahe
a2f72b1055 feat(core): optimize boot time by drawing full logo sooner and shortening the enforced delay proportionally
[no changelog]
2023-11-30 16:46:04 +01:00
tychovrahe
7b442a2b20 fix(core): improve T2B1 homescreen checks
[no changelog]
2023-11-30 13:42:02 +01:00
matejcik
ba6cce2bbc fix(core/rust): make Toif constructor return a Result instead of Option
which is slightly more correct
2023-11-30 13:42:02 +01:00
matejcik
d674634c86 chore(core/rust): bump cstr_core, enable nightly features
So that cstr! can be used in const contexts. This is not critical but it's nice-to-have as long as we are on nightly anyway.
2023-11-30 13:42:02 +01:00
grdddj
4b87bc56d8 feat(core): set maximum number of chunkified lines to 4
[no changelog]
2023-11-27 16:03:16 +01:00
tychovrahe
47f8a430e6 refactor(core): remove residual usage of old flash api
[no changelog]
2023-11-22 11:45:54 +01:00
tychovrahe
c48c86d61f fix(core): add missing display_refresh calls in TT UI
[no changelog]
2023-11-22 10:26:50 +01:00
tychovrahe
c2de5506bc fix(core): add boundaries check for icon rendering (framebuffer variant)
[no changelog]
2023-11-22 10:26:50 +01:00
grdddj
1968599bbc fix(core): fix the chunkification of longer Cardano addresses in send flow
[no changelog]
2023-11-22 09:00:58 +01:00
Martin Milata
5725050be1 build(core): fix CI bootloader build for T2B1
[no changelog]
2023-11-14 18:37:03 +01:00
tychovrahe
bf2697a619 feat(core): compress embedded bootloader
[no changelog]
2023-11-14 13:25:00 +01:00
Martin Milata
1c69644fe0 build(core): add flag for disabling optiga on debug builds
[skip_ci]
2023-11-14 12:47:22 +01:00
Martin Milata
ebeea4a209 build(core): more deterministic bootloader_hashes.py
[no changelog]
2023-11-08 15:39:24 +01:00
Martin Milata
ba25084904 chore(core): add unsafe vendor header for T2B1
[no changelog]
2023-11-03 14:50:39 +01:00
Martin Milata
0db3d7c12c chore(core): update btconly vendor header for T2B1
[no changelog]
2023-11-03 14:50:39 +01:00
Martin Milata
c61e2293ad chore(core): bump version to 2.6.4
[no changelog]
2023-11-03 13:00:02 +01:00
Martin Milata
b0ca820983 chore(core): add signed vendor headers for TS3 2023-11-02 12:17:13 +01:00
matejcik
e43b57f499 chore(core): add btc-only vendor header 2023-11-02 12:17:13 +01:00
matejcik
43ffbadbb9 chore(core): regenerate T2B1 vendor headers 2023-11-02 12:17:13 +01:00
matejcik
1df7428359 chore(core): update T2B1 vendor header configuration 2023-11-02 12:17:13 +01:00
Martin Milata
a6600fc7e9 feat(core): include signed bootloaders 2.1.4
For T2B1 and T2T1.
2023-11-02 11:53:53 +01:00
matejcik
3a28ab4c11 feat(core): make lockscreen blank for T2B1
also allow soft-locking even when PIN is not set
2023-11-01 16:45:29 +01:00
matejcik
1e29ce9fb4 chore(core/bootloader): bump version after release 2023-11-01 13:46:50 +01:00
matejcik
0953d2f6aa docs(core/bootloader): changelog for 2.1.4 2023-11-01 13:46:50 +01:00
matejcik
297b2bade7 feat(core/bootloader_emu): add ILU support 2023-10-31 14:57:05 +01:00
matejcik
5ee05ff391 feat(core/bootloader_emu): add support for setting device variant 2023-10-31 14:57:05 +01:00
tychovrahe
10021bf364 chore(core): fix gen and style problems
[no changelog]
2023-10-31 13:32:20 +01:00
matejcik
c5817bed6d chore(core): embed QA bootloaders 2.1.4 2023-10-27 16:46:22 +02: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
02f34a2748 feat(core/bootloader): check firmware padding 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
Martin Milata
9c5d3b4831 fix(core/ui): T2T1: nudge page_prev_ellipsis to the right
[no changelog]
2023-10-27 11:50:12 +02:00
Martin Milata
18d6b4d647 fix(core/ui): T2T1: update sign message layout 2023-10-26 18:29:52 +02:00
Martin Milata
9e33eb3e48 fix(core/ui): T2T1: display coinjoin icon on lockscreen
[no changelog]
2023-10-26 13:35:43 +02:00
grdddj
02ec0ac43c feat(core): support recipient address chunkification in Ethereum sign flow
[no changelog]
2023-10-25 11:49:43 +02:00
grdddj
37fcbceded feat(core): make middle-click unlock the device for T2B1
[no changelog]
2023-10-23 14:53:01 +02:00
tychovrahe
8a4f376f20 refactor(core): prepare fw for differently sized fw chunks
[no changelog]
2023-10-20 16:33:53 +02:00
tychovrahe
a16fbe6237 fix(core/prodtest): fix failing optiga communication
[no changelog]
2023-10-18 13:15:49 +02:00
Martin Milata
f26a2e909e fix(core/ui): wording in recovery flow
[no changelog]
2023-10-18 12:04:52 +02:00
Martin Milata
a353c35b78 fix(core/ui): draw hold-to-confirm loader over dialog title
[no changelog]
2023-10-16 13:18:50 +02:00
Martin Milata
d99e1eedd2 refactor(core/ui): clear display on rust side
[no changelog]
2023-10-16 13:18:50 +02:00
Martin Milata
d8e7c00087 refactor(core/ui): pagination and buttons on TT 2023-10-16 13:18:50 +02:00
matejcik
4f2c639ed7 feat(core): T2B1 final design for emulator 2023-10-12 12:58:37 +02:00
Martin Milata
fca82273cf Merge branch 'release/23.09' 2023-10-11 23:34:06 +02:00
tychovrahe
df42c99bc9 feat(core): add basic support for efficient frame buffer graphics
[no changelog]
2023-10-10 19:01:43 +02:00
matejcik
d9112b5a8d chore(core/prodtest): bump version after release 2023-10-06 10:49:29 +02:00
matejcik
06f77f745f docs(core/prodtest): introduce changelog 2023-10-06 10:49:29 +02:00
matejcik
11b12ea258 chore(core/prodtest): bump prodtest version 2023-10-06 10:49:29 +02:00
cepetr
6668f47666 docs(prodtest): document prodtest protocol
[no changelog]
2023-10-06 10:03:29 +02:00
cepetr
03464bea4d feat(prodtest): make prodtest welcome screen white (T2B1 only)
[no changelog]
2023-10-06 10:03:29 +02:00
Andrew Kozlik
3ca8f26fd0 feat(core): Implement Optiga counter operations. 2023-10-04 11:22:46 +02:00
Andrew Kozlik
1fa2929607 feat(core): Distinguish Optiga errors from invalid PIN. 2023-10-04 11:22:46 +02:00
Andrew Kozlik
4c7979ae30 feat(core): Propagate Optiga errors. 2023-10-04 11:22:46 +02:00
matejcik
240f4f56cd fix(core/optiga): add correct key usage to OID_PIN_CMAC 2023-10-04 11:22:46 +02:00
matejcik
3c413ecf02 fix(storage): correctly fail when Optiga operations fail 2023-10-04 11:22:46 +02:00
tychovrahe
6e5967af25 fix(core): adjust T2B1 display SPI baudrate
[no changelog]
2023-10-02 22:14:58 +02:00
grdddj
532f368a14 feat(core): not allowing to send empty PIN in T2B1
[no changelog]
2023-10-02 22:14:58 +02:00
tychovrahe
c937f21447 refactor(core): change the way USE_OPTIGA is added to build
[no changelog]
2023-10-02 20:59:50 +02:00
Andrew Kozlik
cb21ca8dc5 feat(core): Implement Optiga counter operations. 2023-10-02 20:26:00 +02:00
Andrew Kozlik
aed5912fbf feat(core): Distinguish Optiga errors from invalid PIN. 2023-10-02 20:26:00 +02:00
Andrew Kozlik
68876170fe feat(core): Propagate Optiga errors. 2023-10-02 20:26:00 +02:00
Martin Milata
f226c9599b fix(core/ui): better contrast for bip39 keyboard button
[no changelog]
2023-10-02 19:04:28 +02:00
matejcik
e28dff677c fix(core/optiga): add correct key usage to OID_PIN_CMAC 2023-10-02 16:57:15 +02:00
matejcik
9d86352352 fix(storage): correctly fail when Optiga operations fail 2023-10-02 16:57:15 +02:00
matejcik
c6c8d85200 chore(core): embed signed bootloader 2.1.3 2023-10-02 16:57:15 +02:00
tychovrahe
e39ab74949 fix(core): adjust T2B1 display SPI baudrate
[no changelog]
2023-10-02 16:45:05 +02:00
grdddj
07fb451048 feat(core): not allowing to send empty PIN in T2B1
[no changelog]
2023-10-02 16:33:51 +02:00
Martin Milata
3021df8f65 chore(core): bump version to 2.6.3
[skip_ci]
2023-09-29 20:20:19 +02:00
Martin Milata
040f6c2c8e Merge branch 'master' into release/23.09 2023-09-29 16:42:23 +02:00
matejcik
193a53f22b feat(core/rust): use MODEL_FULL_NAME from build system
[no changelog]
2023-09-29 16:27:27 +02:00
matejcik
d913181079 docs(core): add docstrings to modtrezorutils constants
[no changelog]
2023-09-29 16:27:27 +02:00
matejcik
c892d4b0ba refactor(core): inject full model name from build script
so that we don't have to do awkward string operations when we need it

[no changelog]
2023-09-29 16:27:27 +02:00
grdddj
b07f4d938a fix(core): make the marquee take always 2 seconds to animate from end to end
[no changelog]
2023-09-29 14:19:38 +02:00
matejcik
ff4197c50a chore(core): generate changelog, bump bootloader version after release 2023-09-29 11:47:40 +02:00
Andrew Kozlik
b3d0fb68ff feat(core): Improve Optiga transport error handling. 2023-09-27 17:17:09 +02:00
Andrew Kozlik
7d92e70cc3 feat(core): Hide repetitions in Optiga logging. 2023-09-27 17:17:09 +02:00
Andrew Kozlik
dee559f4f9 feat(core): Integrate Optiga into PIN verification. 2023-09-27 17:17:09 +02:00
Andrew Kozlik
6ca1182d85 refactor(core): Add "META" to metadate-related Optiga constants.
[no changelog]
2023-09-27 17:17:09 +02:00
grdddj
046ff15275 feat(core): show the preview of default homescreen image
[no changelog]
2023-09-27 14:14:42 +02:00
matejcik
fbd5c466f0 chore(core): embed QA bootloader 2.1.3 2023-09-27 13:20:02 +02:00
matejcik
bb5b91b920 Merge branch 'master' into release/23.09 2023-09-27 12:58:22 +02:00
tychovrahe
5d017e928d fix(core): reset optiga during initialization
[no changelog]
2023-09-27 12:14:32 +02:00
tychovrahe
510281590f fix(core): add delays to optiga i2c communications
[no changelog]
2023-09-27 12:14:32 +02:00
Ondrej Mikle
36e4a444bb feat(core/bootloader): make bootloader more robust against glitches
[no changelog]
2023-09-27 12:14:13 +02:00
tychovrahe
a6d0842663 fix(core/bootloader): fix erroneous shutdown when rejecting firmware upload 2023-09-27 12:14:13 +02:00
grdddj
a3f137d488 feat(core): forcing the letter to always change after selection in T2B1 recovery
[no changelog]
2023-09-26 09:28:11 +02:00
grdddj
65c9380ab7 feat(core): triggering delete action in ChoicePage after 1 second even without release
[no changelog]
2023-09-26 08:07:32 +02:00
grdddj
e06335d877 feat(core/rust): differentiate between short and long button press
With the help of this, making long DELETE press delete all the
inputted characters in PIN or passphrase entries.

[no changelog]
2023-09-21 11:30:02 +02:00
tychovrahe
29c16c212d fix(core): fix T2B1 "restarting in" label capitalization
[no changelog]
2023-09-20 21:36:07 +02:00
grdddj
0c4540ae0a feat(core): show new homescreen preview for T2B1
[no changelog]
2023-09-20 13:58:05 +02:00
Andrew Kozlik
1f7c78a4ed test(core): Update emulator device certificate.
[no changelog]
2023-09-19 21:41:42 +02:00
grdddj
42a6a5ac9b chore(core): adjust the chunkification logic to account for really mono font
Also improving the positioning of prev/next page arrows when paginating.

[no changelog]
2023-09-19 11:48:58 +02:00
grdddj
ad5c1858c1 chore(core,font): change some glyphs in PixelOperatorMono8
This makes the font really "mono", as previously some characters were
wider than others (m, w, M or W), which did not look good when
relying on the mono properties.

[no changelog]
2023-09-19 11:48:58 +02:00
tychovrahe
3c1236bf82 refactor(core): setup single-place layout selection
[no changelog]
2023-09-18 18:05:37 +02:00
Martin Milata
b9dbdc7057 chore(core): bump version to 2.6.2
[no changelog]
2023-09-18 16:27:07 +02:00
Martin Milata
07027a69e9 Merge branch 'master' into release/23.09 2023-09-15 14:33:20 +02:00
matejcik
21959996bd feat(core/bootloader_emu): allow explicit bootloader locking from command line 2023-09-15 14:08:02 +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
f881fab797 fix(core): disable access to secret in flash after boot
[no changelog]
2023-09-15 13:31:24 +02:00
Andrew Kozlik
686aa78aa7 feat(core): Use Optiga as a source of randomness. 2023-09-15 11:16:57 +02:00
grdddj
8a9354cd85 chore(core): separate confirm_output for T2B1 into two layouts so we can send a button request in between
[no changelog]
2023-09-15 09:50:21 +02:00
grdddj
bcb353a4a1 feat(core): support optional chunkification of addresses in receive and send flows 2023-09-15 09:50:21 +02:00
grdddj
76c6e9cd9d feat(all): implement support information for T2B1
WIP - change trezor{1,2} to their internal names, add support for model R

WIP - add EOS and NEM features Capability only for TT

WIP - not include EOS and NEM into TR

WIP - choose between device models when generating coininfo

WIP - regenerate coininfo.py

WIP - skip NEM, EOS, Dash, BGold and Decred device tests for TR

WIP - fix python support

WIP - fix unit tests

WIP - import bitcoin-like code only when needed

WIP - remove ignored coins for TR in fixtures.json

WIP - make all the external references to models UPPERCASE

WIP - do the model separation in mako script also for tokens and networks

WIP - hot-fixing non-supporting RELEASES_URL for new model names

WIP - support.py releases CLI command takes a list of -r key-value pairs DEVICE=VERSION

WIP - run `python support.py release`

WIP - use utils.MODEL_IS_T2B1 to ignore NEM and EOS

WIP - change all the docs and commands to have UPPERCASE model names

[no changelog]
2023-09-14 13:54:09 +02:00
grdddj
4b9d22066c chore(core/rust): change the position of up arrow icon
[no changelog]
2023-09-14 11:43:43 +02:00
matejcik
efab85a963 chore(core): include signed and QA bootloaders 2023-09-14 10:13:38 +02:00
grdddj
568c5f135b feat(core/rust): add ChoicePage animation and hold-to-move functionality
[no changelog]
2023-09-13 17:12:51 +02:00
grdddj
272fb4842a feat(core/rust): show last entered passphrase character for T2B1
[no changelog]
2023-09-13 17:12:51 +02:00
matejcik
afa6f84174 feat(core): custom exception types for Optiga 2023-09-13 15:45:48 +02:00
tychovrahe
024ea604ca fix(core): fix optiga warm reset start-up time
[no changelog]
2023-09-13 15:45:48 +02:00
Andrew Kozlik
db6630a5a3 feat(core): Support Optiga in Trezor firmware. 2023-09-13 15:45:48 +02:00
Andrew Kozlik
8010cfb5b6 feat(core): Add utils.USE_OPTIGA. 2023-09-13 15:45:48 +02:00
grdddj
70fa46a318 chore(core/rust): decrease top margin over homescreen label in T2B1
[no changelog]
2023-09-12 13:44:21 +02:00
grdddj
623e0ce468 chore(core/rust): improve vertical centering in some screens
[no changelog]
2023-09-12 11:06:38 +02:00
grdddj
d2f67d48fa chore(core/rust): transform if-elif into match
[no changelog]
2023-09-12 11:06:38 +02:00
Martin Milata
7e9f127aec feat(core): revise path warning on model T 2023-09-12 00:39:08 +02:00
Martin Milata
58ffe95369 fix(core): display XPUBs in a similar way to addresses
[no changelog]
2023-09-12 00:39:08 +02:00
Ondrej Mikle
bf96c43d32 chore(core): cstyle reformat
DSVibram AR fix
2023-09-11 14:36:11 +02:00
Ondrej Mikle
ac64d2d2f1 fix(core): one forgotten ensure_compatible_settings 2023-09-11 14:36:11 +02:00
Ondrej Mikle
75a148e414 fix(core): clear memory when not going to use copy firmware header for bootloader 2023-09-11 14:36:11 +02:00
Ondrej Mikle
c0c544b7d8 fix(core): fix bootloader_ci startup, remove unused function from limited_util.s
Fix changelog messages
2023-09-11 14:36:11 +02:00
Ondrej Mikle
b69ef9d168 feat(core): Copy firmware image header to bootloader RAM to be able to skip directly to firmware install, jumping from firmware to bootloader
Change linking of util.s and limited version of util.s to avoid mistakes
with boardloader etc.
2023-09-11 14:36:11 +02:00
grdddj
84659dc904 feat(core/rust): show WRONG PIN header in PIN entry after bad previous PIN input
[no changelog]
2023-09-11 09:29:12 +02:00
matejcik
6e0937c1ce chore(core/bootloader): bump version after release 2023-09-07 11:32:48 +02:00
matejcik
965d3182a0 docs(core/bootloader): generate changelog for 2.1.2 2023-09-07 11:32:48 +02:00
matejcik
409ef8abcd chore(core/embed/boardloader): bump version after release 2023-09-06 11:28:34 +02:00
matejcik
636b964119 chore(core/embed/boardloader): generate changelog, set correct version 2023-09-06 11:28:34 +02:00
matejcik
34b1980893 docs(core/embed/boardloader): add missing changelog entry 2023-09-06 11:28:34 +02:00
matejcik
59d35c8652 chore(core/bootloader): bump version after release 2023-09-06 11:09:45 +02:00
grdddj
8956350aca feat(core): create new Ethereum send flow for TT
[no changelog]
2023-09-04 13:50:30 +02:00
grdddj
eed6e0b71c feat(core): create new Ethereum send flow for TR
[no changelog]
2023-09-04 13:50:30 +02:00
grdddj
492ff958a5 feat(core): improve sign message designs
[no changelog]
2023-09-01 13:30:29 +02:00
grdddj
09cd64123b feat(core): implement show_more dialogue for TR
[no changelog]
2023-09-01 13:30:29 +02:00
matejcik
0532585105 docs(core/bootloader): generate changelog for 2.1.2 2023-08-30 15:54:03 +02:00
tychovrahe
bd0b0b2d15 refactor(core): move model specific norcow config to model header
[no changelog]
2023-08-29 11:17:19 +02:00
tychovrahe
33fc64b629 refactor(core): remove universal DMA driver
[no changelog]
2023-08-29 11:17:03 +02:00
matejcik
04ea95777b chore(core/prodtest): enable Optiga locking 2023-08-29 10:59:34 +02:00
matejcik
f40feec4f9 chore(core): bump prodtest version 2023-08-29 10:59:34 +02:00
Andrew Kozlik
5898b16cd2 feat(core): Implement OPTIGA VerifySign command. 2023-08-29 10:59:34 +02:00