1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-03-13 06:36:06 +00:00
Commit Graph

4456 Commits

Author SHA1 Message Date
obrusvit
55101b8013 fix(core): fix delizia set brightness setting
[no changelog]
2025-03-03 15:59:59 +01:00
matejcik
5f94715ca7 fix(core/rust): correctly extend SwipeAttach animation duration
so that it covers the interval from the Attach event until timer running
out.

Without this change, it is possible to slip in a TouchStart event before
the animation timer has had a chance to start, and lose the matching
TouchEnd.

(cherry picked from commit f59deebfba)
2025-03-03 15:55:15 +01:00
matejcik
f59deebfba fix(core/rust): correctly extend SwipeAttach animation duration
so that it covers the interval from the Attach event until timer running
out.

Without this change, it is possible to slip in a TouchStart event before
the animation timer has had a chance to start, and lose the matching
TouchEnd.
2025-03-03 15:42:09 +01:00
tychovrahe
dcf9002f00 feat(core/prodtest): add hw-revision command and driver 2025-03-03 13:28:10 +01:00
tychovrahe
a22c15663c chore(core): fix typo
[no changelog]
2025-03-03 13:28:10 +01:00
Roman Zeyde
9b11cc7577 feat(core): use SwipeFlow::add_page to reduce stack usage
[no changelog]
2025-03-03 13:28:33 +02:00
tychovrahe
587b5e8eb8 fix(core): fix jump to old bootloader
Initialize systick before jump, as the old bootloaders may not initialize systick on start and rely on systick running from boardloader or firmware. Only relevant for F4, otherwise we are jumping through reset.

[no changelog]
2025-02-28 16:17:06 +01:00
tychovrahe
511a4f3b93 fix(core/prodtest): fix touch draw test
[no changelog]
2025-02-28 15:32:49 +01:00
tychovrahe
a77f1f1a99 fix(core): fix jump to old bootloader
Initialize systick before jump, as the old bootloaders may not initialize systick on start and rely on systick running from boardloader or firmware. Only relevant for F4, otherwise we are jumping through reset.

[no changelog]

(cherry picked from commit 0536ed6f50)
2025-02-28 15:22:32 +01:00
Ioan Bizău
dcf65b1d8f chore(core): remove unnecessary check
[no changelog]
2025-02-28 14:15:45 +01:00
Ioan Bizău
d0681212b0 fix(core): use BIP-340 to sign Nostr events
[no changelog]
2025-02-28 14:15:45 +01:00
Ioan Bizău
50879cd4da chore(core/nostr): remove Nostr from production build
[no changelog]
2025-02-28 14:15:45 +01:00
Ioan Bizău
aabd4ee9b7 feat(core/ui): add basic confirmation for Nostr signing
[no changelog]
2025-02-28 14:15:45 +01:00
Ioan Bizău
073038771e feat(core): introduce Nostr
[no changelog]
2025-02-28 14:15:45 +01:00
Roman Zeyde
0b5dbcae1b feat(core): confirm multiple Solana Deactivate/Withdraw instructions
[no changelog]

(cherry picked from commit 1954c7cbc2)
2025-02-28 12:56:10 +01:00
Roman Zeyde
9321227ddb fix(core): fix ExtraInfo menu cancellation
[no changelog]

(cherry picked from commit ac49c3e284)
2025-02-28 12:55:47 +01:00
Roman Zeyde
1954c7cbc2 feat(core): confirm multiple Solana Deactivate/Withdraw instructions
[no changelog]
2025-02-28 13:51:37 +02:00
Roman Zeyde
ac49c3e284 fix(core): fix ExtraInfo menu cancellation
[no changelog]
2025-02-28 13:51:37 +02:00
Roman Zeyde
da6d4afc7d fix(core): use SwipeFlow::add_page to save stack memory
[no changelog]

