kopecdav
ac65d1f59d
chore(core): put soc recovery inside the pm_init [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
f6bb7684cc
chore(core): add machine readable output of pm report [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
b3e76e557e
fix(core): fix async pmic variable reading [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
17031852cf
feat(core): add pm_wait_until_active function [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
704bf3ed7c
feat(core): improve power_manager backup ram data check [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
7acac1a0fd
fix(core): remove reduntant store to backup ram function [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
63b374067c
fix(core) fix fuel gauge sampling period calculation [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
3beebe5956
fix(core): remove ULTRA_POWER_SAVE and STARTUP_REJECTED states, improve battery low state detection [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
19948372c7
feat(core): extend power manager backup ram data with battery critical flag
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
8e7d5a2a01
chore(core): unify prodtests under power_manager
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
3795ba9fc4
fix(core): fix wakeup flags in nrf lib [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
39c5c9b068
feat(core): remove powerctl, transfer all subordinate libraries into power manager
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
68d26f0c79
fix(core): fix styles
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
79f53f0c45
feat(core): add store_data_to_backup function
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
32e28246c7
feat(core): introduce power_control.c with hibernate function
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
ae92ae09d5
feat(core): integrate data recovery from backup ram
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
e1503eee53
fix(core): add power_manager into the prodtest
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
ebbe158dea
feat(core): change event/state report structure
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
737526f431
feat(core): remove error event
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
5dd7fe334a
refactor(core): rename REPORT_LOW_BATTERY state to REJECT_STARTUP
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
614528acb6
refactor(core): refactor pm prodtest to new namespace, add watch test
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
9c8db0bcba
refactor(core): rename power_manager items to shorter pm
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
0fc4ad037e
feat(core): Add power manager watch prodtest [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
6745cf01a5
feat(core): add battery SoC into power manager report [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
020b0ab3f6
feat(core): Add charging enable/disable functions [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
763d95dd4f
feat(core): Add SoC settter to fuel gauge library [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
90468a2220
feat(core): add power manager to revison C [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
311a8f8d7c
feat(core): Add Fuel gauge estimator into power_manager
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
936b46fa71
feat(core):Introduce charging controller [no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
5b3c46c81f
feat(core): Add power manager prodtest
...
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
32fea3855a
feat(core): Introduce power_manager library [no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
a6fda4d814
feat(core/prodtest): add reboot to bootloader command
...
[no changelog]
2025-05-30 13:34:21 +02:00
tychovrahe
5c3cf0004e
chore(core): bump FW and fix version due to storage migration
...
[no changelog]
2025-05-30 13:12:58 +02:00
tychovrahe
7fb272bade
chore(core): remove unprivileged SAES on U5G models
...
[no changelog]
2025-05-30 13:12:58 +02:00
tychovrahe
6bb3c0cf1d
feat(core): update storage to use privileged BHK
2025-05-30 13:12:58 +02:00
Ioan Bizău
295717d34b
fix(delizia): allow slightly longer header if there is a button
...
[no changelog]
2025-05-28 11:18:00 +02:00
Ioan Bizău
faf71b3cd8
fix(delizia): don't allow the title to grow indefinitely
...
[no changelog]
2025-05-28 11:18:00 +02:00
Ioan Bizău
661b817c82
chore(translations): shorten wipe code copy
...
[no changelog]
2025-05-28 11:18:00 +02:00
Ioan Bizău
ea38f998b8
fix(bolt): make account name fit on the fido page
...
[no changelog]
2025-05-28 11:18:00 +02:00
Ioan Bizău
926e2225b5
feat(core/ui): make Delizia subtitle adjust to longer text
...
[no changelog]
2025-05-28 11:18:00 +02:00
Ioan Bizău
83b86298bf
fix(core/ui): use subtitle on Delizia confirm_properties
...
[no changelog]
2025-05-28 11:18:00 +02:00
Ioan Bizău
fea2591813
chore(core/ui): raise exception on text overflow
...
[no changelog]
2025-05-28 11:18:00 +02:00
tychovrahe
6f96174c65
chore(core): regenerate bootloader hashes for U5G models
...
[no changelog]
2025-05-27 17:49:23 +02:00
Roman Zeyde
d52d4655d5
fix(core): don't confirm known Solana tokens' details
2025-05-27 15:32:15 +03:00
obrusvit
256d6d8ee7
fix(core/delizia): incorrect shares number input
2025-05-27 13:44:53 +02:00
tychovrahe
70e5561c3f
feat(core): adjust bootloader locking for tropic-enabled models
...
[no changelog]
2025-05-27 13:38:56 +02:00
tychovrahe
539a0d08c8
fix(core/bootloader): fix BLE communication error message
...
[no changelog]
2025-05-27 13:01:29 +02:00
obrusvit
0cd64d6a08
fix(core): fix Caesar PinEntry to use Title
...
- Title component uses Marquee internally which scrolls longer prompt
texts
- this fixes e.g. czech translations not fitting the screen
2025-05-26 01:32:55 +02:00
M1nd3r
60129f8369
fix(core): add MP_ERROR_TEXT to elligator2
...
[no changelog]
2025-05-25 14:45:09 +02:00
Ioan Bizău
b036345c5c
feat(caesar): implement show_danger
...
[no changelog]
2025-05-23 14:31:11 +02:00
Ioan Bizău
8a5f599522
Merge branch 'release/25.05' into ibz/merge-release-25.05
2025-05-23 11:05:50 +02:00
cepetr
7983fdfd8d
fix(core): fix truncated strings in rsod on emulator
...
[no changelog]
2025-05-22 16:05:12 +02:00
Roman Zeyde
946fc89449
feat(core): send address & public key response before showing StatusScreen
...
Co-authored-by: matejcik <ja@matejcik.cz>
2025-05-21 16:37:38 +03:00
Ioan Bizău
508248bcb7
fix(delizia): make chunkified text have the same color
...
[no changelog]
2025-05-21 11:54:21 +02:00
Ioan Bizău
eb395000dc
fix(delizia): use "tap" instruction on warnings
...
[no changelog]
2025-05-21 11:54:21 +02:00
Ioan Bizău
0ba8173424
feat(core): introduce a flow for ethereum approve
2025-05-21 11:54:21 +02:00
Roman Zeyde
05f951784e
fix(core): fix tutorial-related translations
2025-05-19 14:45:30 +03:00
tychovrahe
6bdac7614f
feat(core): support handling of tropic keys in secret sector
...
[no changelog]
2025-05-19 11:41:36 +02:00
tychovrahe
9708d329e1
chore(core): introduce basic logical operations on secbool
...
[no changelog]
2025-05-19 11:41:36 +02:00
matejcik
9fc0c5d82b
docs: improve external definition documentation
...
and introduce the new URL scheme
[no changelog]
2025-05-19 11:14:20 +02:00
tychovrahe
e4a31ab0e3
feat(core/prodtest): report build version in prodtest intro and version
2025-05-19 09:34:26 +02:00
tychovrahe
0b7e53e72d
fix(core/bootloader): increase c_laoyout_t buffer size
...
[no changelog]
2025-05-16 14:56:23 +02:00
tychovrahe
048970d059
fix(core/bootloader): fix reboot trezor when called from waiting for host
...
[no changelog]
2025-05-16 14:56:23 +02:00
Roman Zeyde
846e890327
feat(core): count per-line execution when profiling
...
[no changelog]
2025-05-15 19:52:33 +03:00
Roman Zeyde
556e29b068
perf(core): enable MICROPY_ROM_TEXT_COMPRESSION
...
Also, use `__builtin_strcmp` instead of `strcmp`.
[no changelog]
2025-05-15 09:55:40 +03:00
Roman Zeyde
1010be428a
chore(core): use MP_ERROR_TEXT()
macro for exception messages
...
[no changelog]
2025-05-15 09:55:40 +03:00
Martin Milata
241fcc0044
feat(core): homescreen streaming
...
[no changelog]
2025-05-14 23:57:03 +02:00
Roman Zeyde
ca943aeb8b
chore(core): don't use main()
in core/embed/projects/firmware/main.c
...
It would allow compile it without `-ffreestanding`.
[no changelog]
2025-05-13 20:17:41 +03:00
Roman Zeyde
7cdb0cf244
feat(vendor): update MicroPython to allow excluding line numbers from bytecode
...
Setting `MICROPY_ENABLE_SOURCE_LINE=0` helps reducing the debug firmware size by ~2%:
```
$ TREZOR_MODEL=T3T1 MICROPY_ENABLE_SOURCE_LINE=0 PYOPT=0 make -C core build_firmware
<snip>
FLASH: 1,629,456 B 1664 KB 95.63%
```
Before this PR:
```
FLASH: 1,662,224 B 1664 KB 97.55%
```
[no changelog]
2025-05-13 17:07:37 +03:00
Roman Zeyde
3a7850f6a0
chore: remove BNB Beacon Chain support
2025-05-13 09:04:48 +03:00
tychovrahe
a71fe4a66e
fix(core): fix nrf start/stop, service listener registration
...
[no changelog]
2025-05-12 08:59:11 +02:00
tychovrahe
e641fb1c25
fix(core): fix sysevents polling deadlines
...
[no changelog]
2025-05-12 08:58:58 +02:00
tychovrahe
d6220d72a5
fix(core/bootloader): fix null ios handling in host control
...
[no changelog]
2025-05-12 08:58:46 +02:00
tychovrahe
597b888963
fix(core): fix VCP polling
...
[no changelog]
2025-05-12 08:58:35 +02:00
cepetr
e17ec25e77
fix(core): fix backup ram address in non-secure mode
...
[no changelog]
2025-05-12 07:57:46 +02:00
cepetr
b9bb71a243
refactor(core): prepare board_capabilities for secmon api
...
[no changelog]
2025-05-12 07:57:46 +02:00
cepetr
0f0c28404b
fix(core): fix exc_return codes for non-secure world
...
[no changelog]
2025-05-12 07:57:46 +02:00
cepetr
9df360785e
fix(core): fix incorrect constants use
...
[no changelog]
2025-05-12 07:57:46 +02:00
cepetr
9fb71f8f81
fix(core): disable MSPLIM before entering next boot stage
...
[no changelog]
2025-05-12 07:57:46 +02:00
cepetr
adf9872988
refactor(core): prevent incomplete mpu driver build
...
[no changelog]
2025-05-12 07:57:46 +02:00
cepetr
452e63c4fb
feat(core): add display feature to SConscript
...
[no changelog]
2025-05-12 07:57:46 +02:00
tychovrahe
a15d2f621f
feat(core): increase BLE TX packet size to 244B
...
[no changelog]
2025-05-07 17:08:40 +02:00
tychovrahe
c319e5fa20
refactor(core/bootloader): streamline initializing & deinitializing communication interfaces in bootloader
...
[no changelog]
2025-05-07 17:08:40 +02:00
tychovrahe
755cb359bd
feat(core): suspend NRF&BLE driver, with or without connection
...
[no changelog]
2025-05-07 17:08:40 +02:00
tychovrahe
3f6a82ab67
feat(core): add wake up from suspend on NRF/BLE request
...
[no changelog]
2025-05-07 17:08:40 +02:00
tychovrahe
4f783c0a45
fix(core/prodtest): fix nrf communication tests
...
[no changelog]
2025-05-07 17:08:40 +02:00
tychovrahe
3fe0c90c1c
feat(core): change internal communication with NRF to SPI only
...
[no changelog]
2025-05-07 16:36:40 +02:00
tychovrahe
54202b9f53
feat(nordic): send busy response when trezor is not listening to BLE messages
...
[no changelog]
2025-05-07 16:08:46 +02:00
tychovrahe
70014e103a
feat(core/bootloader): add power-off item to the bootloader menu
...
[no changelog]
2025-05-07 15:23:46 +02:00
tychovrahe
37687f1815
feat(core): add BLE to bootloader
2025-05-07 14:54:28 +02:00
tychovrahe
8aaf68f39f
feat(core): add BLE pairing complete event
...
[no changelog]
2025-05-07 14:54:28 +02:00
Roman Zeyde
5aa5d01c71
perf(core): use lookup tables for untranslated strings
...
Also, simplify `generated/translated_string.rs.mako` a bit.
[no changelog]
2025-05-07 14:15:22 +03:00
Roman Zeyde
2e9dfab8d1
style(core): simplify Rust translation conversions
...
[no changelog]
2025-05-07 12:40:42 +03:00
Roman Zeyde
7661c13a22
feat(vendor): reimplement utils.presize_module()
in C
...
[no changelog]
2025-05-07 12:18:52 +03:00
Roman Zeyde
ffea765a85
fix(core): disable check_free_heap
also in debug firmware
...
Currently, it may misdetect on-heap buffers' data as valid heap
pointers (resulting in `gc_mark_subtree` false-positives).
[no changelog]
2025-05-07 10:37:38 +03:00
cepetr
010c5adf89
refactor(core): remove firmware_calc_hash callback
...
[no changelog]
2025-05-06 16:33:36 +02:00
obrusvit
4005e136e0
feat(emu): add LED capability to emulator
...
[no changelog]
2025-05-06 15:47:04 +02:00
tychovrahe
50411367af
refactor(core): unify button polling functionality
...
[no changelog]
2025-05-06 12:57:39 +02:00
tychovrahe
6860c4be0a
refactor(core): unify touch polling functionality
...
[no changelog]
2025-05-06 12:57:39 +02:00
obrusvit
2a65d18200
fix(core): fix Delizia request_number dialog
...
- NumberInputDialog now reacts to tap to continue
- change the types there to u16 to be consistent with NumberInputSlider
(cherry picked from commit 8ba5b4b6b2
)
2025-05-06 08:45:16 +02:00
Roman Zeyde
749c0bc8b2
chore(core): use systick_us
for mp_hal_ticks_us
...
[no changelog]
2025-05-06 09:37:17 +03:00
obrusvit
8ba5b4b6b2
fix(core): fix Delizia request_number dialog
...
- NumberInputDialog now reacts to tap to continue
- change the types there to u16 to be consistent with NumberInputSlider
2025-05-05 14:58:36 +02:00
tychovrahe
c6dedea7b3
chore(core/prodtest): improve CLI parameter documentation
...
[no changelog]
2025-05-01 19:53:00 +02:00
tychovrahe
e9b47d1116
chore(core/prodtest): fix time units in readme for NFC commands
...
[no changelog]
2025-05-01 19:53:00 +02:00
tychovrahe
a22563c01a
chore(core/prodtest): fix typos in prodtest
...
[no changelog]
2025-05-01 19:53:00 +02:00
tychovrahe
3a9315cc58
feat(core/prodtest): allow infinite testing of NFC functionalities
...
[no changelog]
2025-05-01 19:53:00 +02:00
Ioan Bizău
8ad1069166
chore(core): bump version to 2.8.11
...
[no changelog]
2025-05-01 08:53:26 +02:00
kopecdav
aa16fa71d6
fix(core): remove backup ram deinit outside of FIXED_HW_DEINIT
...
[no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
ab8aeaa102
fix(core): let LDO selection to sattle before BREN bit is being set [no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
c9984fabb2
fix(core): fix backup ram prodtest argument parsing
...
[no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
ae02677ca2
feat(core): add backup ram global initialization in bootloader, prodtest and kernel
...
[no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
dec252df77
fix(core): Enable Backup SRAM in VBAT mode [no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
bece935d67
refactor(core): Remove backup ram section from linker [no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
eea75534e5
fix(core): Remove initialized check from backup ram erase function [no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
5ae5d97328
feat(core): Add backup_ram header, version and consistency checks + minor refactor [no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
7f27730b5d
feat(core): Add backup driver prodtest [no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
edd72eeaa0
feat(core): Introduce backup_ram driver [no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
bfd78c8d6e
feat(core): Update fuel gauge charging mode + Update battery model to separate battery data in standalone header file. [no changelog]
2025-04-30 12:55:49 +02:00
kopecdav
3b407e8dc8
feat(core): Add fuel_gauge prodtest [no changelog]
2025-04-30 12:55:49 +02:00
kopecdav
76cffbc5c6
feat(core): Introduce fuel gauge library [no changelog]
2025-04-30 12:55:49 +02:00
Martin Milata
ac9dec3eb7
chore(core): update bundled bootloader for T3B1 to version 2.1.10
2025-04-29 19:03:09 +02:00
Ioan Bizău
38f51f40b2
chore(core/ui): use better font on Delizia properties
...
[no changelog]
2025-04-29 16:09:28 +02:00
matejcik
c21cc2034b
fix(core/protobuf): properly fail on wire type mismatch
...
otherwise we'd happily mis-parse a length-delimited field as a varint
one, accepting the length as the varint value and consuming garbage from
the length-delimited data for the next fields
2025-04-29 14:54:41 +02:00
matejcik
4e7d265312
fix(core/solana): fix UI for Solana transactions after recent changes
2025-04-29 14:54:41 +02:00
matejcik
7e10e25514
fix(core/solana): improve token info display
2025-04-29 14:54:41 +02:00
Eugene Rossokha
e3af93e89f
feat(core): display correct rent information
2025-04-29 14:54:41 +02:00
obrusvit
71cc10a72a
fix(delizia): fix a peek-a-boo label
...
- this commit fixes a minor UX bug in which "Tap to unlock" gesture
showed the device name label for a very brief moment before PIN keyboard
was rendered
- the label is now showed if a user taps outside the lockscreen circles,
"Tap to unlock" gesture is now registered only in the middle similarly
to "Tap to confirm"
[no changelog]
2025-04-29 12:52:05 +02:00
obrusvit
cdc08d1075
feat(delizia): homescreen improvements
...
- dim inner logo
- show "Unlocked" on Homescreen under device name
- show instruction "Continue in the app"
- register "Tap to unlock" gesture in the middle similarly to "Tap to
confirm". Tapping outside shows the label on lockscreen
- play haptic on "Tap to unlock"
2025-04-29 12:52:05 +02:00
M1nd3r
b420f1d434
chore(core): add wire logging with interface
...
[no changelog]
2025-04-28 23:52:47 +02:00
Roman Zeyde
09a323e578
fix(core): remove debug-related data from PYOPT=1 firmware builds
...
It reduces T3T1 release universal firmware size by ~2kB:
```
Memory region Used Size Region Size %age Used
FLASH: 1580304 B 1664 KB 92.74%
```
Before this PR:
```
Memory region Used Size Region Size %age Used
FLASH: 1578256 B 1664 KB 92.62%
```
(Tested with `TREZOR_MODEL=T3T1 PYOPT=1 make -C core build_firmware`)
[no changelog]
2025-04-24 17:27:21 +03:00
Roman Zeyde
65e8f96428
chore(core): update main_clean_exit
comment
...
We are not using `atexit()` handler following #4892 .
[no changelog]
2025-04-24 16:26:36 +03:00
Roman Zeyde
41db573ef9
feat(core): check that GC restores free heap memory
...
Enabled only for frozen debug builds.
[no changelog]
2025-04-24 16:26:36 +03:00
Roman Zeyde
bd9d303310
perf(core): optimize AddressDetails::xpubs
layout
...
[no changelog]
2025-04-24 16:17:17 +03:00
kopecdav
f9dfb3ef1b
feat(core): Add max backlight limit to backlight driver. [no changelog]
2025-04-24 12:19:57 +02:00
Roman Zeyde
46d6732462
feat(core): don't use heap for storing coverage data
...
[no changelog]
2025-04-24 07:39:46 +03:00
Roman Zeyde
2e635a04fc
chore(core): fix a few clippy warnings
...
[no changelog]
2025-04-24 07:39:46 +03:00
cepetr
8b0736c360
fix(prodtest): increase vcp ring buffer size
...
[no changelog]
2025-04-23 13:32:21 +02:00
Roman Zeyde
f20c2d551d
perf(core): encode Timer
using a single u32
...
[no changelog]
2025-04-23 12:38:34 +03:00
Roman Zeyde
f89e7670c5
fix(core): update EIP-1559 fee-related labels
...
Translations will be updated in a separate PR.
2025-04-18 20:29:47 +03:00
Roman Zeyde
75700d9f7f
fix(core): dump allocated QSTRs also in debug firmware
...
Otherwise, it's hard to understand which QSTR causes the assertion error.
[no changelog]
2025-04-17 15:59:08 +03:00
cepetr
a05ce8aa70
fix(core): fix USB VCP freeze on T3W1 in prodtest
...
[no changelog]
2025-04-17 11:45:26 +02:00
Martin Milata
0ec2dbd583
fix(core/unix): HIDPI on macOS 15
...
[no changelog]
2025-04-16 17:27:11 +02:00
Martin Milata
e81617e1c6
build(core): fix build for GCC14
...
[no changelog]
2025-04-16 17:27:11 +02:00
Roman Zeyde
d50181b7f9
fix(core): check QSTR run-time allocations only for frozen debug builds
...
[no changelog]
2025-04-15 14:22:47 +03:00
Martin Milata
2a40d91790
refactor(core): convert modtrezorio.ble to rust
...
[no changelog]
2025-04-15 13:08:37 +02:00
Martin Milata
b35d2f4000
refactor(core/rust): expose RuntimeError
...
[no changelog]
2025-04-15 13:08:37 +02:00
Martin Milata
1c09490f3b
refactor(core/io): add pairing_code to ble_command_data_t
...
[no changelog]
2025-04-15 13:08:37 +02:00
matejcik
a50e49afa9
chore(core): include T3B1 certificate for the emulator
2025-04-15 12:37:25 +02:00
matejcik
0db727b21b
chore(core): include T3W1 certificate for the emulator
2025-04-15 12:37:25 +02:00
Roman Zeyde
9bd81926af
feat(core): check for runtime QSTR allocations
...
[no changelog]
2025-04-14 22:42:16 +03:00
Roman Zeyde
2975a07f1f
chore(core): remove unused path
definitions from MicroPython emulator
...
[no changelog]
2025-04-14 22:42:05 +03:00
Roman Zeyde
c2dd63a6bd
chore(core): move core/prof
into core/src/prof
...
It would allow interning profiling-related QSTRs in debug emulator builds.
[no changelog]
2025-04-14 22:40:52 +03:00
Roman Zeyde
c90b30fbf7
chore(core): intern Monero-related QSTRs
...
[no changelog]
2025-04-14 22:39:24 +03:00
Roman Zeyde
599c17cd29
build(core): refactor qstrdefsport.h
generation
...
Allow excluding debug-related QSTRs.
[no changelog]
2025-04-14 22:39:24 +03:00
Roman Zeyde
6473b3ca48
feat(vendor): update MicroPython to support sorted qstr pools
...
Requires https://github.com/trezor/micropython/pull/20 .
[no changelog]
2025-04-14 21:20:08 +03:00
Andrew Kozlik
e80e979fdd
docs(core): Document Optiga configuration.
...
[no changelog]
2025-04-14 17:10:07 +02:00
cepetr
8a636bd9cf
fix(core): make mod_trezorio_poll return False only on timeout
...
[no changelog]
2025-04-14 12:30:52 +02:00
cepetr
75f9821cf1
fix(core): improve rgb_led driver deinitialization
...
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
0b673c2772
fix(core): fix ft6x36 interrupt pin deinitialization
...
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
ad80d5c1de
fix(core): fix tropic driver deinitialization
...
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
47d1378d28
refactor(core): simplify display driver deinitialization
...
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
2017c5931e
feat(core): optimize pmic power consumption
...
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
9537c8a80d
feat(core): deinitialize tropic driver before suspending
...
[no changelog]
2025-04-09 22:10:11 +02:00
Martin Milata
23cc83f3ba
refactor(core): ble: expose connection state in micropython
...
[no changelog]
2025-04-09 21:25:37 +02:00
Martin Milata
fe20466ed7
fix(core): modtrezorio-ble cleanup
...
[no changelog]
2025-04-09 21:25:37 +02:00
Martin Milata
0ecff7182b
build(core): allow ble feature in emulator
...
[no changelog]
2025-04-09 21:25:37 +02:00
Ioan Bizău
40756a0941
fix(core/ui): use "..." ellipsis in "show more"
2025-04-09 15:57:01 +02:00
Martin Milata
828e1868ab
docs: fix broken changelog links
2025-04-09 10:11:21 +02:00
obrusvit
ad9f85b21d
chore(core): remove redundant Error messages
...
[no changelog]
2025-04-08 15:44:51 +02:00
Roman Zeyde
8df465d7e8
build(core): replace all_modules.py
by qstrdefsport.h
...
[no changelog]
2025-04-07 20:19:31 +03:00
Roman Zeyde
879cc69c63
perf(core): intern non-alphanumeric characters
...
It was found by running `micropython.mem_info()` with the following patch:
```diff
diff --git a/py/gc.c b/py/gc.c
index 604334c95..bff62b754 100644
--- a/py/gc.c
+++ b/py/gc.c
@@ -840,6 +840,7 @@ void gc_dump_info(void) {
(uint)info.total, (uint)info.used, (uint)info.free);
mp_printf(&mp_plat_print, " No. of 1-blocks: %u, 2-blocks: %u, max blk sz: %u, max free sz: %u\n",
(uint)info.num_1block, (uint)info.num_2block, (uint)info.max_block, (uint)info.max_free);
+ qstr_dump_data();
}
void gc_dump_alloc_table(void) {
```
New QSTR definitions:
```
$ tail -n4 ./core/build/unix/genhdr/qstrdefs.generated.h
QDEF(MP_QSTR__paren_close_, 46476, 1, ")")
QDEF(MP_QSTR__paren_open_, 46477, 1, "(")
QDEF(MP_QSTR__lt_, 46489, 1, "<")
QDEF(MP_QSTR__semicolon_, 46494, 1, ";")
```
[no changelog]
2025-04-07 20:19:31 +03:00
cepetr
b50e201ea5
fix(core): improve simulation of lost TOUCH_START events
...
[no changelog]
2025-04-07 17:49:04 +02:00
cepetr
a6bfe399ff
fix(core): ensure touch_get_event does not return zero after TOUCH_START
...
[no changelog]
2025-04-07 17:49:04 +02:00
cepetr
dd2af348dc
fix(core): ensure touch_get_state does not return 0
...
[no changelog]
2025-04-07 17:49:04 +02:00
cepetr
f46bfb4bfe
feat(core): fix out-of-range touch coordinates on T3W1
...
[no changelog]
2025-04-07 17:49:04 +02:00
tychovrahe
f1120d53c2
fix(core/prodtest): provide BLE driver with pairing code when accepting pairing
...
[no changelog]
2025-04-07 15:05:57 +02:00
tychovrahe
0355ea6dd3
feat(core): send pairing code to NRF when accepting pairing
...
[no changelog]
2025-04-07 15:05:57 +02:00
kopecdav
56bad5bd3a
feat(core): Update stwlc38 patching cut selection + new stwlc38 FW patch and configs [no changelog]
2025-04-07 13:42:10 +02:00
tychovrahe
3db788d80a
fix(core): fix NFC deinitialization
...
[no changelog]
2025-04-07 13:41:16 +02:00
tychovrahe
d506abd9db
fix(core/bootloader_ci): fix firmware upload
...
[no changelog]
2025-04-04 16:20:01 +02:00
cepetr
ced0a1462e
feat(core): emulate hw jpeg decoder using libjpeg
...
[no changelog]
2025-04-04 12:59:44 +02:00
cepetr
307ac2517d
feat(core): introduce JpegOverlay shape
...
[no changelog]
2025-04-04 12:59:44 +02:00
cepetr
db057ff6ae
feat(core): allow JPEG image to be decoded as Mono8 bitmap
...
[no changelog]
2025-04-04 12:59:44 +02:00
cepetr
622fa05e48
feat(core): improve blending of mono8 bitmaps
...
[no changelog]
2025-04-04 12:59:44 +02:00
tychovrahe
7e2847c357
fix(core): allow running firmware on locked bootloader device based on allow_run_with_secret flag
2025-04-03 18:59:52 +02:00
tychovrahe
1fc6feda80
fix(core): make ble_event upy api function optional
...
[no changelog]
2025-04-03 16:17:12 +02:00
tychovrahe
4adf6d087d
feat(core): add BLE unpair command & message
...
[no changelog]
2025-04-03 16:17:12 +02:00
tychovrahe
51ff4f5946
feat(core): add unpair command to BLE
...
[no changelog]
2025-04-03 16:17:12 +02:00
tychovrahe
8ea957b8e1
feat(core/prodtest): add hibernation on power button long-press
...
[no changelog]
2025-04-03 16:06:20 +02:00
tychovrahe
f579d31684
refactor(core/prodtest): make cli non-blocking, event-loop compatible
...
[no changelog]
2025-04-03 16:06:20 +02:00
Roman Zeyde
08bcedcaa5
fix(core): correct __main__
dict size retrieval in firmware
...
Otherwise, it fails to boot.
[no changelog]
2025-04-03 14:45:13 +03:00
Martin Milata
469f093b8a
feat(core): include pairing code in BLE_ALLOW_PAIRING command
...
[no changelog]
2025-04-02 17:08:34 +02:00
Martin Milata
88706d12f8
feat(core): ble: expose allow/reject pairing in micropython
...
[no changelog]
2025-04-02 17:08:34 +02:00
Roman Zeyde
e6f96974de
feat(core): check for sys.modules
and main
globals reallocations
...
Rewrite the static comparison in `utils.unimport_end()` in C.
[no changelog]
2025-04-02 16:01:51 +03:00
Roman Zeyde
ec87d2d21d
fix(core): presize __main__
module to avoid heap fragmentation
...
[no changelog]
2025-04-02 16:01:51 +03:00
tychovrahe
101d584aa4
fix(core): fix BLE polling
...
[no changelog]
2025-04-01 21:53:30 +02:00
cepetr
7248bf2a48
fix(core): fix issue with frame buffer access on D001
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
cfea362cfc
fix(core): skip polling in storage callback (workaround)
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
7dcdb54262
feat(core): introduce new polling in coreapp event loop
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
7994a0b93b
feat(core): introduce kernel event loop
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
2dff869883
feat(core): add event polling to ble driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
edf3f19ef5
feat(core): add event polling to usb hid driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
97bb16776d
feat(core): add event polling to usb vcp driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
f61da5777a
feat(core): add event polling to usb webusb driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
cd97b8c55b
feat(core): add event polling to usb driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
4815118a6d
feat(core): add event polling to touch driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
8d7a25e5eb
feat(core): add event polling to button driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
b9d15cb343
feat(core): introduce system-level event polling
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
6b045dd43d
feat(core): introduce systask id & task count limit
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
24048d7094
fix(core): remove unused function declaration
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
271f029be7
fix(core): fix emulator build on macOS
...
[no changelog]
2025-04-01 10:00:26 +02:00
Roman Zeyde
ad73e41080
feat(core): support USB/BLE sessions
...
All interfaces are sharing a single 8kB buffer.
It is reallocated once per session and is acquired by the first active session.
Other concurrent sessions will respond with an "Another session in progress" error.
[no changelog]
2025-03-31 13:20:53 +03:00
tychovrahe
9d46ad259c
fix(core/prodtest): remove final wait from report commands
...
[no changelog]
2025-03-27 18:25:46 +01:00
tychovrahe
b7b8e77ccb
feat(core): enable tropic in firmware/kernel on hw
...
[no changelog]
2025-03-27 11:59:10 +01:00
Roman Zeyde
ac0fc30ee9
perf(core): intern single-digit strings
...
[no changelog]
2025-03-26 21:16:06 +02:00
Roman Zeyde
bafad6e453
chore(core): remove unused function from modtrezorutils-meminfo.h
...
[no changelog]
2025-03-26 21:16:06 +02:00
Roman Zeyde
48b2f07ad3
fix(core): correct dump_qstr_pool()
...
[no changelog]
2025-03-26 21:16:06 +02:00
tychovrahe
4fce1f55ee
fix(core): fix bootloader build for models with HW keys but without optiga
...
[no changelog]
2025-03-26 14:59:19 +01:00
Roman Zeyde
19f576123c
feat(core): enable GC map dump on debug firmware
...
[no changelog]
2025-03-25 12:05:52 +02:00
tychovrahe
3bccf2d8f7
fix(core): fix emulator usb polling
...
[no changelog]
2025-03-24 14:31:14 +01:00
tychovrahe
4d48fbf845
fix(core): fix emulator usb deinitialization
...
[no changelog]
2025-03-24 14:31:14 +01:00
tychovrahe
8e0e3a1787
refactor(core): complete bootloader refactoring
2025-03-24 14:31:14 +01:00
obrusvit
9a14654ff7
perf(core): improve render in Delizia button
...
- allcase_text_height unnecessarily loads GlyphData in this frequent
call, text_height just reads a constant
[no changelog]
2025-03-24 12:11:56 +01:00
obrusvit
079873ced7
feat(core): use newer version of Delizia fonts
2025-03-24 12:11:56 +01:00
cepetr
5b9caf1ac6
fix(core): enable shsi clock after resuming from suspend mode
...
[no changelog]
2025-03-24 10:38:53 +01:00
Roman Zeyde
1e3b02771b
fix(core): don't use 'static
lifetime for BLEEvent
...
[no changelog]
2025-03-21 17:13:27 +02:00
matejcik
acc584ce25
fix(core/rust): fix quotes in bindgen macros for T2B1
2025-03-21 12:16:23 +01:00
Roman Zeyde
9926df6ab5
fix(core): add LayoutObj.ble_event
mock
...
[no changelog]
2025-03-20 15:22:32 +02:00
Roman Zeyde
fabb5e8c6c
perf(core): don't allocate if BLE event data is empty
...
BLE event data is not empty only on pairing:
```
core/embed/io/ble/stm32/ble.c
176: ble_event_t event = {.type = BLE_CONNECTED};
182: ble_event_t event = {.type = BLE_DISCONNECTED};
227: ble_event_t event = {.type = BLE_PAIRING_REQUEST, .data_len = 6};
244: ble_event_t event = {.type = BLE_PAIRING_CANCELLED, .data_len = 0};
```
[no changelog]
2025-03-20 15:22:32 +02:00
tychovrahe
cf00130409
feat(core): add support T3W1 rev C board
...
[no changelog]
2025-03-20 11:07:49 +01:00
tychovrahe
6fb65bcfd9
refactor(core): refactor button events
...
[no changelog]
2025-03-20 11:07:34 +01:00
tychovrahe
36a047cd30
feat(core): stm32u5 i2c driver - support up to 5 i2c busses
...
[no changelog]
2025-03-20 10:33:44 +01:00
tychovrahe
8e4ed1181e
feat(core): increase the number of available systimers
...
[no changelog]
2025-03-20 10:33:44 +01:00
Roman Zeyde
f4328acfd6
fix(core): don't invoke dump_meminfo_json
on emulator
...
[no changelog]
2025-03-20 11:05:01 +02:00
Roman Zeyde
566b69fb24
perf(core): simplify Button struct to save RAM
...
[no changelog]
2025-03-20 09:29:56 +02:00
Roman Zeyde
611d74c1b3
fix(core): correct confirmation fonts in Bolt
2025-03-18 13:23:39 +02:00
Roman Zeyde
2f97b61870
fix(core): correct confirmation title on Caesar
2025-03-18 12:32:36 +02:00
Roman Zeyde
5fd168c363
feat(core): dump GC arena on OOM
...
Enabled for debug firmware and non-frozen emulator.
JSON dump can be extracted from debug log and analyzed using:
$ awk '/^\[$/,/^\]$/' <debug.log >dump.json
$ core/tools/analyze-memory-dump.py dump.json
[no changelog]
2025-03-17 20:17:42 +02:00
Roman Zeyde
2333a6a262
feat(core): log GC info in case of OOM
...
Enabled on debug firmware and non-frozen emulator.
[no changelog]
2025-03-17 20:17:42 +02:00
cepetr
0fb1693ea8
feat(code): introduce dbg_printf for kernel debugging
...
[no changelog]
2025-03-14 14:17:27 +01:00
Ioan Bizău
3efa0480c6
feat(core): add libtropic to the unix build
...
[no changelog]
2025-03-13 15:08:48 +01:00
Roman Zeyde
c95158751a
build(core): allow increasing VCP write timeout
...
It should allow us exporting larger amounts of debug data.
[no changelog]
2025-03-13 16:07:09 +02:00
Roman Zeyde
6bf11ab29f
chore(core): use smaller vectors for ShowInfoParams
...
[no changelog]
2025-03-12 08:12:54 +02:00
cepetr
b5053d9f6e
fix(core): add kernel access to assets by default ( #4759 )
...
[no changelog]
2025-03-11 07:58:57 +01:00
tychovrahe
103568e2e5
feat(core/prodtest): show device ID in prodtest QR code
2025-03-08 12:26:41 +01:00
tychovrahe
661a30e390
feat(core/prodtest): support writing device ID into OTP memory
2025-03-08 12:26:41 +01:00
tychovrahe
ee9f42a8b2
fix(core/prodtest): add early return in case of otp batch reading error
...
[no changelog]
2025-03-08 12:26:41 +01:00
tychovrahe
6db5eaf850
fix(core/prodtest): fix otp device variant lock check
...
[no changelog]
2025-03-08 12:26:41 +01:00
kopecdav
f2054ff409
feat(core/prodtest): Introduce unit test extension into prodtest [no changelog]
2025-03-07 17:24:24 +01:00
obrusvit
acdf549fc4
chore(core): bump version to 2.8.10
...
[no changelog]
2025-03-07 11:44:29 +01:00
Roman Zeyde
f67a506e9c
fix(core): use correct fonts for staking confirmation on Delizia
...
[no changelog]
2025-03-05 12:23:03 +02:00
Roman Zeyde
0d522be842
fix(core): use TEXT_MONO_GREY_LIGHT
for chunkified data on Delizia
...
[no changelog]
2025-03-05 10:35:41 +02:00
tychovrahe
46ec7298af
chore(core): drop support for T3W1 rev A0 board
...
[no changelog]
2025-03-05 09:19:27 +01:00
tychovrahe
9c451bd6ea
fix(core): fix BLE issue command return value
...
[no changelog]
2025-03-05 09:19:16 +01:00
cepetr
486bbca959
feat(core): double glyphs on t3w1 terminal
...
[no changelog]
2025-03-05 08:33:15 +01:00
Roman Zeyde
6f3e5a6cd7
feat(core): estimate workflow stack usage
...
By zeroing the stack memory before the workflow runs,
we can estimate how much of it has been used (by reading
the stack memory and looking for the first non-zero value).
[no changelog]
2025-03-04 14:18:15 +02:00
Roman Zeyde
e08b15ecaf
feat(core): use Account info
instead of Send from
in Delizia staking UI
...
[no changelog]
2025-03-04 13:35:08 +02:00
tychovrahe
4394992b81
chore(core): unify comment style in startup_init.c
...
[no changelog]
2025-03-04 11:23:55 +01:00
tychovrahe
4de403bbe1
feat(core): enable LSE on T3W1
...
[no changelog]
2025-03-04 11:23:55 +01:00
tychovrahe
d1c1503fa4
feat(core/prodtest): add tamper testing function
...
[no changelog]
2025-03-04 11:23:55 +01:00
tychovrahe
d535e725c0
fix(core): fix tamper setting
...
[no changelog]
2025-03-04 11:23:55 +01:00
cepetr
bf119fbee4
feat(core): improve display/dma2d syscall verifiers
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
8574289493
chore(core): remove unused display function
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
45417bf3bd
feat(core): reduce overhead of syscall invocation
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
19ba854c69
feat(code): introduce dma2d syscalls
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
39245206f4
fix(core): fix coreapp applet memory definition
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
2961f6caf9
refactor(core): improve frame buffer interface
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
8b525de3c9
fix(core): fix jpeg decoder syscalls verifiers
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
80ce57c5c4
fix(rust): fix drawing of 1px bar shape
...
[no changelog]
2025-03-04 08:07:56 +01:00
obrusvit
55101b8013
fix(core): fix delizia set brightness setting
...
[no changelog]
2025-03-03 15:59:59 +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
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
ac49c3e284
fix(core): fix ExtraInfo
menu cancellation
...
[no changelog]
2025-02-28 13:51:37 +02: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
Andrew Kozlik
91ee49c20b
chore(core, crypto): Remove unused function mnemonic_generate().
...
[no changelog]
2025-02-26 17:20:58 +01: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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
cepetr
2697c06642
refactor(core): rewrite rescue code in C
...
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
95afa34f27
refactor(core): rewrite startup code in C
...
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
70c577b67b
refactor(core): add new linker scripts consts for memory cleanup
...
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
7613fe310a
refactor(core): rename linker script section constants
...
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
2671404e44
refactor(core): rename stack related linker script symbols
...
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
bdb3d486e3
refactor(core): rename jump_to function
...
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
2ecf335349
refactor(core): use memset_reg in asm code only
...
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
c30233b832
refactor(core): stop using shutdown_privileged directly
...
[no changelog]
2025-01-30 14:07:25 +01:00
cepetr
d8e7dc8cd9
chore(core): remove unused secure_shutdown syscall
...
[no changelog]
2025-01-30 14:07:25 +01:00
tychovrahe
d9c547c590
fix(core): calculate image hash including padding between header and code
...
[no changelog]
2025-01-29 16:56:11 +01:00
tychovrahe
b75c0a844d
feat(core): set haptic actuator for T3W1
...
[no changelog]
2025-01-29 16:55:56 +01:00
tychovrahe
4ad326aa73
chore(core): add support for T3W1 revB
...
[no changelog]
2025-01-29 16:55:56 +01:00
tychovrahe
7f53b34b8e
feat(core): introduce RGB LED driver with low power TIM
...
[no changelog]
2025-01-29 16:55:56 +01:00
tychovrahe
671c3e2a65
fix(core): unify size of enums between rust and C
...
[no changelog]
2025-01-29 09:10:35 +01:00
tychovrahe
399aa4f2ea
fix(core): adjust jpeg cache size to allow work on larger displays
...
[no changelog]
2025-01-29 09:10:10 +01:00
Roman Zeyde
96ac4e263c
refactor(core): reduce ui::layout_delizia::component::header::Header
size
...
[no changelog]
2025-01-28 14:21:43 +02:00
Martin Milata
7c06363fea
chore(core/prodtest): bump version to 0.2.13
...
[no changelog]
2025-01-28 12:27:05 +01:00
Martin Milata
b0e39dbe6f
chore(core): bump version to 2.8.8
...
[no changelog]
2025-01-28 12:27:05 +01:00
tychovrahe
8bad0c8675
fix(core): fix flashing old display content on model T
...
[no changelog]
2025-01-24 21:59:01 +01:00
Andrew Kozlik
27ed1fd49e
fix(core): Fix displayed batch number in prodtest.
...
[no changelog]
2025-01-23 16:48:00 +01:00
tychovrahe
69a61e98e0
feat(core): adjust codec_v1 to work with differently sized RX and TX packets
...
[no changelog]
2025-01-23 16:46:12 +01:00
tychovrahe
a682555574
fix(core): add missing interrupt disable to NRF driver
...
[no changelog]
2025-01-23 16:46:12 +01:00
tychovrahe
e8eb48cd0d
chore(core): add T3W1 production keys vendorheaders
...
[no changelog]
2025-01-23 15:42:56 +01:00
tychovrahe
5fd773757c
fix(core): fix fading issues
2025-01-23 15:24:00 +01:00
tychovrahe
a5809c872e
feat(core): add support for setting BLE name from Trezor firmware
...
[no changelog]
2025-01-23 13:27:59 +01:00
Ioan Bizău
5a13b4560d
fix(core): get rid of colon in some TS5 descriptions
...
[no changelog]
2025-01-23 12:46:54 +01:00
Ioan Bizău
e99beaf486
refactor(core): merge confirm_blob and confirm_value
...
[no changelog]
2025-01-23 12:46:54 +01:00
tychovrahe
885c5b96d9
refactor(core/rust): move bindgen macros used for tests to model folder
...
[no changelog]
2025-01-23 10:22:00 +01:00
tychovrahe
bdc054235c
refactor(core): define model-specific include files in site-scons
...
[no changelog]
2025-01-23 10:22:00 +01:00
tychovrahe
26bde15429
refactor(core): extract model specific definitions from Makefile
...
[no changelog]
2025-01-23 10:22:00 +01:00
cepetr
a920b92ad3
fix(core): fix gfx_bitblt initialization
...
[no changelog]
2025-01-22 17:21:41 +01:00
Roman Zeyde
e78f6d2d6d
fix(core): fix a few "unused" Rust warnings
...
[no changelog]
2025-01-22 15:09:08 +02:00
Martin Milata
ae853bb821
Merge branch 'release/25.01'
2025-01-22 12:14:10 +01:00
Roman Zeyde
1dae795a94
feat(core): support per-layout untranslated text strings
...
[no changelog]
2025-01-22 10:41:35 +02:00
Roman Zeyde
e9aca68612
docs: make sure changelog fragments end with a period
...
Also, run `generate-changelog.py` over prodtest changelog.
[no changelog]
2025-01-20 14:54:27 +02:00
obrusvit
00740b560c
refactor(core): consistent naming of UI layouts
...
- follow-up on 862c987779
- layout_bolt stays the same
- layout_samson -> layout_caesar
- layout_quicksilver -> layout_delizia
- use super for importing rust modules in layout code
[no changelog]
2025-01-20 12:29:24 +01:00
Ioan Bizău
30e88f4641
fix(core/ui): make button press cancel current hold
2025-01-17 13:04:56 +01:00
Ioan Bizău
dd3bf253f8
fix(core): disallow canceling on uncancelable pages
2025-01-16 13:54:13 +01:00
tychovrahe
8207b9ffe5
feat(core): add BLE to t3w1 board
...
[no changelog]
2025-01-14 09:15:12 +01:00
tychovrahe
b2a4db1463
feat(core): expose BLE functionality to micropython
...
[no changelog]
2025-01-14 09:15:12 +01:00
tychovrahe
8ca51be020
feat(core): expose BLE functionality to rust
...
[no changelog]
2025-01-14 09:15:12 +01:00
tychovrahe
3fae6b23cf
feat(core:): introduce BLE driver
...
[no changelog]
2025-01-14 09:15:12 +01:00
tychovrahe
34e033fd4e
fix(core): fix wrong RSOD color on some older Model T devices
2025-01-14 08:21:37 +01:00
cepetr
280b1e9b79
fix(core): reset peripherals in emergency mode
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
2426e637b3
feat(core): introduce optiga deinit and suspending
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
80e2cea2b5
feat(core): improve button driver init/deinit
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
fc2f9c5949
feat(core): add powerctl_suspend syscall
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
f3793fd8c4
fix(core): panic on invalid syscall number
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
63fe21b6cb
feat(core): improve dma2d/gfx_bitblt init/deinit
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
3165443dfe
feat(core): improve t3w1 display driver init/deinit
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
1f3e640dd9
feat(core): add display_init return value
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
47f618c640
feat(core): decrease t3w1 backlight pwm frequency
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
7a603b8717
feat(core): improve haptic driver peripherals init/deinit
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
a881401e4d
feat(core): improve pwm backlight driver peripherals init/deinit
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
22f132c935
fix(core): fix suspending to STOP2 mode
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
4fda1c4dfb
feat(core): introduce USE_USB feature
...
[no changelog]
2025-01-14 07:52:15 +01:00
cepetr
27e37de695
fix(core): fix incorrect macro name
...
[no changelog]
2025-01-13 19:03:28 +01:00
tychovrahe
eef2f4113f
refactor(core): improve USB events handling, more extensible implementation
...
[no changelog]
2025-01-13 18:46:11 +01:00
tychovrahe
e4f4985584
refactor(core): split polling can_read and reading from USB
...
[no changelog]
2025-01-13 17:42:30 +01:00
Martin Milata
dadff32f39
build(core): use internal model names everywhere
...
TREZOR_MODEL=T and TREZOR_MODEL=R
no longer work, please use
TREZOR_MODEL=T2T1 and TREZOR_MODEL=T2B1
[no changelog]
2025-01-13 16:24:35 +01:00
Lukas Bielesch
1ef62aaf0b
fix(core): rework 'too many PIN attempts' RSOD
...
Also, allow multi-line title in `model_samson` `ErrorScreen`.
Co-authored-by: Roman Zeyde <roman.zeyde@satoshilabs.com>
2025-01-10 13:31:00 +01:00
Roman Zeyde
849af38f5e
refactor(core): remove an unused member from ErrorScreen
...
Also, rename `ErrorScreen::place` argument to `_bounds`,
similarly to how it's done in `model_quicksilver` and `model_bolt`.
2025-01-10 13:31:00 +01:00
tychovrahe
43721ab396
feat(core/prodtest): add RGB LED test
...
[no changelog]
2025-01-10 11:32:49 +01:00
obrusvit
862c987779
refactor(core): consistent naming of UI layouts
...
- UI layouts name changes:
- model_tt -> layout_bolt
- model_tr -> layout_samson
- model_mercury -> layout_quicksilver
- rust features `model_xyz` freed for different use, now it's
`layout_xyz`
- input_flow function names are based on UI layout and not internal
model name (i.e. quicksilver instead of t3t1)
- directory names and commentary changed accordingly
[no changelog]
2025-01-09 22:57:14 +01:00
tychovrahe
22ab7e98f5
perf(core): optimize LTDC-DSI ram usage by properly utilizing LTDC window
...
[no changelog]
2025-01-06 11:42:40 +01:00
tychovrahe
1c59442f89
feat(core): use lx250a2401a display panel on T3W1
...
[no changelog]
2025-01-06 11:42:40 +01:00
tychovrahe
b97390a73a
refactor(core): make display resolution constants global, board specific
...
[no changelog]
2025-01-06 11:42:40 +01:00
tychovrahe
6e2486a2e2
feat(core): add LX250A2401A panel to ltdc_dsi display driver
...
[no changelog]
2025-01-06 11:42:40 +01:00