1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-03-06 18:26:11 +00:00
Commit Graph

194 Commits

Author SHA1 Message Date
tychovrahe
007a9a4f3b chore(core): remove residual optiga_hal symlink
[no changelog]
2024-11-21 13:04:13 +01:00
tychovrahe
a7f6930c78 feat(core): add support for haptics on T3W1
[no changelog]
2024-11-20 20:01:52 +01:00
cepetr
9c0a37717c fix(core): fix invalid symbol for deflated bootloader
[no changelog]
2024-11-20 16:23:34 +01:00
tychovrahe
0f0f54f185 feat(core): support optiga on T3W1
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
b4c95f4c16 fix(core): fix systick frequency computation by utilizing HSE_VALUE properly
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
10687e8fa0 feat(core): add power button to T3W1 board rev A
[no changelog]
2024-11-20 11:17:35 +01:00
tychovrahe
d9d4fc0187 feat(core): implement RGB LED driver for T3W1
[no changelog]
2024-11-20 11:17:35 +01:00
cepetr
089db2cadf refactor(core): restructure embed folder
[no changelog]
2024-11-18 09:41:02 +01:00
cepetr
82bc0ef186 refactor(core): define USE_xxx consistently with feature flags
[no changelog]
2024-11-18 09:41:02 +01:00
tychovrahe
fa953d7296 chore(core): switch T3W1 support to U5
[no changelog]
2024-11-14 09:30:20 +01:00
tychovrahe
5c101ab800 feat(core): switch DISC2 to use newer U5G variant
[no changelog]
2024-11-14 09:30:20 +01:00
cepetr
c11dc5dcd3 refactor(core): rename xframebuffer to framebuffer
[no changelog]
2024-11-13 12:15:38 +01:00
cepetr
d4286ff584 chore(core): remove legacy drawing code (c)
[no changelog]
2024-11-13 12:15:38 +01:00
tychovrahe
1efb684544 refactor(core): expose USE_TOUCH and USE_BUTTON to uPy
[no changelog]
2024-11-12 16:55:17 +01:00
cepetr
c997201754 refactor(core): simplify ensure_compatible_settings
[no changelog]
2024-11-04 14:05:37 +01:00
cepetr
387d98d6e4 refactor(core): get rid of STM32U5 in platform indep code
[no changelog]
2024-11-04 14:05:37 +01:00
tychovrahe
d38c2e1790 chore(core): drop obsolete boards
[no changelog]
2024-10-31 10:27:08 +01:00
tychovrahe
42396dd007 refactor(core): make USE_xxx defines global
[no changelog]
2024-10-31 10:27:08 +01:00
cepetr
4af600d422 refactor(core): introduce USE_TRUSTZONE
[no changelog]
2024-10-31 10:25:31 +01:00
tychovrahe
1c7965421f feat(core): switch to 32 bit colors in T3W1 emulator
[no changelog]
2024-10-23 14:42:13 +02:00
cepetr
5fd1f0e4c6 refactor(core): decompose lowlevel module
[no changelog]
2024-10-22 09:06:21 +02:00
cepetr
f6647ab3b7 refactor(core): introduce startup_init.c
[no changelog]
2024-10-22 09:06:21 +02:00
cepetr
bfa3ea4e5e refactor(core): remove common.c on all platforms
[no changelog]
2024-10-22 09:06:21 +02:00
cepetr
5845c665af refactor(core): refactor unit properties detection
[no changelog]
2024-10-22 08:30:49 +02:00
cepetr
63f5f72804 feat(core): implement syscall verifiers
[no changelog]
2024-10-22 07:41:30 +02:00
tychovrahe
d71d9e9c34 feat(core): add T3W1 emulator build
[no changelog]
2024-10-09 15:06:40 +02:00
tychovrahe
a0c885d244 fix(core): fix T3T1 MCU definition for emulator
[no changelog]
2024-10-09 15:06:40 +02:00
tychovrahe
915d4fca94 feat(core): add support for T3W1, on F4
[no changelog]
2024-10-09 15:06:40 +02:00
tychovrahe
7374700c0a refactor(core): ui configuration in build scripts
[no changelog]
2024-09-27 22:02:08 +02:00
tychovrahe
94af4d98f0 chore(core): clean sconscripts
[no changelog]
2024-09-27 09:49:20 +02:00
tychovrahe
d412ce987e refactor(core): use common layout.c file
[no changelog]
2024-09-27 09:49:20 +02:00
tychovrahe
e13d4a45a6 chore(core): remove residual support for T1B1 in core
[no changelog]
2024-09-25 09:18:01 +02:00
tychovrahe
28f420189a refactor(core): combined build of coreapp + kernel, linker scripts refactoring
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
35c6f52133 refactor(core/embed): introduce system, tasks, applets and emergency mode
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
1c991339ce refactor(core/embed): split firmware into kernel & coreapp
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
33a94d945d chore(core/embed): remove unused legacy i2c driver
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
91649dc7cb feat(core/embed): introduce non-blocking i2c drivers
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
2bb5b5c0ce refactor(core/embed): introduce fwutils module
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
0666e6ea9a refactor(core/embed): rename boot_args to bootuils
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
2fd5aca05c refactor(core/embed): remove supervise module
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
1443f86983 feat(core/embed): introduce systick and systimer drivers
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
4312c08612 refactor(core/embed): extract hw entropy logic to its own module
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
33c2bcbe52 refactor(core/embed): simplify ensure_compatible_settings
[no changelog]
2024-09-24 12:21:53 +02:00
tychovrahe
c1864a2a91 refactor(core): enclose monotonic counter to platform specific module
[no changelog]
2024-09-03 13:07:34 +02:00
tychovrahe
c7eabe3088 fix(core): update display initialization sequence on T3T1
[no changelog]
2024-08-28 11:03:20 +02:00
tychovrahe
c42c268e05 fix(core): fix dma2d includes and initialization with respect to new rendering
[no changelog]
2024-08-07 18:11:29 +02:00
tychovrahe
7307c47b94 chore(core): support new rendering on T3B1
[no changelog]
2024-08-01 16:17:12 +02:00
tychovrahe
1212a7319a fix(core): T3T1: adjust touch coordinates 2024-07-25 12:37:21 +03:00
tychovrahe
78b4017859 feat(core): add support for T3B1 2024-07-16 15:56:28 +02:00
Andrew Kozlik
9420b38a35 feat(core): Account for Optiga throttling delay in PIN countdown. 2024-07-09 16:52:50 +02:00
tychovrahe
3bc9e23260 feat(core): add support for 32bit colors in UI
[no changelog]
2024-07-09 11:44:21 +02:00
matejcik
8a3133bacc fix(core): include valid staging certificate for T3T1 emulator 2024-06-25 13:35:16 +02:00
cepetr
3460c4b891 refactor(core/embed): prepare touch drivers for low power mode
[no changelog]
2024-06-19 14:03:38 +02:00
cepetr
baff1691a0 feat(core/embed): prepare usb driver for low power mode
[no changelog]
2024-06-19 11:57:18 +02:00
cepetr
0bc1d1f706 refactor(core/embed): refactor usb driver
[no changelog]
2024-06-19 11:48:06 +02:00
cepetr
8e429b0352 refactor(core/embed): move usb driver to its own folder
[no changelog]
2024-06-19 11:48:06 +02:00
Martin Milata
2ba42d716e feat(core): init T3T1 UI layouts: meta 2024-05-31 11:59:52 +00:00
matejcik
44a6696f24 build(core): improve model detection
instead of MODEL_IS_T2B1, we now catch INTERNAL_MODEL == Txyz