(cherry picked from commit bd496a9e95)
2025-02-27 18:25:54 +01:00
Roman Zeyde
674342b594 fix(core): use SwipeFlow::add_page to save stack memory
[no changelog]
2025-02-27 18:20:20 +02:00
tychovrahe
323107e6a8 fix(core): fix jpeg blurring and dimming area
[no changelog]
2025-02-27 10:12:53 +01:00
tychovrahe
4af18b66eb fix(core): fix rendering of outlined Bars
[no changelog]
2025-02-27 10:12:34 +01:00
Roman Zeyde
8568378a8a fix(core): confirm only visible Solana staking instructions
[no changelog]

(cherry picked from commit ee1cc4ae81)
2025-02-26 20:47:18 +01:00
Andrew Kozlik
91ee49c20b chore(core, crypto): Remove unused function mnemonic_generate().
[no changelog]
2025-02-26 17:20:58 +01:00
Roman Zeyde
ee1cc4ae81 fix(core): confirm only visible Solana staking instructions
[no changelog]
2025-02-26 15:25:31 +02:00
cepetr
f5a51b0671 feat(core): enable hw decoding of grayscale JPEGs
[no changelog]
2025-02-26 12:06:44 +01:00
tychovrahe
4221b8514b feat(core/prodtest): implement NRF test functions
[no changelog]
2025-02-26 10:27:14 +01:00
tychovrahe
c97dd18c2d fix(core): fix NRF communication long message check
[no changelog]
2025-02-26 10:27:14 +01:00
tychovrahe
93f20bead1 feat(core/prodtest): add BLE testing
[no changelog]
2025-02-26 10:27:14 +01:00
tychovrahe
1fd83a9584 fix(core): fix nrf reboot function
[no changelog]
2025-02-26 10:27:14 +01:00
cepetr
c57a59d123 feat(rust): introduce info overlay rendering
[no changelog]
2025-02-26 09:56:08 +01:00
cepetr
c72d85296d refactor(rust): improve time module
[no changelog]
2025-02-26 09:56:08 +01:00
tychovrahe
10f3011663 feat(core/prodtest): add touch-draw command to prodtest
[no changelog]
2025-02-26 08:53:36 +01:00
tychovrahe
32bf5d82ff feat(core/prodtest): add tropic01 HAL integration and basic production tests
[no changelog]
2025-02-26 08:53:16 +01:00
obrusvit
2c94dc24df docs(core): fix entries in changelog 2025-02-26 02:03:27 +01:00
obrusvit
f88ce9ac9a docs(core): changelog for 2.8.9
- command: ./tools/changelog.py generate --date "19th March 2025" core
2.8.9
2025-02-26 01:47:11 +01:00
obrusvit
331f71dc91 chore(common): set definitions timestamp 2025-02-26 01:24:30 +01:00
matejcik
cd6ad7312e fix(core): delizia tutorial should allow swipe-up from confirmation screens 2025-02-26 01:17:11 +01:00
matejcik
2dc14ad1e0 fix(core): modify Delizia tutorial to account for tap-to-continue 2025-02-26 01:17:11 +01:00
matejcik
6441d41646 fix(core): change "Swipe up" to "Tap to continue" everywhere 2025-02-26 01:17:11 +01:00
matejcik
f04b022662 refactor(core/rust): add a helper for a swipeup-footer 2025-02-26 01:17:11 +01:00
matejcik
b015eac9f7 style(core/rust): fix clippy complaints 2025-02-26 01:17:11 +01:00
matejcik
18fc7e1f82 refactor(core/rust): remove internal pager from SwipePage 2025-02-26 01:17:11 +01:00
matejcik
6906b532bb feat(core/rust): enlarge delizia footer touch area to make it easier to hit 2025-02-26 01:17:11 +01:00
matejcik
1f0ec4d3c0 fix(core/rust): respond to the correct button in Address info 2025-02-26 01:17:11 +01:00
matejcik
741731638b refactor(core/rust): force recalculate Paragraphs visibility when updating content 2025-02-26 01:17:11 +01:00
matejcik
2982f6db37 refactor(core/rust): propagate footer button message everywhere
this generally simplifies the mappings of Frame messages, but also
relies on the button actions being properly set up.
2025-02-26 01:17:11 +01:00
matejcik
f0746e44fe feat(core/rust): delizia hotfix - make footer act as a swipe-up button
We introduce a new variant FlowMsg::Next, used only internally (for
now). Sending FlowMsg::Next indicates we want to proceed to the next
screen of the flow.

