Commit Graph

3564 Commits

Author SHA1 Message Date
PrisionMike
1189138408 feat(tron): adding FreezeBalanceV2 message support
- Updated message definitions. Introduced new strings.
- Mostly generated code. Main changes in subsequent commit.

[no changelog]
2026-02-17 22:54:19 +05:30
bleska
c6bdec5b77 refactor(core): dma2d_wait() busy wait removal
dma_transfer_in_progress boolean variable has been added for tracking of dma2d current state (transferring/idle). The variable is set after dma2d successful transfer start and cleared inside the dma2d_wait() function after the dma2d transfer has finished.

dma2d_wait() function has been refactored from HAL based busy waiting variant to a priodical polling of dma2d status flags (TC, TE, CE) and sleep/wake concept using the dma2d to wake MCU when such event occurs.

WFE (Wait For Event) instruction is used for MCU sleep entry. The "SCB.SCR.SEVONPEND" bit is used to enable MCU wake-up with NVIC disabled IRQs.

[no changelog]
2026-02-17 13:36:54 +01:00
bleska
36811b9616 refactor(core): dma2d_wait() busy wait removal
Removing the "KERNEL_MODE" guards as the whole file is guarded. Removing the dma2d_wait() function call as it's called twice in the near location.

[no changelog]
2026-02-17 13:36:54 +01:00
bleska
f45b187a85 fix(core): adding SECMON_MONOTONIC_VERSION counter to DISC2
[no changelog]
2026-02-17 13:03:58 +01:00
Roman Zeyde
9922ba0c80 chore(core): support subtitle on Delizia should_show_more()
[no changelog]
2026-02-17 07:58:03 +01:00
Roman Zeyde
00b74ad088 chore(core): hide empty "info" button on Caesar confirm_with_info()
[no changelog]
2026-02-17 07:58:03 +01:00
Roman Zeyde
f939782a95 chore(core): hide empty "info" button on Bolt confirm_with_info()
The return type is changed to `Gc<LayoutObj>`, since the `buttons` object may be `CancelConfirm` or `CancelInfoConfirm`.

[no changelog]
2026-02-17 07:58:03 +01:00
Roman Zeyde
b75eb856ba fix(core): use TEXT_MONO_DATA for Delizia confirm_with_info()
[no changelog]
2026-02-17 07:58:03 +01:00
bleska
4e19779310 fix(core): PLL_DSI_NDIV wrongly set for DISC2
The PLL_DSI_NDIV macro has been redefined to be calculated out of the other PLL_DSI parameters and the HSE_VALUE.

[no changelog]
2026-02-16 11:18:14 +01:00
Ioan Bizău
a10866988a docs: add context on PropertyType
[no changelog]
2026-02-16 09:56:15 +02:00
Roman Zeyde
ec46aca238 chore(core): skip empty confirmation footer on Delizia
[no changelog]
2026-02-13 13:32:55 +01:00
Roman Zeyde
226fcd7c9b refactor(core): support ICON_DOWN for confirm_with_info() in Caesar
Also, simplify info-related button creation.

[no changelog]
2026-02-13 13:32:39 +01:00
Roman Zeyde
9b6995a527 chore(core): add confirmation-related English string entries
[no changelog]
2026-02-13 13:30:42 +01:00
Michal Kazda
553d33e5cc chore(l10n): blanked en.json with the new rules
[no changelog]
2026-02-11 16:26:54 +01:00
Ioan Bizău
60294d4cd0 feat(delizia): back button on summary
[no changelog]
2026-02-11 14:47:23 +02:00
Ioan Bizău
3a8d869e91 refactor(core): improve PropertyType consistency
[no changelog]
2026-02-11 14:47:23 +02:00
Ioan Bizău
7e85413cea fix(delizia): show_properties layout consistency
before: you could call `show_properties` either with a string or with a
list of properties
 * if you would call it with a string it would use `ConfirmValue`
 * if you would call it with a list of properties, it would use
`ShowInfoParams` to show multiple properties

after:
 * if you call it with a list of properties that only has one property
it defaults to the same behaviour as the case when you call it with a
single string

[no changelog]
2026-02-11 14:47:23 +02:00
tychovrahe
df2d0f0176 feat(core/prodtest): add command to check CRC status
[no changelog]
2026-02-10 13:51:13 +01:00
tychovrahe
d706b8c55f fix(core/prodtest): exclude the space before CRC value from its calculation
[no changelog]
2026-02-10 13:51:13 +01:00
cepetr
fa6c5108e2 fix(core): fix double evaluation of status in TSH_CHECK_xxx
[no changelog]
2026-02-09 12:16:54 +01:00
cepetr
8aece50384 feat(core): increase default logging level to WARN
[no changelog]
2026-02-09 12:16:54 +01:00
cepetr
0c0a4d6fdb feat(core): add automatic logging in TSH_CHECK macros
[no changelog]
2026-02-09 12:16:54 +01:00
cepetr
a0bbfe819f refactor(core): improve app_loader error handling
[no changelog]
2026-02-09 12:16:54 +01:00
cepetr
ec392659fd refactor(core): simplify reconfiguration of MPU for systask
[no changelog]
2026-02-09 12:16:54 +01:00
cepetr
aed0378b67 feat(core): introduce TS_ACCES error code
[no changelog]
2026-02-09 12:16:54 +01:00
Martin Pastyřík
589fd84b4b chore(core): remove double check when changing pin
[no changelog]
2026-02-06 16:17:37 +01:00
cepetr
b4a58ddebd fix(core): call SDL drawing function in kernel task context
[no changelog]
2026-02-06 09:49:58 +01:00
bleska
5ba0333910 feat(core): TS7 display refresh rate scaling and configuration optimization
In order to lower the power consumption in standard operation mode, the goal is to regulate the display refresh rate based on the current needs (animations - 60Hz, static images - 30 Hz).
 - Introduction of the on-the-fly refresh rate change functionality (interrupt based).

