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
7374700c0a
refactor(core): ui configuration in build scripts
...
[no changelog]
2024-09-27 22:02:08 +02:00
tychovrahe
10eaa15427
chore(core/build): reuse embed_raw_binary function to embeed vendorheaders
...
[no changelog]
2024-09-27 09:49:20 +02: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
matejcik
6ae96868df
chore(core): use trezor-core-tools in scripts
2024-08-28 16:15:10 +02:00
cepetr
c0b295a9b1
fix(core/prodtest): fix prodtest build with NEW_RENDERING on
...
[no changelog]
2024-08-22 14:28:54 +02:00
tychovrahe
7c94080227
refactor(core): move vendor headers to model specific directories
...
[no changelog]
2024-07-16 15:56:28 +02:00
tychovrahe
78b4017859
feat(core): add support for T3B1
2024-07-16 15:56:28 +02:00
cepetr
5fc3c6e617
refactor(core): improve and simplify error handling
...
[no changelog]
2024-06-17 16:57:33 +02:00
Martin Milata
d6c502f27e
feat(core): add fonts for T3T1
2024-05-31 11:59:52 +00: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
obrusvit
43e759ea0b
refactor(core): apply uppercased fonts in build
...
[no changelog]
2024-05-08 22:46:58 +02:00
matejcik
66b96bc279
build(core): fix prodtest build from build-docker
...
build-docker.sh will unconditionally pass in a value for the
VENDOR_HEADER envvar. This is a problem if the user didn't specify one,
because the value inside the container is going to be empty string.
We make prodtest look at whether the value of VENDOR_HEADER is truthy
instead of a literal None. Which is a correct logic: if the user
deliberately sets the value to an empty string, the build will fail
anyway, so we ignore such value.
2024-04-22 10:56:25 +02:00
matejcik
5b0b145f12
build(core): allow custom vendor header for prodtest
...
to facilitate building prodtest with unsigned VH and then replacing it
2024-04-17 14:40:29 +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
ea0f3038a0
fix(core): improve cmakelists generation for CMSE
...
[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
cepetr
4cf781abb2
chore(core, legacy, storage): refactor flash drivers
...
[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
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
Andrew Kozlik
cbea765e38
feat(core/prodtest): Verify device certificate chain in CERTDEV WRITE.
...
[no changelog]
2023-12-08 12:30:28 +01:00
cepetr
ba83a7e644
feat(core): introduce interaction-less upgrade
2023-10-27 16:15:15 +02: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
5470304515
feat(core): Implement OPTIGA provisioning in prodtest.
...
[no changelog]
2023-08-29 10:59:34 +02:00
tychovrahe
6c97dfef78
feat(core): add vendor headers for devices with dev bootloader
...
[no changelog]
2023-08-25 18:54:34 +02:00
tychovrahe
b369e3f4a7
feat(core): enable seamless build of bootloader using devkeys
...
[no changelog]
2023-08-15 09:37:38 +02:00
tychovrahe
e8281385f6
feat(core): implement secret handling in bootloader
2023-08-15 09:37:38 +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
tychovrahe
d3284baf21
feat(core): support STM32F429 discovery board
2023-06-15 17:08:14 +02:00
grdddj
d199a17cfc
feat(core): introduce FONT_BIG as a fifth optional font
...
[no changelog]
2023-06-14 18:17:09 +02:00
tychovrahe
a2f8cb9d1c
feat(core): add internal model field to features
...
[no changelog]
2023-06-06 09:39:45 +02:00
matejcik
319a665d0d
chore(core): add T2B1 vendor header data
2023-06-02 14:43:19 +02:00
tychovrahe
83500487b8
refactor(core): improve conditional compilations based on model
...
[no changelog]
2023-04-19 21:36:51 +02:00
tychovrahe
6ea68baf34
refactor(core): move files out of extmod
...
[no changelog]
2023-04-19 21:36:51 +02:00
matejcik
37d0d91a84
chore: add production-signed prodtest header
2023-04-17 14:27:50 +02:00