If there is internal pagination, Next will play a simulated swipe to the
child component.
2025-02-26 01:17:11 +01:00
matejcik
51e796ee30 feat(core/rust): introduce trait PaginateFull throughout Delizia
PaginateFull uses Pager instead of reporting just the total number of
pages. Delizia will rely on this trait; going forward, we'll want
PaginateFull to replace Paginate, but this refactor would be too big if
we also needed to include Caesar and Bolt in it
2025-02-26 01:17:11 +01:00
matejcik
6c8391ab18 feat(core/rust): introduce Pager 2025-02-26 01:17:11 +01:00
Ioan Bizău
6c38f0d63d feat(core): friendlier way to confirm long messages 2025-02-25 22:51:16 +01:00
Ioan Bizău
64b9084b6c feat(core/ui): ability to cancel recovery on word count selector 2025-02-25 20:30:39 +01:00
matejcik
6d7b039e6a chore(core): update bundled bootloader for T3T1 to version 2.1.10 2025-02-25 18:53:21 +01:00
kopecdav
bdc8dbffe3 feat(core): Introduce nfc commands in prodtest & update NFC library [no changelog] 2025-02-25 18:29:54 +01:00
kopecdav
fc2cf1535e feat(core): Update NFC library and introduce NDEF parser [no changelog] 2025-02-25 18:29:54 +01:00
kopecdav
3ff18fb9bc refactor(core): Refactor DSI variable in RFAL library to avoid colision with STM HAL drivers. [no changelog] 2025-02-25 18:29:54 +01:00
kopecdav
e672cb08b4 feat(core): Introduce nfc module with rfal library [no changelog] 2025-02-25 18:29:54 +01:00
Roman Zeyde
1857612a37 feat(core): add Solana staking layouts 2025-02-25 11:55:03 +01:00
Roman Zeyde
19c9e502d7 feat(core): add new translation entries for Solana staking layouts
[no changelog]
2025-02-25 11:55:03 +01:00
Roman Zeyde
803955b047 feat(core): add description to Delizia confirm_output()
It will allow confirming the vote account for Solana staking.

[no changelog]
2025-02-25 11:55:03 +01:00
Roman Zeyde
8a5373c733 feat(core): add extra info item to summary menu on Delizia
It will allow confirming the blockhash for Solana transactions.

Also, simplify arguments passing into `new_confirm_output()`.

[no changelog]
2025-02-25 11:55:03 +01:00
Roman Zeyde
2284b338c8 feat(core): skip empty fee entry in UICaesar::confirm_summary
Otherwise, we may get an additional empty confirmation screen.

[no changelog]
2025-02-25 11:55:03 +01:00
Roman Zeyde
d33244912b refactor(core): separate base and priority Solana fees
Move fee calculation into `Transaction` class.

Also, replace floating-point division by integer division in fee calculation.