Configuration optimizations' investigations:
 - Since the display visible dimensions are 520x380 and the display controller doesn't support this resolution directly, the closest variant 520x480 is used with 50px offset. Changing the resolution used to 520x430 and shortening the HACT region by 50px effectivly increasing the blanking period.
 - Using RGB565 DSI color format, changing pixel clock to 15.5 MHz, changing HFP to 20 to maintain the 60 Hz refresh rate for the new pixel clock.
 - DSI lane byte clock vs LTDC pixel clock ratio (max, min) tests.
 - Etc. - different configuration profiles have been tested and TS7 input power consumption measured.

Formalizing the code to official one:
 - adding preprocessor definitions to panels' configuration header files
 - adding ifdefs to display_driver and display_fb source files to integrate the refresh rate scaling code based on panel's used
 - the refresh rate change is to be performed to high one as soon as new image is to be shown, and to the low one after a timeout expires

[no changelog]
2026-02-05 14:26:07 +01:00
bleska
b82f59990f refactor(core): panel configuration refactoring.
The arguments' passed to the HAL_DSI_LongWrite() function calls were corrected. Since the code is used in "KERNEL_MODE" => adding the respective preprocessor directives.

[no changelog]
2026-02-05 14:26:07 +01:00
Roman Zeyde
c1ff04c475 build(core): split English strings blob into multiple lines
Otherwise, concurrent string updates result in a merge conflict.

[no changelog]
2026-02-04 14:08:47 +01:00
Michal Kazda
8c2deb4020 fix(l10n): gen, style, fixtures [no changelog] 2026-02-04 13:24:51 +01:00
bleska
858e928778 refactor(core): buffer usage check refactoring
Improving the code legibility of pwm_data[] buffer usage check.

[no changelog]
2026-02-03 17:37:38 +01:00
bleska
3706a65363 fix(core): pwm_data[] buffer clear check fix
A bug in pwm_data[] buffer clear check has been found and fixed. The pwm_data[][1] array element is used when the respective buffer is used for setting of new pulses' value to TPS61062 IC.

[no changelog]
2026-02-03 17:37:38 +01:00
Ioan Bizău
3f38c8e8bc chore: use separate sc_constants for Tron
[no changelog]
2026-02-02 15:09:37 +02:00
M1nd3r
5b1fd223e8 chore(core): minor annotation and docstring fix
[no changelog]
2026-02-02 12:54:19 +01:00
Ioan Bizău
307d601abe feat(ethereum): EIP-7702 2026-02-02 12:35:10 +02:00
cepetr
88fc039675 feat(core): improve task post-mortem debug messages
[no changelog]
2026-01-29 16:55:13 +01:00
cepetr
719a67f297 fix(core): fix task termination
[no changelog]
2026-01-29 16:55:13 +01:00
cepetr
b3861d2c66 fix(core): propagate the exit code from the core app emulator
[no changelog]
2026-01-29 14:17:11 +01:00
Roman Zeyde
7e79e854e5 fix(core/prodtest): exclude backup-ram-erase command from production prodtest
Following 73684a2811.

[no changelog]
2026-01-29 13:56:39 +01:00
Ioan Bizău
8d8eb7d896 fix(tests): visit flow_confirm_summary menus
[no changelog]
2026-01-28 16:03:25 +02:00
Ioan Bizău
0c148ea51a fix(delizia): visit summary menus
[no changelog]
2026-01-28 16:03:25 +02:00
obrusvit
5e065072f2 refactor(core): introduce Notification rust type
- introduce a type rather than carrying a tuple around
- this should make working with notifs easier in the future as we can
add fields to the struct
- export the NotificationLevel to uPy

[no changelog]
2026-01-28 13:19:58 +01:00
Roman Zeyde
0a33b937ef chore: bump versions
```
tools/bump-version.py core 2.10.2
tools/bump-version.py core/embed/projects/secmon 1.0.8
tools/bump-version.py core/embed/projects/bootloader 2.1.17
tools/bump-version.py core/embed/projects/prodtest 0.3.7
```

[no changelog]
2026-01-28 08:43:56 +01:00
Martin Pastyřík
860ef85c4a feat(prodtest): enable disabling Tropic sensors in prodtest
add prodtest cli commands to read and set the reversible configuration of the sensors (0x08)

also add a command to read the whole configurations to get a better clarity of what is set and what is not set

[no changelog]
2026-01-27 17:23:41 +01:00
Andrew Kozlik
cf823028fe feat(core): Add optiga-metadata-read command to prodtest. 2026-01-27 15:29:56 +01:00
Ondřej Vejpustek
4f036203a3 fix(core/prodtest): call cli_trace(cli, ...) only if cli is not NULL
[no changelog]
2026-01-26 17:13:11 +01:00
obrusvit
10d3045335 chore(core): bump VERSION to 2.10.1
- re-bump to 2.10.1 because the previous cherry-picked commit changed it
to the version of the release branch
- this was caused because we changed the version while the release
process was already underway

[no changelog]
2026-01-26 14:50:50 +01:00
obrusvit
f5309443e1 chore(core): bump VERSION & FIX_VERSION to 2.10.0
- security fix forces us to bump FIX_VERSION
- semantically, it means bumping VERSION_MINOR
- also modify CHANGELOGs from 2.9.7 to 2.10.0

[no changelog]

(cherry picked from commit 25b05677ca)
2026-01-26 14:50:50 +01:00
Ondřej Vejpustek
5367e87348 chore(core/prodtest): add changelog entry 2026-01-23 18:41:02 +01:00