1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-23 07:58:09 +00:00
Commit Graph

3372 Commits

Author SHA1 Message Date
tychovrahe
8a18cfe0d4 feat(core): use U5 DHUK to encrypt optiga pairing secret in flash
[no changelog]
2024-04-08 21:41:30 +02:00
tychovrahe
e060ac68c5 feat(core): use U5 HW keys to additionally encrypt storage items
[no changelog]
2024-04-08 21:41:30 +02:00
cepetr
b1fb876709 fix(core): fix ts3 fonts
[no changelog]
2024-04-08 15:38:39 +02:00
Martin Milata
c7832c39ab refactor(core/rust/ui): use TString instead of StrBuffer when constructing layouts
[no changelog]
2024-04-06 20:31:36 +00:00
tychovrahe
256adc3567 refactor(core/rust) use TString in Label and Button
[no changelog]
2024-04-06 20:31:36 +00:00
tychovrahe
ed6aa48726 feat(core): use confidential section for confidential and sensitive data
[no changelog]
2024-04-05 18:54:30 +02:00
tychovrahe
535a052df4 refactor(core/rust): introduce UIFeaturesXXX trait as an abstraction over different UI implementation
[no changelog]
2024-04-05 18:16:59 +02:00
tychovrahe
ba741b81fd feat(core): use HSI as PLL source on T3T1
[no changelog]
2024-04-05 15:17:42 +02:00
tychovrahe
acb0e9fdc5 chore(core): set stack protector to strong
[no changelog]
2024-04-05 15:07:03 +02:00
cepetr
285b22e53e refactor(core): add ufmt, bump heapless from 0.7.6 - 0.8.0
[no changelog]
2024-04-04 15:02:28 +02:00
tychovrahe
ffccf849eb chore(core): fill T3T1 model full name
[no changelog]
2024-04-04 12:46:44 +02:00
matejcik
39b7b22777 refactor(core/rust): Paragraph is now based on TString 2024-04-04 10:04:00 +02:00
matejcik
9c287adf64 feat(core/rust): some useful traits for TString
string equality comparison and SkipPrefix
2024-04-04 10:04:00 +02:00
matejcik
f3b884bf93 refactor(core): improve safety of translation blobs
* the public interface to Translations is now completely safe
* it is more obvious that `map_translated` needs to work the way it does
* documentation is improved
2024-04-04 09:53:45 +02:00
tychovrahe
ba065c5b38 fix(core/prodtest): do not require sd detect pin for running SD card test
[no changelog]
2024-04-03 16:48:28 +02:00
Pavol Rusnak
4b189eb2cb fix(core): always zero-initialize structures in trezorhal
[no changelog]
2024-04-03 13:08:16 +02:00
tychovrahe
576ed7e04e chore(core): use SD hal driver from submodule
[no changelog]
2024-04-03 13:08:16 +02:00
tychovrahe
69ed626ca0 fix(core): slowdown i2c on u5 to 200kHz
[no changelog]
2024-04-03 11:01:35 +02:00
Andrew Kozlik
15e02be4e4 fix(core): Clean up when constructor fails to reduce memory fragmentation.
[no changelog]
2024-04-03 10:26:46 +02:00
Andrew Kozlik
49a64cb3a1 test(core): Add AES-GCM unit tests.
[no changelog]
2024-04-03 10:26:46 +02:00
Andrew Kozlik
703ea32ceb feat(core): Add aesgcm class to trezor.crypto Python module.
[no changelog]
2024-04-03 10:26:46 +02:00
tychovrahe
89147ef493 refactor(core): improve flash api by introducing flash_area_write_data function
[no changelog]
2024-04-03 10:18:40 +02:00
tychovrahe
39cfa7087a fix(core): set proper GPIO speeds for T3T1
[no changelog]
2024-04-03 10:18:16 +02:00
matejcik
45a4a1da99 fix(core/translations): correctly rename previous symbol
[no changelog]
2024-04-02 11:10:24 +02:00
matejcik
1c36c0927c style(core): fix (hopefully) the weird clippy warning about HOMESCREEN_TOIF_X_OFFSET
[no changelog]
2024-03-30 12:10:59 +01:00
matejcik
379737a9a5 chore(core): translate storage strings into supported languages 2024-03-30 12:10:59 +01:00
matejcik
de2fe3d6d6 feat(core/ui): unify progress.py code between models, implement storage translations
fixes #3520
2024-03-30 12:10:59 +01:00
matejcik
ed89215a79 feat(core): expose StorageMessage to micropython
[no changelog]
2024-03-30 12:10:59 +01:00
matejcik
0fa9860cf5 chore(core): sign translations for 2.7.0, including Czech blob 2024-03-28 22:10:15 +01:00
matejcik
b2649b0085 refactor(core): introduce Simplified trait
to abstract over some common operations between models

