1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-11 17:08:15 +00:00
Commit Graph

4063 Commits

Author SHA1 Message Date
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