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
tychovrahe
bf2697a619
feat(core): compress embedded bootloader
...
[no changelog]
2023-11-14 13:25:00 +01:00
Martin Milata
ebeea4a209
build(core): more deterministic bootloader_hashes.py
...
[no changelog]
2023-11-08 15:39:24 +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
a6600fc7e9
feat(core): include signed bootloaders 2.1.4
...
For T2B1 and T2T1.
2023-11-02 11:53:53 +01:00
matejcik
c5817bed6d
chore(core): embed QA bootloaders 2.1.4
2023-10-27 16:46:22 +02:00
cepetr
ba83a7e644
feat(core): introduce interaction-less upgrade
2023-10-27 16:15:15 +02:00
Martin Milata
fca82273cf
Merge branch 'release/23.09'
2023-10-11 23:34:06 +02:00
matejcik
c6c8d85200
chore(core): embed signed bootloader 2.1.3
2023-10-02 16:57:15 +02:00
Martin Milata
3021df8f65
chore(core): bump version to 2.6.3
...
[skip_ci]
2023-09-29 20:20:19 +02:00
matejcik
fbd5c466f0
chore(core): embed QA bootloader 2.1.3
2023-09-27 13:20:02 +02:00
matejcik
bb5b91b920
Merge branch 'master' into release/23.09
2023-09-27 12:58:22 +02:00
tychovrahe
510281590f
fix(core): add delays to optiga i2c communications
...
[no changelog]
2023-09-27 12:14:32 +02:00
Martin Milata
b9dbdc7057
chore(core): bump version to 2.6.2
...
[no changelog]
2023-09-18 16:27:07 +02:00
Martin Milata
07027a69e9
Merge branch 'master' into release/23.09
2023-09-15 14:33:20 +02:00
tychovrahe
f881fab797
fix(core): disable access to secret in flash after boot
...
[no changelog]
2023-09-15 13:31:24 +02:00
matejcik
efab85a963
chore(core): include signed and QA bootloaders
2023-09-14 10:13:38 +02:00
Andrew Kozlik
db6630a5a3
feat(core): Support Optiga in Trezor firmware.
2023-09-13 15:45:48 +02:00
Ondrej Mikle
bf96c43d32
chore(core): cstyle reformat
...
DSVibram AR fix
2023-09-11 14:36:11 +02:00
Ondrej Mikle
ac64d2d2f1
fix(core): one forgotten ensure_compatible_settings
2023-09-11 14:36:11 +02:00
Ondrej Mikle
75a148e414
fix(core): clear memory when not going to use copy firmware header for bootloader
2023-09-11 14:36:11 +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
tychovrahe
e8281385f6
feat(core): implement secret handling in bootloader
2023-08-15 09:37:38 +02:00
Andrew Kozlik
74759310bb
feat(core): Integrate OPTIGA Trust M
...
[no changelog]
2023-08-02 00:35:43 +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
671f23f1aa
feat(core): support rev 10 of T2B1 HW
...
[no changelog]
2023-06-27 22:45:33 +02:00
Martin Milata
3a5fdfedcc
fix(core/ui): minor visual tweaks
...
- centered title for coinjoin loader
- make device label bold on label confirmation screen
[no changelog]
2023-06-19 19:34:16 +02:00
Pavol Rusnak
089ff76822
Merge branch 'matejcik/signed-vhs'
2023-06-15 22:41:12 +02:00
tychovrahe
d3284baf21
feat(core): support STM32F429 discovery board
2023-06-15 17:08:14 +02:00
matejcik
d465a14850
chore(core): add signed bootloader and vendor headers for model R
2023-06-13 14:25:39 +02:00
tychovrahe
8d812ca36e
feat(core): support device variants
...
[no changelog]
2023-06-07 19:48:53 +02:00
tychovrahe
a2f8cb9d1c
feat(core): add internal model field to features
...
[no changelog]
2023-06-06 09:39:45 +02:00
Martin Milata
3fb3f108cc
chore(vendor): bump micropython to 1.19.1
...
Relevant micropython commits:
01374d941f9d7398e35990b574769b20c6779457 py/mpconfig.h: Define initial templates for "feature levels".
7b89ad8dbf432ab51eea6d138e179bf51394c786 py/vm: Add a fast path for LOAD_ATTR on instance types.
68219a295c75457c096ac42dbe8411b84e1e1a51 stm32: Enable LOAD_ATTR fast path, and map lookup caching on >M0.
e0bf4611c3a8b23b3c52e6a7804aac341ac3a87d py: Only search frozen modules when '.frozen' is found in sys.path.
f2040bfc7ee033e48acef9f289790f3b4e6b74e5 py: Rework bytecode and .mpy file format to be mostly static data.
926b554dafffa1e9bd80aa12fea5c621221c9d79 extmod/moduos: Create general uos module to be used by all ports.
2b409ef8a46015f8f3bd20bc44e644637dbe9bd3 unix/moduos: Convert module to use extmod version.
47f634300c5572571816817f16836113c98814ae py: Change makemoduledefs process so it uses output of qstr extraction.
0e7bfc88c6ac6b5d64240f91183a3cfe2ab67ade all: Use mp_obj_malloc everywhere it's applicable.
2a6ba47110be88ff1e1f5abd1bd76c353447884c py/obj: Add static safety checks to mp_obj_is_type().
2023-04-21 13:14:07 +02:00
tychovrahe
33fb590f44
refactor(core): decouple i2c driver and touch driver
...
[no changelog]
2023-04-19 21:36:51 +02:00
Martin Milata
81e5dbf301
chore(core): bump version to 2.6.1
...
[skip_ci]
2023-04-09 12:37:18 +02:00
matejcik
c38b39ee6e
feat(core): include signed bootloader 2.1.0
2023-04-07 13:33:04 +02:00
matejcik
9d8cfbf680
chore(core): rebuild QA bootloader
...
[no changelog]
2023-04-05 16:36:29 +02:00
matejcik
744766a9c7
chore(core): rebuild QA bootloader
2023-04-03 22:01:26 +02:00
matejcik
ca5a68ebc5
fix(core): unify error strings
2023-04-03 22:01:26 +02:00
matejcik
6e85d61688
feat(core): QA build for testing bootloaders / upgrades
...
[no changelog]
2023-04-03 22:01:26 +02:00
tychovrahe
64bc94cbc9
feat(core): uninitialized welcome flow
...
[no changelog]
2023-04-03 22:01:26 +02:00
grdddj
26edb42979
chore(core): bump version to 2.6.0
...
[no changelog]
2023-03-28 15:34:06 +02:00
Martin Milata
dce876069b
Merge branch 'release/23.03'
...
Conflicts:
legacy/firmware/version.h
tests/ui_tests/fixtures.json
2023-03-20 13:02:35 +01:00
tychovrahe
5a991f3244
feat(core/rust): bootloader implementation in rust
2023-03-09 16:14:36 +01:00
tychovrahe
ead61d1e90
refactor(core): improve flexibility of build, allow different touch panel driver, allow STM32F429
...
[no changelog]
2023-03-02 15:56:33 +01:00
Martin Milata
233a292fd2
Merge branch 'master' into secfix/23.03
...
Conflicts:
core/Makefile
core/SConscript.firmware
core/embed/firmware/bootloader.bin
core/embed/firmware/bootloaders/bootloader_T.bin
core/embed/firmware/bootloaders/bootloader_T2T1.bin
python/src/trezorlib/firmware/core.py
python/src/trezorlib/firmware/models.py
2023-02-28 15:20:36 +01:00
tychovrahe
4603b9ee74
build(core): embed bootloader according to trezor model
...
[no changelog]
2023-01-20 19:47:12 +01:00
tychovrahe
d00e87ea80
feat(core/rust): homescreen background image
...
[no changelog]
2023-01-19 14:11:42 +01:00
tychovrahe
115f7daaaa
feat(core): prevent installing and running of incompatible firmware, prevent bootloader downgrade
2023-01-12 15:38:36 +01:00
tychovrahe
99d4b0185a
fix(core): fix model T display reinitialization crash
...
[no changelog]
2023-01-11 16:19:02 +01:00
tychovrahe
3cd47f85af
feat(legacy): qa build for upgrade testing
2023-01-02 11:03:38 +01:00
tychovrahe
0d733d8e22
feat(core): change display type for model R
...
[no changelog]
2022-11-24 11:37:52 +01:00
tychovrahe
a89d139dc9
feat(core): increase clock frequency to 180 MHz
2022-11-04 15:10:55 +01:00
Martin Milata
bf7587574d
chore(core): bump version to 2.5.4
...
[skip_ci]
2022-11-01 14:03:31 +01:00
tychovrahe
99eaaae28e
build(core): redistribute content in flash
...
[no changelog]
2022-10-03 09:43:53 +02:00
tychovrahe
f7b9bb4ef8
feat(core/rust): use dma2d to improve rendering performance, implement text over image and icon over icon functions
2022-09-29 21:50:10 +02:00
tychovrahe
e3d5c178f1
feat(core): enable bus fault and usage fault handlers
...
[no changelog]
2022-09-13 15:04:40 +02:00
tychovrahe
6cf92fd748
feat(core): Introduce stack overflow detection by moving stack to the start of RAM
2022-08-16 17:03:06 +02:00
matejcik
ef47c26272
chore(core,legacy): bump versions
...
[skip_ci]
[no changelog]
2022-08-03 13:10:05 +02:00
TychoVrahe
a762e75fee
fix(core): reintroduce touch controller initialization without power down/up in firmware, fix model R firmware initialization
2022-07-26 15:09:43 +02:00
tychovrahe
c33f92bd72
feat(core): add RGB LED driver for Model R
2022-06-22 09:28:31 +02:00
Ondrej Mikle
7b7318c3aa
feat(core/boardloader): add fixed-address boardloader capablities field
2022-06-13 18:18:25 +02:00
Martin Novak
2663801108
perf(firmware): do not initialize touch controller in firmware
2022-06-02 10:30:53 +02:00
Ondrej Mikle
c563c987e1
feat(core): jump back and stay in bootloader for TT via reverse SVC call trampoline
2022-06-01 14:50:59 +02:00
Ondřej Vejpustek
db0da196a8
chore(vendor): update secp256k1-zkp to latest
2022-05-16 16:23:18 +02:00
tychovrahe
f7a3aad9bd
feat(core): initial Model R display implementation with framebuffer
2022-05-10 16:49:23 +02:00
grdddj
12da7f301d
feat(core): allow for model R in firmware build
...
As model R will run on the same computational hardware as model T,
memory_R.ld is just a symbolic link to memory_T.ld.
[no changelog]
2022-05-06 11:44:52 +02:00
Martin Milata
692ea1415e
chore(core): bump version to 2.5.2
...
[skip_ci]
2022-05-04 12:09:14 +02:00
TychoVrahe
7912a7d0d3
build(core,storage): fix conditional compilation for different Trezor models
...
* build(core,storage) - Fix conditional compilation for different trezor models
* build(core) - Rename MODEL_* macro to TREZOR_MODEL_*, remove the original TREZOR_MODEL macro (replaced by conditional compilation for QSTR generation)
* build(core) - fixed missing TREZOR_MODEL to TREZOR_MODEL_x changes
[no changelog]
2022-04-26 13:47:40 +02:00
Martin Milata
30ec1802f4
chore(core): bump version to 2.5.1
...
[skip_ci]
2022-03-30 21:57:54 +02:00
Pavol Rusnak
30a77a76bc
chore(legacy): rename MEMORY_PROTECT flag to PRODUCTION to match core naming ( #2003 )
2021-12-12 15:45:10 +01:00
Martin Milata
38c526719c
chore(core): bump version to 2.4.4
...
[skip_ci]
2021-12-01 14:45:47 +01:00
Ondrej Mikle
219e08d81e
build(core): keep bootloader image even for non-production builds
...
[no changelog]
2021-11-23 16:29:38 +01:00
Martin Milata
aa3784f726
build(core): place secp256k1-zkp in FLASH2 to make space for bootloader
...
[no changelog]
2021-11-23 14:51:11 +01:00
Ondřej Vejpustek
ad38d8e324
refactor(crypto,core): make zkp_context_init() return status
2021-11-18 19:05:40 +01:00
matejcik
1d72085b5c
feat(core): implement conversion from timestamp to datetime
2021-10-29 11:00:30 +02:00
Ondřej Vejpustek
26463eb3ce
feat(core): make core use ecdsa from secp256k1_zkp wherever possible
2021-10-25 14:41:28 +02:00
Pavol Rusnak
9e0cfa6783
fix(core): we don't need separate linker script for zkp
2021-10-25 14:41:28 +02:00
matejcik
32be2c09b9
feat(core): enable f-strings for micropython
...
[no changelog]
2021-10-13 11:53:17 +02:00
Jan Pochyla
2703d714c2
feat(core): add Rust UI components, layouts, text rendering
...
[no changelog]
2021-10-07 15:01:55 +02:00
Ondrej Mikle
6ea4b7b211
fix(core & legacy): better styled compiler checks
2021-09-27 15:42:29 +02:00
Ondrej Mikle
6b849b1d4d
fix(core & legacy): avoid accidental build with broken stack protector
2021-09-27 15:42:29 +02:00
Martin Milata
bd005e33df
refactor(core): decouple T1 button handling from touch
...
[no changelog]
2021-09-23 12:30:13 +02:00
Martin Milata
aace875fef
chore(vendor): bump micropython to 1.17
...
Relevant micropython commits:
d1bfb271d7686708fe8711a177629c8bf6e7f6a6 lib/uzlib: Move uzlib code from extmod to lib.
4d546713ec8858cbf908de45de11cbfc46a20971 shared: Introduce new top-level dir and move 1st party lib code there.
ca920f72184c50f61002aa9d5cd01555b1e28b7b py/mpstate: Make exceptions thread-local.
2021-09-17 11:18:14 +02:00
Pavol Rusnak
d153082c9c
chore(vendor): bump micropython to 1.14
...
Relevant micropython commits:
4559bcb4679e04e0a5e24030675676ff6a9803f2 unix: Make mp_hal_delay_ms run MICROPY_EVENT_POLL_HOOK.
2021-09-17 11:18:14 +02:00
Tomas Susanka
cec1f39a90
chore(core, legacy): bump versions
...
[no changelog]
2021-08-31 12:55:37 +02:00
Martin Milata
81869fc4b0
chore(core): bump version to 2.4.2
...
[skip_ci]
2021-07-08 13:38:29 +02:00
Ondřej Vejpustek
24200e7424
fixup! fix(legacy): make RDI work on T1
2021-06-24 17:34:24 +02:00
Ondrej Mikle
daa94ac941
fix(legacy): make RDI work on T1
2021-06-24 17:34:24 +02:00
Ondřej Vejpustek
4968d7da53
feat(core): implement svc shutdown
2021-06-23 16:40:45 +02:00
Ondřej Vejpustek
cca9d4b1c4
refactor(core): rename shutdown to shutdown_privileged
2021-06-23 16:40:45 +02:00
Ondřej Vejpustek
7686eb355a
fix(core): fix import of random delays
2021-06-23 16:40:45 +02:00
Jan Pochyla
8a21e3fc73
feat(core): Add Rust Protobuf codec
2021-06-08 09:55:19 +02:00
Martin Milata
ca836b2e45
chore(core): bump version to 2.4.1
2021-06-02 12:50:22 +02:00
Martin Milata
8c6b93e0bd
build(core): account for ARM unwinding info in memory layout
...
Currently the 8-byte section is inserted under semi-random name like
.ARM.exidx.text._ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h79ccbc4bdfe3f200E.
This makes it hard to include it in _codelen that is later baked into
firmware header. This change adds new section because including it in
.flash causes linker error due to mixing "ordered" and "unordered"
sections.
By renaming .exidx to /DISCARD/ we'd drop this info, there may also
exist compiler flag to do that.
2021-05-21 13:49:42 +02:00
Ondřej Vejpustek
6fd4739c5c
feat(core): make random delays use chacha_drbg
2021-05-21 13:42:53 +02:00
Ondřej Vejpustek
8ee17f69b3
refactor(core): move wait_random and rdi into separate file
2021-05-21 13:42:53 +02:00
matejcik
5f4240d93c
feat(core): preallocate sys.modules to an appropriate size
2021-05-06 13:14:21 +02:00
Jan Pochyla
6257584951
feat(core): Add Rust bindings to MicroPython and trezorhal
...
core: Remove dangling module decls
core: Use new Cargo feature resolver, use external MacOS debug info
core: Rust docs improvements
core: Upgrade bindgen
core: Add test target to Rust
ci: build rust sources
build(core): .ARM.exidx.text.__aeabi_ui2f in t1 firmware size
It's an unwind table for softfloat function inserted by rustc, probably
can be removed to save 8 bytes:
599c58db70/link.x.in (L175-L182)
scons: Remove dead code
core: Move Rust target to build/rust
core: Replace extern with a FFI version
core: Add some explanatory Rust comments
core: Use correct path for the Rust lib
core: Remove Buffer::as_mut()
Mutable buffer access needs MP_BUFFER_WRITE flag. TBD in the Protobuf PR.
core: Improve docs for micropython::Buffer
core: Minor Rust docs changes
core: Rewrite trezor_obj_get_ll_checked
core: Fix incorrect doc comment
core: Remove cc from deps
fixup! core: Rewrite trezor_obj_get_ll_checked
core: update safety comments
2021-05-05 16:00:21 +02:00