1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-23 06:48:16 +00:00
Commit Graph

4117 Commits

Author SHA1 Message Date
Ioan Bizău
bdb4c51084 fix(core/ui): rename button
[no changelog]
2024-11-26 22:38:06 +01:00
Ioan Bizău
ee0d6ded27 chore(core): remove unused confirm_more on TS5
[no changelog]
2024-11-26 22:38:06 +01:00
Ioan Bizău
dbd5b62272 feat(core/ui): continue after viewing all data 2024-11-26 22:38:06 +01:00
Ioan Bizău
04c89555cd chore(core/ui): use different copy on TS3 and TT
[no changelog]
2024-11-26 22:38:06 +01:00
Ioan Bizău
9c918aaeb8 feat(core/ui): tweak blob first page appearance
This commit adds a margin and footer description to the first page of
the paginated blobs to be confirmed on Mercury. It also extracts the
part of confirm_blob that deals with the first page to a separate
function in order to keep confirm_blob simple.
2024-11-26 22:38:06 +01:00
Ioan Bizău
929ffa73bd feat(core/ui): add cancel button to paginated blobs 2024-11-26 22:38:06 +01:00
Ioan Bizău
97c9f84f8d feat(core/ui): add page counter to paginated blobs 2024-11-26 22:38:06 +01:00
Lukáš Bielesch
ebc302959b
fix(core): fix broken flow for changing brightness [no changelog] (#4378)
* fix(core): fix broken flow for changing brightness [no changelog]

* fixup! fix(core): fix broken flow for changing brightness [no changelog]

* fixup! fix(core): fix broken flow for changing brightness [no changelog]

* fixup! fix(core): fix broken flow for changing brightness [no changelog]

* fixup! fix(core): fix broken flow for changing brightness [no changelog]

* fixup! fix(core): fix broken flow for changing brightness [no changelog]
2024-11-26 19:35:40 +01:00
obrusvit
6f7fccaac2 fix(core/mercury): info at bitcoin signmessage 2024-11-26 16:23:50 +01:00
obrusvit
88ca9ae988 fix(core/mercury): info at bitcoin fee bump 2024-11-26 16:23:50 +01:00
matejcik
313e9e5c48 fix(core): properly send the resume signal to homescreen layouts 2024-11-26 12:55:29 +01:00
obrusvit
8a2a381949 fix(core/mercury): tap to cancel UX
- fixed UI bug in tap to cancel screen of `flow_confirm_output`

[no changelog]
2024-11-26 11:42:37 +01:00
matejcik
b9fb9ce243 fix(core): use the filtered event for subsequent processing
That way we won't pass raw touch events to underlying component if that
touch is already part of a swipe.
2024-11-25 19:15:45 +01:00
Ondřej Vejpustek
997c27adb3 refactor(core): use separate implementation of secret.c for unix
[no changelog]
2024-11-25 16:59:45 +01:00
matejcik
44bd407c85 build(core): use PYOPT=0 for build_unix target
restoring behavior before #4234
2024-11-25 16:23:05 +01:00
matejcik
cba7ed517f fix(core/kernel): properly cut off error message 2024-11-25 16:23:05 +01:00
tychovrahe
e6c6065fce fix(core): fix cmakelists generation
[no changelog]
2024-11-25 12:49:16 +01:00
Fabien
85471d4d36 feat(core): Add coin definition for eCash 2024-11-25 12:02:13 +01:00
tychovrahe
904327cea5 fix(core): fix enabling/disabling haptics before the driver is initialized
[no changelog]
2024-11-25 11:45:32 +01:00
matejcik
b3267625ca build(core): do not propagate PYOPT to kernel build to work around a build error
the error:

When built with PYOPT, Optiga will log its communication to the VCP. But
now that VCP config lives in coreapp and Optiga lives in kernel, there's
no way for Optiga to write to VCP, and the relevant calls simply don't
build.

We need a different method for logging inside the kernel.
2024-11-21 14:33:52 +01:00
cepetr
0977cb6b38 build(core): introduce quiet mode
[no changelog]
2024-11-21 14:33:52 +01:00
matejcik
b35854471b build(core): improve CPPDEFINES quoting
Here we change all FOO=VALUE defines to be tuples ("FOO", "VALUE").
Also, VALUE is always the raw string you want to end up in the C file,
instead of attempting to shell-escape it while specifying.

By all rights scons _should_ be using shlex.quote() on the CPPDEFINES,
but it doesn't, so we hack it by specifying the define prefix as `-D'`
and suffix as `'`. That way the arguments in shell are '-escaped, and
we're (currently) not using ' in any argument value so this should work
fine.

At the same time, when passing the flags to cargo, we can shlex.quote
the whole thing and get the right strings passed all the way into
build.rs -- as long as no argument contains a comma, which is the split
character...
2024-11-21 14:33:52 +01:00
matejcik
cd65ba52fe build(core): introduce common definition of all makefile vars that get passed as scons vars
so that we don't have to write "USE_FOO=$(USE_FOO)" 20 times every time
we add such flag
2024-11-21 14:33:52 +01:00
tychovrahe
1d3e4aa8f4 fix(tests): fix sizecheck on U5 models
[no changelog]
2024-11-21 13:04:33 +01:00
tychovrahe
007a9a4f3b chore(core): remove residual optiga_hal symlink
[no changelog]
2024-11-21 13:04:13 +01:00
tychovrahe
a7f6930c78 feat(core): add support for haptics on T3W1
[no changelog]
2024-11-20 20:01:52 +01:00
tychovrahe
70b9746dc5 feat(core): support powering up optiga on T3T1 rev. G and T3B1 rev. C PCBs
[no changelog]
2024-11-20 20:01:29 +01:00
cepetr
97b430709c fix(core): fix rust tests build
[no changelog]
2024-11-20 16:23:34 +01:00
cepetr
9c0a37717c fix(core): fix invalid symbol for deflated bootloader
[no changelog]
2024-11-20 16:23:34 +01:00
tychovrahe
b0dd521c5d fix(core): separate bootargs from kernel/aux SRAM
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
9befee12c3 fix(core): fix prodtest for 32 bit color models
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
0f0f54f185 feat(core): support optiga on T3W1
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
c5b3dd72b9 feat(core): add support for SBU on T3W1
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
40c5426717 fix(core): fix MPU kernel sram setting for STM32U5G
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
001d3c7cbe feat(core): allow touchless mode in T3W1 bootloader
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
309a7f70b6 chore(core): improve T3W1 driver mock so it doesn't crash
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
bfb3c1c247 feat(core): support 32MHz HSE in USB driver (HS internal PHY only)
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
b4c95f4c16 fix(core): fix systick frequency computation by utilizing HSE_VALUE properly
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
10687e8fa0 feat(core): add power button to T3W1 board rev A
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
2da2826020 feat(core): add RGB LED syscalls
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
d9d4fc0187 feat(core): implement RGB LED driver for T3W1
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
16e0cf39f1 chore(core): remove old RGB LED driver
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
bbf97c7141 fix(core): fix clock setting on U5 for 32 MHz HSE
[no changelog]
2024-11-20 11:17:35 +01:00
obrusvit
af554458b5 refactor(core/mercury): use params structs
Supply the rust layout with dedicated paremeter type instead of plain
micropython::Obj. The types used are ConfirmBlobParams and
ShowInfoParams.

[no changelog]
2024-11-19 16:19:31 +01:00
obrusvit
7cf38ec4c5 refactor(core/mercury): separate upy args parsing
[no changelog]
2024-11-19 16:19:31 +01:00
obrusvit
12388ed24a refactor(core/mercury): remove duplicated struct
- removes 2nd definition of ConfirmBlobParams, the choice of fields and
what supplied in ctor and what in `with_` methods should be thought
through again.

[no changelog]
2024-11-19 16:19:31 +01:00
Ioan Bizău
7f19166c83 refactor(core): get rid of description_font_green
[no changelog]
2024-11-19 13:36:01 +02:00
Ioan Bizău
777907ab3b refactor(core): drop confirm_blob_with_optional_pagination
Commit c300576d6c introduced
`confirm_blob_with_optional_pagination` which proved to be unpopular and
impractical. This commit brings back the old behaviour of having the
`ask_pagination` parameter on `confirm_blob`. It also reverts back to
using the old way of paginating `confirm_blob` on model R, which the
aforementioned commit ignored and re-implemented from scratch.

[no changelog]
2024-11-19 13:36:01 +02:00
Ioan Bizău
30717bc5c4 fix(core): fix crash caused by marquee
request_anim_frame will register a timer for RequestPaint, which will
then cause a crash. This commit fixes the crash, but makes the marquee
component not work.

[no changelog]
2024-11-19 13:36:01 +02:00
Ioan Bizău
487d7c4776 refactor(core): use warning_hi_prio in ETH flow
Commit c300576d6c introduced the
`default_cancel` parameter to `show_warning` and `confirm_blob` rather
using the already existing `flow_warning_hi_prio` which was doing the
same thing. This commit reverts all the nonsense.

[no changelog]
2024-11-19 13:36:01 +02:00
Lukas Bielesch
b9f5e2b409 chore(core): show the last pin digit for a while 2024-11-18 14:05:04 +01:00
cepetr
5c8edfaac6 fix(core): fix reflash utility build
[no changelog]
2024-11-18 09:41:02 +01:00
cepetr
089db2cadf refactor(core): restructure embed folder
[no changelog]
2024-11-18 09:41:02 +01:00
cepetr
82bc0ef186 refactor(core): define USE_xxx consistently with feature flags
[no changelog]
2024-11-18 09:41:02 +01:00
Martin Milata
c101cdfcbe Merge branch 'release/24.11.01' 2024-11-15 18:37:16 +01:00
M1nd3r
780d41e27f chore(core): remove loop.chan
[no changelog]
2024-11-15 16:29:52 +01:00
M1nd3r
e434aabc77 chore(core): remove unused session_id from codec_v1
[no changelog]
2024-11-15 08:47:24 +01:00
M1nd3r
cce2335965 refactor(core): use if TYPE_CHECKING instead of direct import and fix style of ignore statement
[no changelog]
2024-11-15 08:47:24 +01:00
M1nd3r
7adae923d3 chore(core): allow encoding protobuf into memoryview
[no changelog]
2024-11-15 08:47:24 +01:00
M1nd3r
4f0f3b2d27 chore(core): adjust build scripts for THP
[no changelog]
2024-11-15 08:47:24 +01:00
M1nd3r
4c009539c7 docs(core): fix docs indentation and correct a few typos
[no changelog]
2024-11-15 08:47:24 +01:00
M1nd3r
ed90f6bd08 fix(core): fix TREZOR_MEMPERF flag
[no changelog]
2024-11-14 23:55:57 +01:00
tychovrahe
4d4ab93197 chore(core): remove residual DISPLAY_LEGACY_HEADER constant from boards
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
aac3559453 chore(core): move storage sectors to end of flash on U5G models
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
7998ae1463 feat(tests): adjust firmware hash calc test to expect different hashes based on model
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
e704c33d7d fix(core): flash driver - fix support for emulating STM32U5G based models
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
4b7cbfea0a chore(core): support FT6x36 touch driver without RST and ON pins
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
8569a1244c chore(core): add mock display driver for T3W1
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
fa953d7296 chore(core): switch T3W1 support to U5
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
b94db1ff48 feat(core): support 4 i2c instances on U5
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
1f572fa14b feat(core): support 32MHz HSE on stm32 u5
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
cd06b5f600 chore(core): add storage flash area size checks
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
5c101ab800 feat(core): switch DISC2 to use newer U5G variant
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
5894c34f58 feat(core): adjust flash layout on DISC2
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
4ed70cc9bc chore(core): remove useless MPU_MODE_KERNEL_SRAM
[no changelog]
2024-11-14 09:30:07 +01:00
tychovrahe
c50dd96783 fix(core): fix MPU configuration on F4 - kernel SRAM
[no changelog]
2024-11-13 21:02:21 +01:00
tychovrahe
1c7db05aef fix(core): fix USB/touch event conditional compilation
[no changelog]
2024-11-13 21:02:21 +01:00
cepetr
624e95a790 chore(core): remove empty_right_column field
[no changelog]
2024-11-13 12:15:38 +01:00
cepetr
c11dc5dcd3 refactor(core): rename xframebuffer to framebuffer
[no changelog]
2024-11-13 12:15:38 +01:00
cepetr
d4286ff584 chore(core): remove legacy drawing code (c)
[no changelog]
2024-11-13 12:15:38 +01:00
cepetr
2481f768f8 chore(core): remove legacy drawing code (rust)
[no changelog]
2024-11-13 12:15:38 +01:00
Lukas Bielesch
a4da695430 chore(core): Use enum for for dealing with device rotations 2024-11-13 11:08:56 +01:00
Lukas Bielesch
71db065e4a chore(core): Fix swipe-back action in tutorial flow menu 2024-11-13 10:22:49 +01:00
Lukas Bielesch
99742e4862 chore(core): Implement swipe back in confirm_fido flow menu 2024-11-13 09:28:04 +01:00
Lukas Bielesch
5e01288ba6 fix(core): Fix success color and icon in set_brightness flow 2024-11-13 08:26:07 +01:00
matejcik
3769024920 fix(core): patch over problems with confirm_blob_pagination 2024-11-12 16:55:17 +01:00
matejcik
8fb41ee290 feat(core): enforce return type annotations 2024-11-12 16:55:17 +01:00
matejcik
34d97ee942 feat(core): log ButtonRequests with names for easier debugging 2024-11-12 16:55:17 +01:00
matejcik
35be52e31e fix(tests): patch over confirm_blob buttonrequest problems 2024-11-12 16:55:17 +01:00
Martin Milata
87a01a9bfb test(core): fix T3T1 U2F test
[no changelog]
2024-11-12 16:55:17 +01:00
obrusvit
69770a42f4 fix(tests): fix click tests race condition 2024-11-12 16:55:17 +01:00
matejcik
8d2f0a6566 style: make style_check passing 2024-11-12 16:55:17 +01:00
matejcik
ac5a5147e9 style(core/rust): fix linter complaints 2024-11-12 16:55:17 +01:00
matejcik
31958b7fb8 fix(core): restore ellipsis functionality on TR 2024-11-12 16:55:17 +01:00
matejcik
0a6c5504ef fix(core): fix cancel behavior in SignMessage 2024-11-12 16:55:17 +01:00
matejcik
0be96cb70b chore(core/rust): add uDebug capability to more places 2024-11-12 16:55:17 +01:00
matejcik
3f9e37abb4 style(core/rust): avoid unused warning 2024-11-12 16:55:17 +01:00
matejcik
e1b4a4a79a fix(core): allow Ping while locked
same behavior as on Trezor One
2024-11-12 16:55:17 +01:00
matejcik
adc3516ac6 feat(core): drop support for after-step-hook
This was necessary for hooking display.refresh() with the old UI toolkit.
With the new one, we explicitly refresh the display after every paint, so
implicit after-step refresh seems no longer necessary.
2024-11-12 16:55:17 +01:00
matejcik
9e911605da refactor(core/ui): reusable timers 2024-11-12 16:55:17 +01:00
matejcik
2ddb811683 docs(core): add changelog 2024-11-12 16:55:17 +01:00
matejcik
11ae7a92ab style: fix complaining lints & formatters 2024-11-12 16:55:17 +01:00
matejcik
577c36614e fix(core): correctly repaint ShowMore component when requested 2024-11-12 16:55:17 +01:00
matejcik
adc9b523be tests: fix small irregularities 2024-11-12 16:55:17 +01:00
matejcik
cd25071a29 refactor(core): improve recovery_enter_share 2024-11-12 16:55:17 +01:00
matejcik
e3a478044d docs(core): Layout lifecycle documentation 2024-11-12 16:55:17 +01:00
matejcik
84d7597d52 feat(core): show progress before starting to wipe device
This doesn't actually advance the progress while device erase is ongoing, but at least the user sees a loader.
2024-11-12 16:55:17 +01:00
matejcik
eb97bafeef fix(core/ui): repaint the title of Progress layout when requested 2024-11-12 16:55:17 +01:00
matejcik
0e8dcbb498 feat(core): unify RustLayout, implement single global layout 2024-11-12 16:55:17 +01:00
matejcik
df368413c6 refactor(core/rust): introduce layout lifecycle states on Rust side 2024-11-12 16:55:17 +01:00
matejcik
c8f3ebfa21 refactor(core/ui): improve LayoutObj initialization
* RequestPaint message is sent at construction time to force calculation
  of number of pages
* given that Attach corresponds to "start the layout" message, Child now
  responds to Attach the same way it responds to RequestPaint, by
  force-repainting everything.
2024-11-12 16:55:17 +01:00
matejcik
81b3fda665 build(core): fix random order seed when using zsh 2024-11-12 16:55:17 +01:00
matejcik
1fc7d41b8d fix(core): set default value for do_not_restart
otherwise if _handle_single_message raises an exception (which is
fortunately not something that should generally happen), the
finally-block would fail on "referenced before assignment"
2024-11-12 16:55:17 +01:00
matejcik
98dde40729 feat(core): add mailbox as a simplified version of chan 2024-11-12 16:55:17 +01:00
matejcik
7617bc8c25 refactor(core): remove debuglink support from main handle_session
It is being moved into a custom handler for the debug app.
2024-11-12 16:55:17 +01:00
matejcik
0334b42c8e refactor(core): remove unused features from loop.race 2024-11-12 16:55:17 +01:00
matejcik
b7b09b8836 feat(core): introduce timeout to loop.wait() 2024-11-12 16:55:17 +01:00
tychovrahe
1efb684544 refactor(core): expose USE_TOUCH and USE_BUTTON to uPy
[no changelog]
2024-11-12 16:55:17 +01:00
matejcik
dbe6c1c664 refactor(core/rust): create a single code path allowed to modify SwipeFlow state 2024-11-12 16:55:17 +01:00
tychovrahe
0d3af6a96a fix(core): fix firmware hashing on U5
[no changelog]
2024-11-12 12:55:36 +01:00
Martin Milata
b40ce852ea build(core/translations): check order.json for holes
[no changelog]
2024-11-08 16:11:28 +01:00
Martin Milata
8609af7084 chore(core): include signed translations for 2.8.5 2024-11-07 15:51:24 +01:00
cepetr
79cf4959d3 refactor(core): improve button driver (add interrupt support)
[no changelog]
2024-11-07 08:48:21 +01:00
tychovrahe
375a27978f feat(core): switch screenshot button to 's'
[no changelog]
2024-11-07 08:48:21 +01:00
tychovrahe
435fbd6e8c feat(core): add power button to button driver
[no changelog]
2024-11-07 08:48:21 +01:00
Martin Milata
0f8a2955ec fix(core/translations): preserve model groups when running cli.py gen
[no changelog]
2024-11-06 19:07:15 +01:00
Martin Milata
5bc2f8d1ec build(core): check if language versions match firmware
[no changelog]
2024-11-06 19:07:15 +01:00
Lukas Bielesch
7a61d8e858 chore(core) Translate hard-coded 'Enable labeling' string 2024-11-06 18:34:05 +01:00
Martin Milata
a61e783448 chore(core): bump translations version
[no changelog]

(cherry picked from commit bbc72d7868)
2024-11-06 16:04:48 +01:00
Martin Milata
18d2372c10 chore(core): new signed translations for 2.8.0, 2.8.1, 2.8.3 2024-11-06 15:57:31 +01:00
Martin Milata
e558ec1c98 chore(core): bump version to 2.8.6
[no changelog]
2024-11-06 15:57:31 +01:00
Martin Milata
bbc72d7868 chore(core): bump translations version
[no changelog]
2024-11-06 15:57:31 +01:00
Martin Milata
e379f472c9 chore(core/prodtest): bump version to 0.2.12
[no changelog]
2024-11-06 15:57:31 +01:00
Martin Milata
d72aab0bf7 docs(core): changelog for 2.8.5 2024-11-05 21:18:48 +01:00
cepetr
a1cb456dd6 fix(core): fix haptic custom effect in loaders
[no changelog]

(cherry picked from commit 29e03bd873)
2024-11-05 21:05:50 +01:00
Martin Milata
faa3106606 chore(core): bump version to 2.8.5
[no changelog]

(cherry picked from commit 6d09b70603)
2024-11-05 21:05:33 +01:00
cepetr
29e03bd873 fix(core): fix haptic custom effect in loaders
[no changelog]
2024-11-05 21:04:32 +01:00
Jack
e30a343095 feat: support Unchained p2wsh path
fix: move unchained paths to bitcoin multisig SPENDWITNESS

chore: add changelog
2024-11-05 11:26:28 +01:00
cepetr
7b6f444751 refactor(core): introduce global trezor_rtl/bsp/model headers
[no changelog]
2024-11-05 10:00:31 +01:00
Martin Milata
d884daea42 docs(core/prodtest): changelog for 0.2.11 2024-11-04 19:22:28 +01:00
Martin Milata
8361b0eea4 chore(core/prodtest): bump version to 0.2.11
[no changelog]

(cherry picked from commit 6d41c56089)
2024-11-04 18:43:28 +01:00
tychovrahe
0aeaa4ebf6 fix(core): fix OTP write access
(cherry picked from commit 33fc7fb2e6)
2024-11-04 18:43:28 +01:00
cepetr
33348e61e6 fix(core/prodtest): fix CPUID READ command
(cherry picked from commit dbe7a393a8)
2024-11-04 18:43:28 +01:00
Martin Milata
6d41c56089 chore(core/prodtest): bump version to 0.2.11
[no changelog]
2024-11-04 18:42:10 +01:00
Martin Milata
6d09b70603 chore(core): bump version to 2.8.5
[no changelog]
2024-11-04 18:42:10 +01:00
tychovrahe
33fc7fb2e6 fix(core): fix OTP write access 2024-11-04 18:33:03 +01:00
cepetr
dbe7a393a8 fix(core/prodtest): fix CPUID READ command 2024-11-04 18:32:42 +01:00
Ioan Bizău
715c18253d chore(core/translations): undo shortening of some translations
[no changelog]
2024-11-04 17:10:01 +02:00
cepetr
4929ca1c66 fix(core): fix bootloader_emu macOS build
[no changelog]
2024-11-04 14:05:37 +01:00
cepetr
c997201754 refactor(core): simplify ensure_compatible_settings
[no changelog]
2024-11-04 14:05:37 +01:00