this is still not perfect because it can't detect 'in'/'not in', which
sucks but what can we do
2024-05-24 13:53:05 +02:00
tychovrahe
76e98ecc3d fix(core): fix DISC2 build
[no changelog]
2024-05-21 19:01:31 +02:00
tychovrahe
ffe1ac7d7e fix(core): use DISPLAY_RGB565 macro consistently
[no changelog]
2024-05-21 19:01:31 +02:00
tychovrahe
9166dc330e refactor(core): reorganize model-specific files in embed/models
[no changelog]
2024-05-21 19:01:31 +02:00
tychovrahe
0b5e8ed480 refactor(core): introduce emulator boards
[no changelog]
2024-05-21 19:01:31 +02:00
tychovrahe
e6f2fa711e refactor(core): reorganize model specific files in site-scons
[no changelog]
2024-05-21 19:01:31 +02:00
cepetr
3336e3902f feat(core): introduce new display drivers
[no changelog]
2024-05-17 09:17:37 +02:00
Ondřej Vejpustek
ccb242ee1c chore(core): introduce THP flag
[no changelog]
2024-05-10 20:05:37 +02:00
obrusvit
c448a7bcfc refactor(tools): add gen_upper arg to gen_font
The new option allows generation of font glyph definition where both
lowercase and uppercase letters are mapped to uppercase glyphs.