[no changelog]
2025-02-25 11:55:03 +01:00
kopecdav
9f03e0c37b feat(core): Add prodtest function which prints simple text log on the screen [no changelog] 2025-02-21 10:15:12 +01:00
matejcik
0c77c5102a fix(core): update translated strings to fit the button on Delizia 2025-02-20 16:09:14 +01:00
matejcik
61a3382abd fix(core/rust): increase capacity of debug error message
slicing the str like before is wrong because we may just happen to hit
in the middle of an utf8 sequence, which will cause a silent panic.
this way we at least get a visible panic: either "Text too long: <full
text>", or "unwrap failed" if the text doesn't fit into the 128-byte
string instance
2025-02-20 16:09:14 +01:00
matejcik
68d979a513 fix(core): exclude unused strings from firmware
this will prevent Rust code from building if it relies on a removed
string, and raise an AttributeError in python
2025-02-20 16:09:14 +01:00
matejcik
02190b5871 fix(core): do not repeat "cancel backup check" twice on screen 2025-02-20 16:09:14 +01:00
matejcik
87b7eccb6a fix(core): do not use local import for RecoveryAborted
This side-steps a double-import problem that is triggered when we
perform an unimport in a particularly unfortunate order. (don't ask)

The root cause of the problem still exists: we can get into a situation
where a live recovery_homescreen is running from an unimported module,
meaning that any new import of anything from the recovery_device
namespace will _also_ be a double-import. We don't have a fix for that
situation yet, so instead we avoid this particular local import, which
would cause homescreen_dialog to have its own copy of the `recover`
module.
2025-02-20 16:09:14 +01:00
matejcik
2ee0f7028c fix(core): update exception name in layout shutdown reporting
also return after the exception branch, so that the "value" is not
reported twice, once as an exception and a second time as a "non-none
return"
2025-02-20 16:09:14 +01:00
Martin Milata
d375db9fc2 fix(tools): changelog.py: stricter model list format 2025-02-19 22:05:32 +01:00
matejcik
ca78c01e28 build(core/rust): fix cargo build without envvars
...restoring functionality of rust-analyzer
2025-02-19 19:21:38 +01:00
Ioan Bizău
609e14264f fix(core/ui): back button
[no changelog]
2025-02-19 16:14:08 +01:00
obrusvit
45adcd963a refactor(core): remove unused delizia component
[no changelog]
2025-02-18 13:04:44 +01:00
Roman Zeyde
ae3b6434fc feat(core): allow more paragraphs in ShowInfoParams
Otherwise, it fails when showing 4 items.

Note that each item results in 2 paragraphs (key and value).
Also, items are separated by an empty paragraph.

So 3 items use 8 (2*3+2) paragraphs and 4 items use 11 (2*4+3) paragraphs.

[no changelog]
2025-02-18 12:32:35 +01:00
Roman Zeyde
0abfc7b1f9 fix(core): correct Delizia loader completion detection
This issue was found while debugging a flaky click test:
`tests/click_tests/test_lock.py::test_hold_to_lock`

Sample failures:
https://github.com/trezor/trezor-firmware/actions/runs/13209659963/job/36880750418
https://github.com/trezor/trezor-firmware/actions/runs/13189762414/job/36820368643
https://github.com/trezor/trezor-firmware/actions/runs/13146713535/job/36686537519
https://github.com/trezor/trezor-firmware/actions/runs/13124809110/job/36619045092
https://github.com/trezor/trezor-firmware/actions/runs/13103415015/job/36554567296
https://github.com/trezor/trezor-firmware/actions/runs/13093382180/job/36532710349

[no changelog]
2025-02-18 12:29:32 +01:00
Roman Zeyde
ffc4b57e70 docs(core): fix micropython GC arena analysis tool name
[no changelog]
2025-02-18 11:56:42 +01:00
Roman Zeyde
f4ebc0d9d8 docs(core): fix get_bytes_as_str docstring
[no changelog]
2025-02-18 11:56:42 +01:00
tychovrahe
13c078f8af fix(core): bump T3W1 revB revision
[no changelog]
2025-02-15 18:44:48 +01:00
cepetr
aa29681939 doc(prodtest): document pmic and wpc commands
[no changelog]
2025-02-14 22:22:33 +01:00
cepetr
de73b38aae feat(core): introduce hibernate mode
[no changelog]
2025-02-14 16:43:22 +01:00
tychovrahe
79d14b8907 fix(core): fix TS5 bootloader font
[no changelog]
2025-02-14 09:51:45 +01:00
tychovrahe
e47b604c48 fix(core): fix stwlc38 deinitialization
[no changelog]
2025-02-13 13:25:34 +01:00
obrusvit
612d20b535 Merge branch 'release/translations/25.02' into obrusvit/merge-release-25.02 2025-02-13 11:42:08 +01:00
obrusvit
c69d2c9aff Merge branch 'release/25.02' into obrusvit/merge-release-25.02 2025-02-13 11:42:08 +01:00
cepetr
ef51ea7801 fix(core): fix touch activity detection in bootloader
[no changelog]
2025-02-13 11:21:04 +01:00
cepetr
850b52c1fe fix(core): fix hw jpegdec issue with grayscale images
[no changelog]
2025-02-13 08:28:08 +01:00
obrusvit
45394f2b26 chore(core): bump bootloader version to 2.1.11
[no changelog]
2025-02-12 14:25:26 +01:00
obrusvit
2d20d43944 chore(core): bump version to 2.8.9
[no changelog]
2025-02-12 14:25:26 +01:00
Roman Zeyde
ae9e0281df refactor(core): separate clear_unused_stack() from sys/linker module
Following https://github.com/trezor/trezor-firmware/pull/4595#pullrequestreview-2609833271.

[no changelog]
2025-02-12 12:53:27 +01:00
Roman Zeyde
d38b52c0c4 refactor(core): simplify fade_backlight_duration
- IIUC, casting to and from `i32` can be removed.
- `timer.elapsed()` can be evaluated once per loop iteration.

[no changelog]
2025-02-12 12:33:14 +01:00
kopecdav
f1db0e6906 feat(core/prodtest): Allow prodtest to exit from interactive mode [no changelog] 2025-02-12 10:50:48 +01:00
cepetr
0456fdb826 fix(core): fix reboot_device function behaviour
[no changelog]
2025-02-11 17:02:31 +01:00
Ioan Bizău
b8e2709ca8 fix(core): fix br_code inconsistency in sign-tx
[no changelog]
2025-02-11 16:10:58 +01:00
Ioan Bizău
c8210056da fix(core/ui): fix back button
[no changelog]
2025-02-11 16:10:58 +01:00
Ioan Bizău
d487f97ecf feat(core): show ETH account info on model T 2025-02-11 16:10:58 +01:00
obrusvit
0d24ac4d79 refactor(core): remove C fonts generator
[no changelog]
2025-02-11 13:19:39 +01:00
tychovrahe
2774fb19de fix(core): enforce bolt UI for delizia-based models in prodtest
[no changelog]
2025-02-11 11:25:18 +01:00
tychovrahe
57789c7121 refactor(core): remove fonts and no longer used drawing functions from C
[no changelog]
2025-02-11 11:25:18 +01:00
tychovrahe
c3981cdebe refactor(core): render prodtest UI in rust
[no changelog]
2025-02-11 11:25:18 +01:00
tychovrahe
1700841856 refactor(core): unify way how rust is added to build
[no changelog]
2025-02-11 11:25:18 +01:00
cepetr
7c7e8c8eb7 feat(core): add simple downscaling for bitmap copy ops
[no changelog]
2025-02-11 09:38:49 +01:00
cepetr
c2125f433e feat(core): implement rgba8888 canvas blur
[no changelog]
2025-02-11 09:38:49 +01:00
cepetr
0345c1dfed feat(core): introduce hardware jpeg decoder
[no changelog]
2025-02-11 09:38:49 +01:00
cepetr
e7c773bdd0 chore(core): remove unused code
[no changelog]
2025-02-11 09:38:49 +01:00
cepetr
08d55ea3f4 refactor(core): improve dma2d driver init/deinit
[no changelog]
2025-02-11 09:38:49 +01:00
tychovrahe
92da4d5d5a fix(core): fix default (out of range) color used by gfxmmu
[no changelog]
2025-02-10 15:58:22 +01:00
obrusvit
bd304138a3 chore(core): include signed translations for 2.8.8 2025-02-10 15:39:21 +01:00
cepetr
ee13872e90 fix(prodtest): remove haptic-test duration limit
[no changelog]
2025-02-10 14:12:15 +01:00
cepetr
117eec798c fix(core): fix optiga pairing issue
[no changelog]
2025-02-10 10:43:54 +01:00
cepetr
d35f062866 fix(prodtest): fix haptic test
[no changelog]
2025-02-10 08:12:38 +01:00
obrusvit
8fcf8b67a8 fix(core): fix italian copy for word quiz
- shortening the title ensures that instruction fits on the screen

[no changelog]
2025-02-08 22:14:49 +01:00
Roman Zeyde
e3a9f71069 fix(core): correct a small typo
[no changelog]
2025-02-08 19:39:54 +01:00
cepetr
e23074f9d3 fix(core): wakeup touch controller from monitor mode
[no changelog]
2025-02-07 19:03:06 +01:00
obrusvit
592590cf66 docs(core): changelog for bootloader 2.1.10 2025-02-07 17:13:45 +01:00
Roman Zeyde
061e71213e test(core): don't fetch full DebugLinkState by default
In case the main workflow is restarting after a `DebugLinkDecision`,
sending the response of `DebugLinkGetState` may get interrupted.

We are making the state fetching explicit, in order to avoid the
"restart" race condition (as described in #4401).

Following the above change, text-based layout recording is removed.

[no changelog]
2025-02-07 11:21:44 +01:00
tychovrahe
85bbc89eed fix(core): don't use RSOD_INFINITE_LOOP on models using DSI/LTDC displays
[no changelog]
2025-02-06 13:53:31 +01:00
cepetr
ef1f44cb38 feat(core): extra clear of memory during device halt
[no changelog]
2025-02-06 13:53:31 +01:00
tychovrahe
0dbb31f04a fix(core): fully initialize display driver at the start of bootloader
[no changelog]
2025-02-06 13:53:31 +01:00
tychovrahe
0b9d2e3ac9 feat(core): lazy initialize display driver in boardloader
[no changelog]
2025-02-06 13:53:31 +01:00
tychovrahe
6102e10e91 refactor(core): reorganize boardloader code
[no changelog]
2025-02-06 13:53:31 +01:00
obrusvit
bfa73d615b refactor(core): feature-gate non-bootloader fonts
- a crutch to preserve code which depends on specific fonts
- see https://github.com/trezor/trezor-firmware/issues/4574

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
626a56a702 refactor(core): remove unused fonts
[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
991b3662f0 refactor(core): do not expose fonts outside layouts
- common components now take Font as a parameter, e.g. shape::Text
- FormattedText now does not have `text_normal(txt)`, `text_bold(txt)`
methods etc. but we use `text(txt, font)` instead

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
e73ca8b481 refactor(core): map FontInfo to translation idx
[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
be459019b8 refactor(core): switch fonts from C to Rust
- switch common and individual layout components to Rust fonts
- font usage changed from enum Font to pointers to FontInfo structs

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
9638c7e28a refactor(core): remove some fonts from C and build
- the C fonts handling will be private impl used only in `prodtest` and
`bootloader_ci`
- use "bootloader_ci" as a separate stage to distinguish fonts

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
2e44bf07fd feat(core): add manual font mods to Rust font data
- see https://github.com/trezor/trezor-firmware/issues/3771

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
9f9c640648 feat(core): add Rust font data
[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
8c52f0d5e8 feat(core): add arg to gen_font.py to gen C data
- usage with `--gen-c`
- default is now Rust

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
5bef8574b0 feat(core): add arg to gen_font.py to pick layout
[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
cf5b89f90a refactor(core): get rid of font IDs in micropython
- application layer should not deal with fonts at all
- distinction between MONO and others is preserved by bool argument in
`should_show_more` interpreted as `is_data`

[no changelog]
2025-02-06 13:32:29 +01:00
tychovrahe
566f82ccd8 refactor(core): make homescreen max size model dependent
[no changelog]
2025-02-06 12:40:23 +01:00
tychovrahe
3bdd7f661e fix(core/prodtest): fix QR code display 2025-02-06 07:56:15 +01:00
tychovrahe
148c11d9e5 fix(core/prodtest): fix text rendering 2025-02-06 07:56:15 +01:00
Martin Milata
bb5972b7e2 test(core): update monero tests binary
[no changelog]
2025-02-05 16:25:53 +01:00
tychovrahe
ad8c34e825 feat(core): introduce TPS61062 backlight driver
[no changelog]
2025-02-02 22:41:17 +01:00
tychovrahe
a70c57d228 fix(core/bootloader): add fade-out before jumping to FW if backlight will be reset
[no changelog]
2025-02-02 22:41:17 +01:00
tychovrahe
411e8779f7 fix(core): add fade-in to boot stage 2 screen if backlight was reset
[no changelog]
2025-02-02 22:41:17 +01:00
tychovrahe
e2035e1c06 refactor(core): introduce separate backlight pin driver
[no changelog]
2025-02-02 22:41:17 +01:00
tychovrahe
368d41902d refactor(core): cleaner backlight switch-off in PVD IRQ
[no changelog]
2025-02-02 22:41:17 +01:00
tychovrahe
4e74d2852b refactor(core): extract backlight driver to separate module
[no changelog]
2025-02-02 22:41:17 +01:00
tychovrahe
64d8c18865 fix(core): adjust T3W1 display refresh rate
[no changelog]
2025-01-31 10:04:26 +01:00
tychovrahe
06a722cc74 fix(core): fix boot screen background color when showing no-warning vendor info
[no changelog]
2025-01-31 10:04:06 +01:00
cepetr
2eb1e5b3ca feat(prodtest): refactor and improve prodtest 2025-01-31 08:15:20 +01:00
Roman Zeyde
2a19b35f3e build(core): export Rust functions' stack sizes
It is useful to find the top-most stack consuming functions:

```
$ make build_firmware
$ arm-none-eabi-size -A build/firmware/firmware.elf | grep .stack_sizes
.stack_sizes          7523           0

$ cargo install stack-sizes@0.4.0
$ stack-sizes build/firmware/firmware.elf | grep trezor_lib | sort -k2 -n | tail -n10
0x081c1721	3536	trezor_lib::ui::api::firmware_micropython::new_confirm_properties::h2ab0feebaf154486
0x081c0e7d	3560	trezor_lib::ui::api::firmware_micropython::new_confirm_modify_output::h04465b97d57fafb6
0x081c6161	3688	trezor_lib::ui::api::firmware_micropython::new_show_checklist::he16b109bc4dff398
0x081c4089	4240	trezor_lib::ui::api::firmware_micropython::new_request_pin::h3280c5eff8900a22
0x081be3e1	4960	trezor_lib::ui::api::firmware_micropython::new_confirm_action::h860f874d714ace74
0x081bf545	5096	trezor_lib::ui::api::firmware_micropython::new_confirm_emphasized::h9ade56f5c88001c0
0x081c1ded	5736	trezor_lib::ui::api::firmware_micropython::new_confirm_summary::he2e1274bbc07703e
0x081c7ee9	6760	trezor_lib::ui::api::firmware_micropython::new_show_remaining_shares::h1f67cbfdfeb4c683
0x081c127d	6768	trezor_lib::ui::api::firmware_micropython::new_confirm_more::h107a4be9b5431bb4
0x081c5441	8312	trezor_lib::ui::api::firmware_micropython::new_show_address_details::h352e0b87c58914ce
```

[no changelog]
2025-01-31 06:28:15 +01:00
cepetr
5adb8ef997 refactor(core): rename memory_area to applet_memory
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
f99030938e feat(core): reset peripherals during handovers
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
236c377e20 refactor(core): remove unused linker script symbols
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
6719eeb376 refactor(core): simplify shutdown/handover code
[no changelog]
2025-01-30 14:07:25 +01:00