Commit Graph

73 Commits

Author SHA1 Message Date
cepetr
f0d12275d3 refactor(core): move rsod to io/gfx and sec/rsod
[no changelog]
2026-01-13 11:18:26 +01:00
cepetr
47a7ba723f refactor(core): move gfx to io/gfx
[no changelog]
2026-01-13 11:18:26 +01:00
cepetr
2cc46b0f08 refactor(core): move image module to sec layer
[no changelog]
2026-01-13 11:18:26 +01:00
cepetr
79dd851f78 refactor(core): move flash driver to sys layer
[no changelog]
2026-01-13 11:18:26 +01:00
cepetr
0fb65da661 refactor(core): move scm_revision to rtl layer
[no changelog]
2026-01-13 11:18:26 +01:00
Roman Zeyde
6a637bd49f build(core): exclude embed/rtl/printf.c from non-prodtest builds
Otherwise, nightly CI fails with:
https://github.com/trezor/trezor-firmware/actions/runs/20320385493/job/58431441939

We currently use `printf()` only in prodtest / non-production builds[^1].

[no changelog]

[^1]: https://github.com/trezor/trezor-firmware/pull/6208#discussion_r2610006444
2025-12-18 19:07:27 +01:00
cepetr
80c5444a2e fix(core): remove rsod screens from rtl error handling
[no changelog]
2025-12-16 11:49:07 +01:00
cepetr
b1af516621 feat(core): add extended formatting capabilities to snprintf
[no changelog]
2025-12-12 15:18:35 +01:00
cepetr
b969d71cd3 refactor(core): do not use mini_snprintf in board/bootloader
[no changelog]
2025-12-12 15:18:35 +01:00
cepetr
dfb72957f1 fix(core): get rid of confidential global vars
[no changelog]
2025-10-29 09:00:15 +01:00
cepetr
ca929574e8 feat(core): introduce DBG_CONSOLE build argument
[no changelog]
2025-08-28 15:25:56 +02:00
cepetr
9951c962c3 refactor(core): remove circular dependencies, new 'storage' feature
[no changelog]
2025-08-12 13:47:39 +02:00
cepetr
681b0d389e feat(core): introduce fail-safe/pq signed boardloader
[no changelog]
2025-07-29 11:37:47 +02:00
M1nd3r
7088d1ec01 feat(code): add sphincsplus submodule
[no changelog]
2025-07-29 11:37:47 +02:00
cepetr
8a115eff03 chore(core): reformat FEATURES_WANTED list for readability
[no changelog]
2025-06-04 16:58:15 +02:00
cepetr
bbb74c03a4 feat(core): introduce secure monitor
[no changelog]
2025-06-04 16:58:15 +02:00
kopecdav
b4fc523711 fix(core): fix power_manager dependencies
[no changelog]
2025-05-30 14:04:45 +02:00
cepetr
452e63c4fb feat(core): add display feature to SConscript
[no changelog]
2025-05-12 07:57:46 +02:00
cepetr
daa6ea25fb feat(core): add powerctl feature to SConscript
[no changelog]
2025-05-12 07:57:46 +02: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
6102e10e91 refactor(core): reorganize boardloader code
[no changelog]
2025-02-06 13:53:31 +01:00
cepetr
95afa34f27 refactor(core): rewrite startup code in C
[no changelog]
2025-01-30 14:07:25 +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
Andrew Kozlik
83a96f7a5a feat(core): Randomize SCM_REVISION address in firmware
[no changelog]
2025-01-03 10:23:41 +01:00
cepetr
a6acabd917 refactor(core): introduce drivers init/deinit in boot/boardloader
[no changelog]
2024-12-11 14:45:16 +01:00
matejcik
b35854471b build(core): improve CPPDEFINES quoting
Here we change all FOO=VALUE defines to be tuples ("FOO", "VALUE").
Also, VALUE is always the raw string you want to end up in the C file,
instead of attempting to shell-escape it while specifying.

By all rights scons _should_ be using shlex.quote() on the CPPDEFINES,
but it doesn't, so we hack it by specifying the define prefix as `-D'`
and suffix as `'`. That way the arguments in shell are '-escaped, and
we're (currently) not using ' in any argument value so this should work
fine.

At the same time, when passing the flags to cargo, we can shlex.quote
the whole thing and get the right strings passed all the way into
build.rs -- as long as no argument contains a comma, which is the split
character...
2024-11-21 14:33:52 +01:00
cepetr
089db2cadf refactor(core): restructure embed folder
[no changelog]
2024-11-18 09:41:02 +01:00
cepetr
d4286ff584 chore(core): remove legacy drawing code (c)
[no changelog]
2024-11-13 12:15:38 +01:00
tychovrahe
94af4d98f0 chore(core): clean sconscripts
[no changelog]
2024-09-27 09:49:20 +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
7f3cff04f1 refactor(core/embed): introduce new mpu driver
[no changelog]
2024-09-24 12:21:53 +02:00
cepetr
5fc3c6e617 refactor(core): improve and simplify error handling
[no changelog]
2024-06-17 16:57:33 +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
756d250015 chore(core): initialize automatic variables to zero
[no changelog]
2024-05-10 20:06:28 +02:00
Ondřej Vejpustek
6b81d24b5c chore(core): separate crypto sources in build scripts
[no changelog]
2024-05-10 20:06:28 +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
acb0e9fdc5 chore(core): set stack protector to strong
[no changelog]
2024-04-05 15:07:03 +02:00
tychovrahe
ea0f3038a0 fix(core): improve cmakelists generation for CMSE
[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
tychovrahe
8150636a81 feat(core): add basic support for STM32U5 2024-02-29 23:05:56 +01:00
cepetr
6331076444 refactor(core/embed): move TOIF format definition to rust
[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
446c3b77b4 refactor(core/embed): move&rename display terminal functions
[no changelog]
2024-01-26 11:30:40 +01:00
Ondrej Mikle
b69ef9d168 feat(core): Copy firmware image header to bootloader RAM to be able to skip directly to firmware install, jumping from firmware to bootloader
Change linking of util.s and limited version of util.s to avoid mistakes
with boardloader etc.
2023-09-11 14:36:11 +02:00
Ondrej Mikle
088e3b058e feat(core): change core builds to use GNU11 standard instead of GNU99
[no changelog]
2023-08-30 14:33:21 +02:00
tychovrahe
238e3fd7c1 refactor(core): add abstraction over flash memory layout
[no changelog]
2023-07-25 10:25:20 +02:00
tychovrahe
ebbd7f9d35 refactor(core): restructure trezorhal, prepare to support more platforms
[no changelog]
2023-07-07 22:09:56 +02:00