[no changelog]
2024-05-08 22:46:58 +02:00
tychovrahe
ea1c32f90e fix(core/rust): fix bindgen macros generation
[no changelog]
2024-04-26 13:36:58 +02:00
tychovrahe
d349c44a58 refactor(core): generate macros for rust bindgen automatically
[no changelog]
2024-04-25 13:20:07 +02:00
tychovrahe
1600759457 refactor(core): simplify secret.h api, hide platform differences
[no changelog]
2024-04-11 16:13:58 +02:00
tychovrahe
ed6aa48726 feat(core): use confidential section for confidential and sensitive data
[no changelog]
2024-04-05 18:54:30 +02:00
tychovrahe
576ed7e04e chore(core): use SD hal driver from submodule
[no changelog]
2024-04-03 13:08:16 +02:00
tychovrahe
8ccd2cb048 feat(core): add support for T3T1 rev. E HW
[no changelog]
2024-03-05 16:51:23 +01: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
7c800f183f refactor(core): make translations blob handling HW agnostic
[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
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
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
a71a608ea7 feat(core): add basic support for T3T1 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
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
tychovrahe
8147b11345 fix(core): fix quadword-only storage
[no changelog]
2024-02-20 09:37:28 +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
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
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
cepetr
ba83a7e644 feat(core): introduce interaction-less upgrade 2023-10-27 16:15:15 +02:00
tychovrahe
df42c99bc9 feat(core): add basic support for efficient frame buffer graphics
[no changelog]
2023-10-10 19:01:43 +02:00
Andrew Kozlik
dee559f4f9 feat(core): Integrate Optiga into PIN verification. 2023-09-27 17:17:09 +02:00
tychovrahe
3c1236bf82 refactor(core): setup single-place layout selection
[no changelog]
2023-09-18 18:05:37 +02:00
grdddj
76c6e9cd9d feat(all): implement support information for T2B1
WIP - change trezor{1,2} to their internal names, add support for model R

WIP - add EOS and NEM features Capability only for TT

WIP - not include EOS and NEM into TR

WIP - choose between device models when generating coininfo

WIP - regenerate coininfo.py

WIP - skip NEM, EOS, Dash, BGold and Decred device tests for TR

WIP - fix python support

WIP - fix unit tests

WIP - import bitcoin-like code only when needed

WIP - remove ignored coins for TR in fixtures.json

WIP - make all the external references to models UPPERCASE

WIP - do the model separation in mako script also for tokens and networks

WIP - hot-fixing non-supporting RELEASES_URL for new model names

WIP - support.py releases CLI command takes a list of -r key-value pairs DEVICE=VERSION

WIP - run `python support.py release`

WIP - use utils.MODEL_IS_T2B1 to ignore NEM and EOS

WIP - change all the docs and commands to have UPPERCASE model names

[no changelog]
2023-09-14 13:54:09 +02:00