[no changelog]
2024-03-28 13:04:21 +01:00
tychovrahe
047c8a881b fix(core): fix order of loading BHK into SAES key register
[no changelog]
2024-03-28 13:02:17 +01:00
cepetr
1e3e7f808b fix(core): fix build on disc2 model 2024-03-27 10:44:56 +01:00
matejcik
b263dbc109 fix(all): improve Solana template generation 2024-03-26 15:22:32 +01:00
matejcik
6918b16313 feat(core/translations): add support for explicitly specifying blob version
so that it's possible to re-sign translation blobs on a specific commit
for older firmware version
2024-03-26 15:22:32 +01:00
matejcik
229a06d3a2 fix(core): store translation signatures directly into history section
without messing with the "current" entry at all
2024-03-26 15:22:32 +01:00
matejcik
63d1311509 fix(core): properly move old translation signature to history 2024-03-26 15:22:32 +01:00
matejcik
64e507e853 chore(core): add translation signatures 2024-03-26 15:22:32 +01:00
matejcik
9569968459 build(core): rebuild appropriate parts when translation data changes
fixes #3535
2024-03-26 15:22:32 +01:00
gabrielkerekes
b61ed7c02a fix(solana): round up transaction fee
If `unit_price * unit_limit / 1000000` didn't result in an integer `int()` would round the number down. However on the blockchain the resulting fee was be rounded up.
2024-03-25 16:31:01 +01:00
gabrielkerekes
9b84ecf833 fix(solana): accept compute budget instructions at any position 2024-03-25 16:31:01 +01:00
RostarMarek
8b485de173 feat(solana): Hidden flag functionality for instructions 2024-03-25 16:31:01 +01:00
tychovrahe
a80959e50f feat(core): allow T3T1 to start without touch during testing
[no changelog]
2024-03-25 09:16:07 +01:00
tychovrahe
5e827e09c4 fix(core): fix haptic driver initialization
[no changelog]
2024-03-25 08:35:02 +01:00
obrusvit
54468abd89 feat(core/emu): handle arrow buttons as swipes
[no changelog]
2024-03-21 12:37:18 +01:00
Martin Milata
68ff90ccbd Merge branch 'release/24.03' 2024-03-20 23:51:47 +01:00
cepetr
a1165d9326 feat(core): introduce skip function for UzlibContext
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
9575c81bd3 feat(core): introduce new color functions
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
474484d249 feat(core): introduce new toif functions
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
254de49a62 feat(core): introduce new point & rect functions
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
9d6827e2fb refactor(core): remove unused ui components
[no changelog]
2024-03-20 17:04:25 +01:00
grdddj
3d386246be chore(core): update czech translations
[no changelog]
2024-03-20 14:38:21 +01:00
grdddj
50101c9882 chore(core): re-enable czech translations
[no changelog]
2024-03-20 14:38:21 +01:00
cepetr
dc715d7c0d refactor(core): prepare for non mutable paint function
[no changelog]
2024-03-19 17:57:38 +01:00
Pavol Rusnak
60333ca56c chore(core): fix whitespace in makefile
[no changelog]
2024-03-19 15:44:59 +01:00
cepetr
a54fe5e60f fix(core): fixed blurring algo panic in debug mode
[no changelog]
2024-03-19 14:54:54 +01:00
tychovrahe
70a673fabc feat(core): use flash bursts for faster flashing
[no changelog]
2024-03-19 13:17:25 +01:00
tychovrahe
e1161866da chore(core): fix typo 'capablities'
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
0a4a5feaa0 fix(core): fix TOCTOU in sd card bootloader update procedure
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
5c7c9c56a3 fix(core): add missing stm32u5 symlinks
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
6e2f5ff27d fix(core): improve bhk handling on STM32U5
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
fb2868d297 fix(core): setup option bytes for STM32U5
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
43fa92d953 fix(docs): fix prodtest SBU command documentation
[no changelog]
2024-03-18 19:51:22 +01:00
tychovrahe
4fe9294377 fix(core): fix prodtest mpu setting on U5 - allow read of MCU ID
[no changelog]
2024-03-18 19:50:54 +01:00
naiyoma
362958f906 [no changelog] refactor(core):Use utime.ticks_diff in src/boot.py for arithmetic operations 2024-03-18 11:59:32 +01:00
naiyoma
9f9354a820 [no changelog] Refactor arithmetic operations in fido2.py to use utime.ticks_add() and utime.ticks_diff() 2024-03-18 11:59:32 +01:00
naiyoma
d76829f817 [no changelog] refactor(core): Use utime.ticks_diff in verify_user_pin 2024-03-18 11:59:32 +01:00
dependabot[bot]
3dc5e9b2db chore(deps): bump shlex from 1.0.0 to 1.3.0 in /core/embed/rust/fuzz
Bumps [shlex](https://github.com/comex/rust-shlex) from 1.0.0 to 1.3.0.
- [Changelog](https://github.com/comex/rust-shlex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/comex/rust-shlex/commits)

---
updated-dependencies:
- dependency-name: shlex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 11:49:06 +01:00
dependabot[bot]
bd3b070942 chore(deps): bump shlex from 1.1.0 to 1.3.0 in /core/embed/rust
Bumps [shlex](https://github.com/comex/rust-shlex) from 1.1.0 to 1.3.0.
- [Changelog](https://github.com/comex/rust-shlex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/comex/rust-shlex/commits)

---
updated-dependencies:
- dependency-name: shlex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 10:41:53 +01:00
cepetr
ecd4465ab3 fix(core): fix mouse event processing in the simulator
[no changelog]
2024-03-17 14:04:33 +01:00
tychovrahe
e000b526cc refactor(core): extract common layout handling from bootloader ui implementations in rust
[no changelog]
2024-03-15 13:13:40 +01:00
tychovrahe
945382fbaa fix(core): fix flashing f4 firmware via debugger
[no changelog]
2024-03-15 13:13:05 +01:00
tychovrahe
1909d1ebdb feat(core): improve flexibility of combine script, add combine fw make targets
[no changelog]
2024-03-13 22:12:57 +01:00
Martin Milata
73a7223e7b test(core): add T3T1 support
[no changelog]
2024-03-12 20:55:23 +00:00
Martin Milata
ebb480ef29 fix(core): T3T1 emulator
[no changelog]
2024-03-12 20:55:23 +00:00
matejcik
b6e8567a49 fix(core): exclude altcoin functions from bitcoinonly build 2024-03-08 13:17:12 +01:00
matejcik
17678ef38d fix(core/rust): exclude altcoin strings from generated code 2024-03-08 13:17:12 +01:00
matejcik
ccf4b7e9eb fix(core/rust): convert bitcoin_only to an additive feature
universal_fw enables more features, as opposed to bitcoin_only removing features
2024-03-08 13:17:12 +01:00
matejcik
87894ae062 chore(core): add translation signatures 2024-03-07 12:26:58 +01:00
matejcik
fd3919254c refactor(core/ui): rename confirm_payment_request to should_...
Because confirm_* returns None and raises on false.

but this layout is actually a prompt akin to should_show_more
2024-03-07 09:53:00 +01:00
matejcik
34965ca2cb refactor(core/ui): use LayoutObj signatures in layout files
* make sure every confirm_* returns None
* prefer "def -> Awaitable[T]" to "async def -> T" everywhere (avoids one useless allocation per call)
* type-check return values from Rust layouts
2024-03-07 09:53:00 +01:00
matejcik
0304484ca6 docs(core): add method signatures for LayoutObj to mocks (fixes #2672)
feat(core): annotate CONFIRMED/CANCELLED/INFO as fake class UiResult
2024-03-07 09:53:00 +01:00
matejcik
99457bbcb0 refactor(core/ui): make request_number signature the same in TT and TR 2024-03-07 09:53:00 +01:00
matejcik
29863f84ca refactor(core): simplify context.wait() to only accept one task
Nobody was using the multi-task version and this is easier to properly
type-annotate.
2024-03-07 09:53:00 +01:00
tychovrahe
e736d389f2 fix(core): fix backlight reinitialization with maximum value
[no changelog]
2024-03-05 16:51:23 +01:00
tychovrahe
8ccd2cb048 feat(core): add support for T3T1 rev. E HW
[no changelog]
2024-03-05 16:51:23 +01:00
Martin Milata
45e8a842a3 fix(core): add production pubkeys for translations
[no changelog]

(cherry picked from commit bfacd07ed7)
2024-03-04 13:25:03 +01:00
Martin Milata
bfacd07ed7 fix(core): add production pubkeys for translations
[no changelog]
2024-03-04 12:16:20 +00:00
Martin Milata
2b0ce0398c chore(core): bump version to 2.7.1
[no changelog]
2024-03-04 09:56:21 +00:00
Martin Milata
ca5d852250 docs(core): fix version in changelogs 2024-03-01 21:21:04 +01:00
tychovrahe
1f67c1e55c chore(core): bump fw and fix version due to storage migration
[no changelog]

(cherry picked from commit ffabee2e6a)
2024-03-01 16:30:27 +01:00
tychovrahe
ffabee2e6a chore(core): bump fw and fix version due to storage migration
[no changelog]
2024-03-01 15:26:43 +00:00
tychovrahe
d69750fae4 refactor(core): do not use framebuffer dma copy in boardloader to safe flash space
[no changelog]
2024-02-29 23:40:17 +01:00
tychovrahe
f08bed363d refactor(core): extract framebuffer copy to separate bg_copy functionality
[no changelog]
2024-02-29 23:40:17 +01:00
tychovrahe
afefc17478 refactor(core): use internal framebuffer on T3T1 (with ST7789V display controller)
[no changelog]
2024-02-29 23:40:17 +01:00
tychovrahe
416794a463 fix(core): add missing refresh to boardloader startup
[no changelog]
2024-02-29 23:40:17 +01:00
tychovrahe
5c7726126f fix(core): fix bootloader jump to firmware through reset UI
[no changelog]
2024-02-29 23:40:17 +01:00
tychovrahe
66583f2ebf fix(core): fix missing refresh in progress layout
[no changelog]
2024-02-29 23:40:17 +01:00
tychovrahe
b62dc27f06 feat(core): add translations support for U5 models
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
7c800f183f refactor(core): make translations blob handling HW agnostic
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
eb6796059c fix(core): fix st7789v driver compilation for other than T models
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
8313c15f34 feat(core): allow SD card hotswap based on production date for Model T 2024-02-29 23:05:56 +01:00
tychovrahe
0e70fcdc6f feat(core): add haptic to prodtest
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
61b3273baa chore(core): add makefile commands for erasing bootloader and firmware, fix read/erase storage commands
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
8c1425edd5 perf(core): optimize boot time by removing unnecessary touch initialization delays 2024-02-29 23:05:56 +01:00
tychovrahe
30edad0151 perf(core): optimize i2c initialization on U5 by statically defining timing constant
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
b3d1ba25d9 perf(core): optimize boot speed by checking empty image area by words
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
c3f84e2949 perf(core): optimize boot speed on U5 by using has processor to calculate image hashes, switches to sha256
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
1ea7ca4149 chore(core): change STM32Cube submodule to separate hal driver and cmsis submodules.
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
95999623fc fix(core): fix STM32F4 display base address
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
653d73ee22 chore(core): optimize flash usage - backlight pwm
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
5e4e398f64 chore(core): optimize flash usage - SD card on U5
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
f83e33399f chore(core): optimize flash usage - tamper on U5
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
ce82f53010 feat(core): support SD card on STM32U5
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
ea0f3038a0 fix(core): improve cmakelists generation for CMSE
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
5106ac7aa3 feat(core): support optiga handling on U5
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
72dc8f57e8 feat(core): add haptic feedback
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
a71a608ea7 feat(core): add basic support for T3T1 2024-02-29 23:05:56 +01:00
tychovrahe
7d7ccc9dde chore(core): unify i2c instances numbering
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
834693a115 fix(core): fix OTP programming on U5
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
cec0191360 fix(core): fix bootloader update on STM32U5
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
8815e764d2 feat(core): add support for STM32U585
[no changelog]
2024-02-29 23:05:56 +01:00
cepetr
4cf781abb2 chore(core, legacy, storage): refactor flash drivers
[no changelog]
2024-02-29 23:05:56 +01:00
cepetr
271bed8bf6 chore(core): use cortex-m33 stack protection 2024-02-29 23:05:56 +01:00
cepetr
7e427432ea chore(core): refactor trustzone initialization
[no changelog]
2024-02-29 23:05:56 +01:00
cepetr
b504baceda chore(core): refactor mpu initialization
[no changelog]
2024-02-29 23:05:56 +01:00
cepetr
c4c571d837 chore(core): refactor boot_args
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
353095ae95 feat(core): add support for STM32U5A9J-DK board
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
8150636a81 feat(core): add basic support for STM32U5 2024-02-29 23:05:56 +01:00
cepetr
937b7d34d0 feat(core): add STM32CubeU5 submodule
[no changelog]
2024-02-29 23:05:56 +01:00
Martin Milata
6ae158cac9 fix(core): workaround umlauts not being cleared
[no changelog]

(cherry picked from commit d790354667)
2024-02-29 13:24:32 +01:00
Martin Milata
1fddb0b498 feat(core): Add Capability.Translations to Features
[no changelog]

(cherry picked from commit 48124023d7)
2024-02-29 13:24:32 +01:00
matejcik
5f016a896a chore: upgrade style checkers
black 24.2.0
flake8 7.0.0

some neat improvements for if-else statements there
2024-02-29 13:08:18 +01:00
Martin Milata
14625eacbd chore(core): bump translations version
[no changelog]
2024-02-29 11:29:11 +00:00
Martin Milata
d790354667 fix(core): workaround umlauts not being cleared
[no changelog]
2024-02-29 11:22:35 +00:00
Martin Milata
48124023d7 feat(core): Add Capability.Translations to Features
[no changelog]
2024-02-29 11:16:05 +00:00
Martin Milata
e3207a9705 chore(core): bump version to 2.6.6
[no changelog]
2024-02-28 16:35:04 +00:00
Martin Milata
6b821a8cd5 chore(common): set definition timestamp to the current signed definitions
[no changelog]
2024-02-27 17:10:42 +01:00
Martin Milata
1746fe06b1 docs(core): changelog for 2.6.5 2024-02-27 11:39:40 +01:00
Martin Milata
ae1f4cf5c9 feat(core/bitcoin): send BIP-380 descriptor in GetPublicKey response 2024-02-27 11:09:56 +01:00
Martin Milata
3f10a291b5 feat(common): send BIP-380 descriptor in GetPublicKey response
[no changelog]
2024-02-27 11:09:56 +01:00
Martin Milata
a2b53e3c46 feat(core): Add language_version_matches flag to Features
[no changelog]
2024-02-26 18:10:24 +01:00
Martin Milata
f53b945e61 feat(common): Add language_version_matches flag to Features
[no changelog]
2024-02-26 18:10:24 +01:00
grdddj
c95d83a487 chore(core): disable czech translations from blob generation
[no changelog]
2024-02-26 15:07:48 +01:00
matejcik
8c0e1e360e fix(core/translations): add indices to templates
so that we can change the template later without running into trouble

[no changelog]
2024-02-26 15:07:48 +01:00
grdddj
04bdb95362 chore(core): shorten spanish and french texts for wrong PIN screen
[no changelog]
2024-02-26 15:07:48 +01:00
obrusvit
27829591c6 feat(core): add DE, ES, FR langs for ETH staking 2024-02-23 18:09:43 +01:00
obrusvit
83ac9d422f fix: show verb in TS3 confirm_value with info 2024-02-23 18:09:43 +01:00
obrusvit
2f77434677 feat(core): device-tests of staking chunkify 2024-02-23 18:09:43 +01:00
obrusvit
e602a87c90 feat(core): allow chunkify of Stake address on TS3 2024-02-23 18:09:43 +01:00
obrusvit
ebcf3e2db2 feat(core): confirm ETH stake, unstake, claim 2024-02-23 18:09:43 +01:00
obrusvit
e1f696b4dd fix: remove clippy error for TS3
[no changelog]
2024-02-22 12:10:12 +01:00
obrusvit
a351614e3a chore(tests): fix CI failures
Disable some tests of unsupported coins for TS3.

[no changelog]
2024-02-22 12:10:12 +01:00
obrusvit
e073e619c9 chore(tests): re-run black and isort on core/tests
isort set to skip the first necessary "from common import *" line. A
better solution would be to get rid of the need of this import in the
future.

[no changelog]
2024-02-22 12:10:12 +01:00
grdddj
a1a60ed320 feat(tests): skip SD card tests for TR - allowing to run unittests for TR
[no changelog]
2024-02-22 12:10:12 +01:00
grdddj
171c615dfa chore(tests): remove unused imports and variables
[no changelog]
2024-02-22 12:10:12 +01:00
grdddj
4bca28bac0 chore(tests): run isort and put "from common import *" at the beginning
[no changelog]
2024-02-22 12:10:12 +01:00
grdddj
4bd7cf4b04 chore(tests): run black
[no changelog]
2024-02-22 12:10:12 +01:00
obrusvit
e2b7244383 Rename trezorctl self-test to prodtest-t1.
It was confusing for trezorctl users. The new name clearly signals that
it's meant to work only for Model One.
2024-02-22 11:47:26 +01:00
grdddj
5aec7bf414 chore(core): generate signatures.json
[no changelog]
2024-02-21 12:44:40 +01:00
grdddj
d2167fdd27 chore(tools): add rules for buttons and new strings
[no changelog]
2024-02-21 12:44:40 +01:00
grdddj
a6b02e0311 fix(core): replace spanish number symbol with nro. shortcut
[no changelog]
2024-02-21 12:44:40 +01:00
grdddj
8f4c956bdc fix(core): shorten long translations
[no changelog]
2024-02-21 12:44:40 +01:00
grdddj
2c06c4a75c feat(core): add newly translated strings from agency
[no changelog]
2024-02-21 12:44:40 +01:00
grdddj
5ce5d47171 chore(core): catch possible EOFError when parsing translations header
[no changelog]
2024-02-21 12:44:40 +01:00
grdddj
1ab2d843ab chore(core): add missing template to the variable name
[no changelog]
2024-02-21 12:44:40 +01:00
tychovrahe
8147b11345 fix(core): fix quadword-only storage
[no changelog]
2024-02-20 09:37:28 +01:00
Andrew Kozlik
440b1304c0 refactor(storage): Split implementations based on FLASH_BIT_ACCESS.
[no changelog]
2024-02-20 09:37:28 +01:00
Andrew Kozlik
b2f05f187f feat(storage): Work with generic flash blocks instead of quadwords.
[no changelog]
2024-02-20 09:37:28 +01:00
tychovrahe
743ed413f6 feat(core): add support for quad-word only storage
[no changelog]
2024-02-20 09:37:28 +01:00
grdddj
0579ba54fc feat(core): allow for going back to previous word in recovery process 2024-02-19 22:05:04 +01:00
obrusvit
8c5f73c413 docs: improve documentation for core
[no changelog]
2024-02-13 16:51:54 +01:00
grdddj
6142a39f20 fix(core): add debug feature to Rust in hardware build when PYOPT=0
[no changelog]
2024-02-12 17:07:28 +01:00
grdddj
941408246c chore(core): add changelog entry for translations 2024-02-12 14:49:32 +01:00
matejcik
65178a6a36 refactor(core/rust): reuse the same component for "waiting for host" screen 2024-02-12 14:49:32 +01:00
matejcik
8471e0c455 refactor(core/rust): decouple Connect screen from bootloader theme 2024-02-12 14:49:32 +01:00
matejcik
02557ad6c0 feat(core/rust): expose attrtuple to Rust 2024-02-12 14:49:32 +01:00
matejcik
6af7b4a4b7 fix(core/rust): convert Qstr type to representation that matches C code 2024-02-12 14:49:32 +01:00
matejcik
ab3c62ae71 feat(core/rust): introduce SimpleTypeObj 2024-02-12 14:49:32 +01:00
matejcik
6a280a279a feat(python): add cosi.sign_with_privkeys
we've had multiple copies of this function all over the codebase, it's time to move it where it belongs
2024-02-12 14:49:32 +01:00
matejcik
3e14937c8a feat(core/rust): add const Obj::small_int 2024-02-12 14:49:32 +01:00
matejcik
63360a7417 feat(core/rust): add Map::is_empty() 2024-02-12 14:49:32 +01:00
matejcik
9c72c7c99d feat(common): provide some useful paths for the mako templates 2024-02-12 14:49:32 +01:00
matejcik
03298ca80f docs(core/rust): improve safety comments in buffer.rs 2024-02-12 14:49:32 +01:00
matejcik
0c793084f8 chore(core/rust): move illustration outside src/ tree 2024-02-12 14:49:32 +01:00
matejcik
8bf5a72843 refactor(core/rust): move iter_into_array to micropython::utils 2024-02-12 14:49:32 +01:00
matejcik
3b88116bba feat(core/rust): add trezorcrypto bindings
for now, we use sha256 and a little of ed25519 for CoSi purposes

also add the Merkle root algorithm
2024-02-12 14:49:32 +01:00
matejcik
76296ad417 refactor(core/rust): move InputStream to its own module 2024-02-12 14:49:32 +01:00
matejcik
055662ea27 chore(common): deprecate language fields in ApplySettings, ResetDevice, RecoveryDevice 2024-02-12 14:49:32 +01:00
grdddj
b8ea21d24a feat(all): implement translations into Trezor
Co-authored-by matejcik <ja@matejcik.cz>
2024-02-12 14:49:32 +01:00
Martin Milata
bb29c1e5f8 fix(core/bitcoin): display descriptors for taproot XPUBs 2024-02-07 16:30:10 +01:00
Martin Milata
3c7a6dd68a fix(core): handle uncaught exceptions from main.py
[no changelog]
2024-02-05 16:53:49 +01:00
grdddj
dba4bf9e38 feat(core): improve the design of TT locking loader on homescreen
[no changelog]
2024-02-05 14:46:40 +01:00
grdddj
76c547bb91 feat(core): add loader to homescreen when locking the device for TS3 2024-02-05 14:46:40 +01:00
cepetr
5d8e56ac2a refactor(core): shrink size of Paragraphs struct
[no changelog]
2024-02-05 14:10:54 +01:00
Ondrej Mikle
269d98d43e chore(core): make jlink flashing work together with FW integrity, but avoid erasing sectors unnecessarily
[no changelog]
2024-02-05 12:26:36 +01:00
stevenbooke
ed1785a985 fix(core): fix sed script syntax 2024-02-02 13:01:12 +01:00
matejcik
7958061705 build(core): optimize qstr and module collection
Run the preprocessor on each file separately.
This allows parallelization and doesn't need to re-run for all files if just a small number is changed.

Replace simple extractors with one-liners which are generally going to be faster.
2024-02-01 15:50:07 +01:00
matejcik
1d6fafa0ff build(core): use the right number of jobs 2024-02-01 15:50:07 +01:00
matejcik
66213823ea build(core): SCons "go fast" button
some pretty safe & reasonable defaults to speed up SCons:

- look at timestamps to figure out whether a file has changed
- but only if the timestamp is older than 10 secs (which should avoid any problems with 1s precision of mtime, as well as clock drifts etc)
- implicit cache is something to do with parsing C files for dependencies

see https://github.com/SCons/scons/wiki/GoFastButton
2024-02-01 15:50:07 +01:00
cepetr
6331076444 refactor(core/embed): move TOIF format definition to rust
[no changelog]
2024-01-26 11:30:40 +01:00
cepetr
8eb1f9b309 refactor(core/embed): delete unused utf8 functions
[no changelog]
2024-01-26 11:30:40 +01:00
cepetr
3b9dd55788 refactor(core/embed): introduce display_utils.c
[no changelog]
2024-01-26 11:30:40 +01:00
cepetr
cc6ed93b32 refactor(core/embed): move toif image routines
[no changelog]
2024-01-26 11:30:40 +01:00
cepetr
446c3b77b4 refactor(core/embed): move&rename display terminal functions
[no changelog]
2024-01-26 11:30:40 +01:00
cepetr
139701fb1a refactor(core/embed): move&rename display_font_xxx routines
[no changelog]
2024-01-26 11:30:40 +01:00
cepetr
3031ec5d87 refactor(core/embed): move&rename display_utf8_substr()
[no changelog]
2024-01-26 11:30:40 +01:00
tychovrahe
63ee6f2ad2 perf(core): change 4bpp font format to allow dma2d rendering
[no changelog]
2024-01-11 12:22:08 +01:00
gabrielkerekes
1f4f1263aa chore: add changelog 2024-01-10 13:45:24 +01:00
gabrielkerekes
0de1768dc0 fix(solana): fix Memo, multisig and polish instructions UI 2024-01-10 13:45:24 +01:00
tychovrahe
1c0da78536 chore(core): fix rust warnings and clippy errors
[no changelog]
2024-01-09 21:39:58 +01:00
tychovrahe
82cd9ca34e fix(core): fixed fading glitch when changing display orientation
[no changelog]
2024-01-09 11:45:04 +01:00
tychovrahe
ef5c743c35 fix(core): fixed blank display delay on startup when display orientation is set to other than north 2024-01-09 11:45:04 +01:00
grdddj
c2eaaaf8b5 fix(core): add missing semicolon into the passphrase entry for TS3 2024-01-03 14:51:56 +01:00
Martin Milata
f4d3a7456a Merge branch 'release/23.12' 2023-12-20 17:23:49 +01:00
Pavol Rusnak
b0fd7223ea
Merge branch 'matejcik/prodtest-23-12' 2023-12-20 17:12:10 +01:00
matejcik
b21d1b1f50 chore(core/prodtest): bump version after release 2023-12-20 15:50:46 +01:00
matejcik
8f19767285 chore(core): include production-signed prodtest vendor header 2023-12-20 09:46:52 +01:00
matejcik
8c7fc45991 Revert "tmp: use unsigned prodtest header for reproducible build of the prodtest binary"
This reverts commit a3d2ff6f86.
2023-12-20 09:46:35 +01:00
matejcik
a3d2ff6f86 tmp: use unsigned prodtest header for reproducible build of the prodtest binary 2023-12-18 15:08:59 +01:00
tychovrahe
fd5bfbf115 refactor(core): improve flexibility of sd card and touch driver pin selection, display rotation and touch coords transformation
[no changelog]
2023-12-18 14:41:44 +01:00
tychovrahe
d15ee71279 refactor(core): add flexible HSE settings
[no changelog]
2023-12-18 14:41:44 +01:00
tychovrahe
2fa69c3c0d refactor(core): extract backlight pwm settings to board definition
[no changelog]
2023-12-18 14:41:44 +01:00
cepetr
6e1fe31e3f chore(core): optimize stack usage during blurring
[no changelog]
2023-12-18 10:01:30 +01:00
Andrew Kozlik
c1fa1c0cbc chore(core): Fix common name in emulator device certificate.
[no changelog]
2023-12-15 11:18:22 +01:00
Andrew Kozlik
fb80dd5a36 fix(core/prodtest): Fix Optiga metadata version information handling.
[no changelog]
2023-12-15 11:18:22 +01:00
Andrew Kozlik
8de2d8989d feat(core/prodtest): Check device certificate chain integrity using authority key identifier.
[no changelog]
2023-12-15 11:18:22 +01:00
Andrew Kozlik
a1be6f8aef fix(core/prodtest): Configure metadata correctly before checking device certificate.
[no changelog]
2023-12-15 11:18:22 +01:00
tychovrahe
d0a702eef4 fix(core): fix large area marquee rendering
[no changelog]
2023-12-14 17:35:27 +01:00
overcat
579cc0d882 feat(common & core & legacy & python/stellar): add support for ClaimClaimableBalanceOp. 2023-12-11 11:14:33 +01:00
Andrew Kozlik
cbea765e38 feat(core/prodtest): Verify device certificate chain in CERTDEV WRITE.
[no changelog]
2023-12-08 12:30:28 +01:00
Andrew Kozlik
3a5aecf6cd feat(core/prodtest): Add SEC READ command.
[no changelog]
2023-12-08 12:30:28 +01:00
Martin Milata
18ccbcddd4 chore(core): bump version to 2.6.5
[no changelog]
2023-12-07 14:10:07 +01:00
Martin Milata
42e9ed0e09 docs(core): fix changelog for T2T1 2023-12-06 14:19:19 +01:00
Martin Milata
1f693d3561 docs(core): changelog for 2.6.4 2023-12-06 12:56:02 +01:00
Martin Milata
0199f9c26c chore(common): set definition timestamp to the current signed definitions
[no changelog]
2023-12-06 12:50:32 +01:00
gabrielkerekes
b85395434f chore(solana): add changelog 2023-12-05 22:11:41 +01:00
gabrielkerekes
63e35e13ed fix(solana): modify Trezor R confirm_value to align messages with Trezor T 2023-12-05 22:11:41 +01:00
gabrielkerekes
6aa5ac869a feat(solana): add additional info with token account 2023-12-05 22:11:41 +01:00
gabrielkerekes
6912bf6e7f fix(core): update confirm_value to allow showing info 2023-12-05 22:11:41 +01:00
gabrielkerekes
cb9bd7c699 chore(solana): add README 2023-12-05 22:11:41 +01:00
gabrielkerekes
68c0e6c43e feat(solana): add sign_tx implementation 2023-12-05 22:11:41 +01:00
gabrielkerekes
081995788e feat(core): add read_uint64_le to common/readers
- will be needed for solana tx parsing
2023-12-05 22:11:41 +01:00
gabrielkerekes
b3f4b6ac2b feat(solana): add solana templates
- code is broken because depending modules are added in the next commit
2023-12-05 22:11:41 +01:00
gabrielkerekes
bf45d51af6 feat(solana): basic sign_tx setup and support 2023-12-05 22:11:41 +01:00
gabrielkerekes
44dc417c0e feat(solana): add get_address 2023-12-05 22:11:41 +01:00
gabrielkerekes
ec4a607dbe feat(solana): add get_public_key 2023-12-05 22:11:41 +01:00
gabrielkerekes
50861eb019 feat(solana): basic Solana setup 2023-12-05 22:11:41 +01:00
gabrielkerekes
a8096652e0 refactor(core): make ethereum summary reusable for more coins
- and use it for Solana
2023-12-05 22:11:41 +01:00
grdddj
747fd17214 fix(core): correct action of left button in Ethereum summary
[no changelog]
2023-12-05 18:22:58 +01:00
grdddj
087becd2ca chore(core): change Go to bootloader screen text 2023-12-05 08:54:35 +01:00
grdddj
8a6934e844 fix(core): completely repaint layouts before showing them in a loop
[no changelog]
2023-12-04 13:15:57 +01:00
grdddj
9a53ba9f44 fix(core): unify button requests in modify amount flow
[no changelog]
2023-12-04 13:15:57 +01:00
grdddj
5b52db1ed3 chore(core): decrease code-size a little bit
[no changelog]
2023-12-04 13:15:57 +01:00
grdddj
9db8ff1fae fix(core): unify sent button requests in ETH send flow
Makes sure T2B1 will send the same ButtonRequests as T2T1.
Does it by splitting the Rust layout into two separate dialogs.

[no changelog]
2023-12-04 13:15:57 +01:00
grdddj
01eb896817 chore(core): hardcode ETH and Gwei units in ETH send summary
[no changelog]
2023-12-01 14:42:08 +01:00
Andrew Kozlik
d670a0bdfa feat(core): Fix malformed signatures from Optiga. 2023-12-01 00:09:17 +01:00
tychovrahe
a2f72b1055 feat(core): optimize boot time by drawing full logo sooner and shortening the enforced delay proportionally
[no changelog]
2023-11-30 16:46:04 +01:00
matejcik
c5fc92e36a fix(core): restore filled-lock display time 2023-11-30 16:46:04 +01:00
tychovrahe
7b442a2b20 fix(core): improve T2B1 homescreen checks
[no changelog]
2023-11-30 13:42:02 +01:00
matejcik
ba6cce2bbc fix(core/rust): make Toif constructor return a Result instead of Option
which is slightly more correct
2023-11-30 13:42:02 +01:00
matejcik
d674634c86 chore(core/rust): bump cstr_core, enable nightly features
So that cstr! can be used in const contexts. This is not critical but it's nice-to-have as long as we are on nightly anyway.
2023-11-30 13:42:02 +01:00
matejcik
c8fa687c1e fix(core/ui): fix skipped confirm_address on TS3 2023-11-30 09:27:57 +01:00
grdddj
4b87bc56d8 feat(core): set maximum number of chunkified lines to 4
[no changelog]
2023-11-27 16:03:16 +01:00
tychovrahe
47f8a430e6 refactor(core): remove residual usage of old flash api
[no changelog]
2023-11-22 11:45:54 +01:00
tychovrahe
c48c86d61f fix(core): add missing display_refresh calls in TT UI
[no changelog]
2023-11-22 10:26:50 +01:00
tychovrahe
c2de5506bc fix(core): add boundaries check for icon rendering (framebuffer variant)
[no changelog]
2023-11-22 10:26:50 +01:00
grdddj
1968599bbc fix(core): fix the chunkification of longer Cardano addresses in send flow
[no changelog]
2023-11-22 09:00:58 +01:00
Martin Milata
5725050be1 build(core): fix CI bootloader build for T2B1
[no changelog]
2023-11-14 18:37:03 +01:00
Martin Milata
75b3e54480 Merge branch 'release/23.11' 2023-11-14 13:26:03 +01:00
tychovrahe
bf2697a619 feat(core): compress embedded bootloader
[no changelog]
2023-11-14 13:25:00 +01:00
Martin Milata
1c69644fe0 build(core): add flag for disabling optiga on debug builds
[skip_ci]
2023-11-14 12:47:22 +01:00
Martin Milata
ebeea4a209 build(core): more deterministic bootloader_hashes.py
[no changelog]
2023-11-08 15:39:24 +01:00
grdddj
388354b83b chore(core): replace master branch comparison with main branch
[no changelog]
2023-11-08 10:42:24 +01:00
Martin Milata
ba25084904 chore(core): add unsafe vendor header for T2B1
[no changelog]
2023-11-03 14:50:39 +01:00
Martin Milata
0db3d7c12c chore(core): update btconly vendor header for T2B1
[no changelog]
2023-11-03 14:50:39 +01:00
Martin Milata
c61e2293ad chore(core): bump version to 2.6.4
[no changelog]
2023-11-03 13:00:02 +01:00
Martin Milata
2c7cc6e025 chore(common): set definition timestamp to the current signed definitions
[no changelog]
2023-11-02 12:39:43 +01:00
Martin Milata
86b3d8fc6c docs(core): changelog for 2.6.3 2023-11-02 12:22:09 +01:00
Martin Milata
b0ca820983 chore(core): add signed vendor headers for TS3 2023-11-02 12:17:13 +01:00
matejcik
f3393211d4 build(core): clarify vendor header selection logic 2023-11-02 12:17:13 +01:00
matejcik
e43b57f499 chore(core): add btc-only vendor header 2023-11-02 12:17:13 +01:00
matejcik
43ffbadbb9 chore(core): regenerate T2B1 vendor headers 2023-11-02 12:17:13 +01:00
matejcik
1df7428359 chore(core): update T2B1 vendor header configuration 2023-11-02 12:17:13 +01:00
Martin Milata
a6600fc7e9 feat(core): include signed bootloaders 2.1.4
For T2B1 and T2T1.
2023-11-02 11:53:53 +01:00
matejcik
3a28ab4c11 feat(core): make lockscreen blank for T2B1
also allow soft-locking even when PIN is not set
2023-11-01 16:45:29 +01:00
Martin Milata
29d0b4836f docs(core): differentiate changelog entries between models
[no changelog]
2023-11-01 16:21:57 +01:00
matejcik
1e29ce9fb4 chore(core/bootloader): bump version after release 2023-11-01 13:46:50 +01:00
matejcik
0953d2f6aa docs(core/bootloader): changelog for 2.1.4 2023-11-01 13:46:50 +01:00
matejcik
297b2bade7 feat(core/bootloader_emu): add ILU support 2023-10-31 14:57:05 +01:00
matejcik
5ee05ff391 feat(core/bootloader_emu): add support for setting device variant 2023-10-31 14:57:05 +01:00
tychovrahe
10021bf364 chore(core): fix gen and style problems
[no changelog]
2023-10-31 13:32:20 +01:00
matejcik
c5817bed6d chore(core): embed QA bootloaders 2.1.4 2023-10-27 16:46:22 +02:00
matejcik
ec2302d442 fix(core): disallow ILU when the installed firmware is not official
It would be nice to hide this behind a compile-time flag, but doesn't seem worth introducing one just for it.
2023-10-27 16:41:56 +02:00
Ondrej Mikle
a4079d0cc5 chore(core/bootloader): make cstyle check work 2023-10-27 16:41:56 +02:00
Ondrej Mikle
6658ad84d1 fix(core/bootloader): explicit casts on version compare to control signed/unsigned arithmetic mix 2023-10-27 16:41:56 +02:00
cepetr
02f34a2748 feat(core/bootloader): check firmware padding 2023-10-27 16:41:56 +02:00
cepetr
da7125f427 feat(core/bootloader): make firmware flashing more safe 2023-10-27 16:41:56 +02:00
cepetr
ba83a7e644 feat(core): introduce interaction-less upgrade 2023-10-27 16:15:15 +02:00
Martin Milata
9c5d3b4831 fix(core/ui): T2T1: nudge page_prev_ellipsis to the right
[no changelog]
2023-10-27 11:50:12 +02:00
Martin Milata
18d6b4d647 fix(core/ui): T2T1: update sign message layout 2023-10-26 18:29:52 +02:00