1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-24 23:38:09 +00:00
Commit Graph

52 Commits

Author SHA1 Message Date
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
6caafd6642 fix(core/bootloader): fix T3B1 bootloader UI - unsafe screen, boot image 2024-09-02 15:50:51 +02:00
tychovrahe
5417ec15df fix(core): introduce ui_overlay feature - fixes T3T1 bootloader compilation with new rendering
[no changelog]
2024-08-19 12:17:11 +02:00
Martin Milata
7e26e1df15 chore(core/rust): drop unused ui_bounds
[no changelog]
2024-07-16 16:23:19 +00:00
tychovrahe
3bc9e23260 feat(core): add support for 32bit colors in UI
[no changelog]
2024-07-09 11:44:21 +02:00
tychovrahe
3a3259b574 feat(core/mercury): change homescreen flow 2024-06-24 21:43:08 +02:00
matejcik
567de6579e chore(core/rust): drop cstr_core dependency
now that we have c"..." literals in Rust
2024-06-19 09:14:51 +02:00
cepetr
212391fc37 feat(core): add pareen & easer crates
[no changelog]
2024-06-03 14:26:25 +02:00
matejcik
e62f0b507a build(core): fix build for Rust unit tests on T3T1 2024-05-31 15:49:29 +02:00
Pavol Rusnak
87619c19ee chore(core/rust): bump buildgen to 0.62.0
this fixes build on macOS

[no changelog]
2024-05-24 12:04:24 +02:00
cepetr
5d8a7ac5bf feat(core): introduce new drawing library
[no changelog]
2024-05-17 09:17:37 +02:00
cepetr
3336e3902f feat(core): introduce new display drivers
[no changelog]
2024-05-17 09:17:37 +02:00
Martin Milata
cf00726152 feat(core): copy T2T1 bootloader UI for T3T1 2024-04-12 12:25:46 +00: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
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
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
tychovrahe
72dc8f57e8 feat(core): add haptic feedback
[no changelog]
2024-02-29 23:05:56 +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
grdddj
b8ea21d24a feat(all): implement translations into Trezor
Co-authored-by matejcik <ja@matejcik.cz>
2024-02-12 14:49:32 +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
tychovrahe
df42c99bc9 feat(core): add basic support for efficient frame buffer graphics
[no changelog]
2023-10-10 19:01:43 +02:00
Andrew Kozlik
db6630a5a3 feat(core): Support Optiga in Trezor firmware. 2023-09-13 15:45:48 +02:00
tychovrahe
ebbd7f9d35 refactor(core): restructure trezorhal, prepare to support more platforms
[no changelog]
2023-07-07 22:09:56 +02:00
tychovrahe
539420cac8 refactor(core): make backlight/fading optional
[no changelog]
2023-06-27 16:18:30 +02:00
matejcik
437b9e5991 feat(core/rust): allow debug feature in tests (means we can print things) 2023-06-21 14:19:03 +02:00
Martin Milata
732e2cc9b5 refactor(core): split tjpgdec into own crate
[no changelog]
2023-06-14 15:53:56 +02:00
grdddj
da14c22712 feat(all): add UI for Model R 2023-05-31 10:14:54 +02:00
matejcik
eee4c624f9 feat(core/rust): JSON output from component tracing 2023-05-11 21:02:21 +02:00
tychovrahe
0c5db05357 feat(core): support 16bit i8080 display bus
[no changelog]
2023-04-27 12:36:12 +02:00
tychovrahe
83500487b8 refactor(core): improve conditional compilations based on model
[no changelog]
2023-04-19 21:36:51 +02:00
Martin Milata
e60ed788f2 fix(core/rust/ui): add cargo flag for Component::bounds() support
Rarely used debugging feature.

[no changelog]
2023-03-23 20:16:22 +01:00
Martin Milata
4622aec0f1 refactor(core): switch to Rust implementation of QR-Code-generator
[no changelog]
2023-03-09 23:36:36 +01:00
tychovrahe
cacae36c73 feat(core/rust): bootloader compilation with rust 2023-03-09 16:14:36 +01:00
grdddj
f8c432e955 chore(core/rust): delete model_1 code - it should use model_r
[no changelog]
2023-01-31 10:55:12 +01:00
tychovrahe
d00e87ea80 feat(core/rust): homescreen background image
[no changelog]
2023-01-19 14:11:42 +01: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
Ondrej Mikle
4d3d9f5d7e docs(core): documentation on embedded C+Rust debug 2022-07-26 11:24:27 +02:00
grdddj
9dc73427fb feat(rust): add print! macro for logging into terminal 2022-07-20 12:46:01 +02:00
matejcik
2aa427a6e3 feat(core/rust): make Rust buildable without Micropython
Features `micropython` and `protobuf` are defined. Protobuf implies micropython
because our protobuf impl is pretty much _for_ micropython.

The respective subdirs are included only if the matching feature is defined.

util.rs is moved to micropython because it mostly concerns micropython interop

ResultExt, useful only for ui_debug, is moved to ui::util.

A new module `trezorhal::time` is provided. It mirrors functionality of
`micropython::time` via stmlib functions.  The intended use is to always use
functions from `trezorhal::time`. The right micropython variants are used when
micropython is available, otherwise the pure stmlib versions are called.

ui::*::layout is conditional for micropython feature, because it only concerns
micropython layouts. If we want to reuse layouts defined there, we will need to
export them to not depend on Objs and Qstrs etc.
2022-06-16 13:08:07 +02:00
Jan Pochyla
c3b82fd651 feat(core/rust): add trezorhal bindings 2022-06-08 14:42:04 +02:00
matejcik
c77066065e chore(core/rust): bump cty to 0.2.2
this fixes signedness of char on Mac M1
2022-06-01 16:35:33 +02:00
grdddj
feb96c84b0 chore(core/rust): use clippy for all features 2022-05-16 10:49:04 +02:00
grdddj
7804893179 feat(core/rust): create model_tr feature
Make event.rs shared among all features, under src/ui/event.rs.

[no changelog]
2022-05-06 11:44:52 +02:00
Martin Milata
1734957685 build(core): update rust edition to 2021
[no changelog]
2021-12-07 17:12:43 +01:00
Martin Milata
4d60c10330 feat(core/rust): add support for T1 UI
[no changelog]
2021-11-24 15:36:34 +01:00
Jan Pochyla
5eefcffc7c chore(core): prepare for fuzzing targets
First, we change the Protobuf definition includes to use an exact path relative to our crate's directory, instead of the OUT_DIR. This fixes build when a combination of stable and nightly toolchains is used (nightly is needed for the fuzzing targets).

Another change is a slight fix in the panic handler conditional compilation. Fuzzing is using the crate with `features = ["test"]`, but doesn't turn on the `test` cfg.

[no changelog]
2021-10-07 15:01:55 +02:00
Jan Pochyla
2703d714c2 feat(core): add Rust UI components, layouts, text rendering
[no changelog]
2021-10-07 15:01:55 +02:00
Jan Pochyla
2c8dec93a6 feat(core): Split unix main, link core obj into Rust test target 2021-09-21 12:43:31 +02:00
matejcik
c06a93cba5 feat(core/rust): propagate bitcoin_only flag to Rust build 2021-06-08 09:55:19 +02:00