matejcik
c0de11fbeb
fix(core): use stm32f4 implementation of secret.c for unix too
...
(fixes bootloader_emu build because there was an error in the unix dummy
impl)
2023-08-16 10:32:25 +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
fa71c8244c
fix(core): fix MPU settings
...
[no changelog]
2023-07-21 12:28:13 +02:00
tychovrahe
ad1f2360bd
fix(core): replace systick based wait in display SPI with loop as systick does not work in fault handlers
...
[no changelog]
2023-07-21 12:27:54 +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
tychovrahe
539420cac8
refactor(core): make backlight/fading optional
...
[no changelog]
2023-06-27 16:18:30 +02:00
tychovrahe
1f1680243f
refactor(core): separate backlight pwm driver and display driver
...
[no changelog]
2023-06-27 16:18:30 +02:00
tychovrahe
9cd59105c1
refactor(core): modify i2c driver to allow usage of more i2c peripherals
...
[no changelog]
2023-06-26 12:13:31 +02:00
tychovrahe
638ebbc0df
fix(core): improve robustness of touch driver
...
[no changelog]
2023-06-20 23:06:10 +02:00
tychovrahe
da4ce32b45
fix(core): fix gamma correction for Model T
2023-06-20 10:58:09 +02:00
tychovrahe
32a2b371bd
feat(core): allow different screen sizes for TT UI
...
[no changelog]
2023-06-15 17:08:14 +02:00
tychovrahe
d3284baf21
feat(core): support STM32F429 discovery board
2023-06-15 17:08:14 +02:00
tychovrahe
8d812ca36e
feat(core): support device variants
...
[no changelog]
2023-06-07 19:48:53 +02:00
tychovrahe
531511407b
feat(core/rust): add bootloader design for T2B1
...
[no changelog]
2023-06-06 17:49:53 +02:00
tychovrahe
a2f8cb9d1c
feat(core): add internal model field to features
...
[no changelog]
2023-06-06 09:39:45 +02:00
tychovrahe
0c5db05357
feat(core): support 16bit i8080 display bus
...
[no changelog]
2023-04-27 12:36:12 +02:00
tychovrahe
09349c308a
feat(core): support hw revision 6 of T2B1
...
[no changelog]
2023-04-26 14:15:00 +02:00
tychovrahe
33fb590f44
refactor(core): decouple i2c driver and touch driver
...
[no changelog]
2023-04-19 21:36:51 +02:00
matejcik
ca5a68ebc5
fix(core): unify error strings
2023-04-03 22:01:26 +02:00
tychovrahe
9b8984896e
refactor(core): unify error screens
...
[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
tychovrahe
6e0c2578f8
fix(core): fix FMC initialization
...
[no changelog]
2023-03-31 22:34:14 +02:00
matejcik
9244522721
fix(core): remove shutdown()
...
In a very weird situation, our declaration of `shutdown()` shadows a
function `shutdown(int, int)` from sys/socket, which _just happens_ to
be called by libxcb when closing the sdl window. This calls
`main_clean_exit` which calls into micropython and causes at best an
uncaught NLR and at worst an outright segfault because by that time the
micropython environment doesn't exist anymore.
I didn't think this sort of thing would be possible but here we are??
Fixed by removing `__shutdown()` and replacing `shutdown` with
`trezor_shutdown`
2023-03-24 13:24:46 +01:00
tychovrahe
e30fdddd83
fix(core): clear model R display before turning it on
2023-03-09 16:14:36 +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
tychovrahe
52cd43bf29
fix(core): improve tearing effect prevention
...
[no changelog]
2023-02-07 19:05:01 +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
3cc66301c3
fix(core): fix model T FMC timing
...
[no changelog]
2023-01-04 13:04:57 +01:00
tychovrahe
4c7060186a
fix(core): fix display blinking by increasing backlight pwm frequency
2022-11-24 13:22:30 +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
tychovrahe
86f2dacc6e
fix(core): re-introduce touch event filtering
...
[no changelog]
2022-10-21 14:24:10 +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
b9647d1296
fix(core): fix flashing usb disconnected error
...
[no changelog]
2022-09-26 13:31:04 +02:00
Ondrej Mikle
77cdf4b43c
fix(core): consider device in USB suspend connected if it was configured before
...
[no changelog]
2022-09-05 09:36:32 +02:00
Ondrej Mikle
a0287698d5
feat(core): show blue dot when USB data not connected
2022-08-25 16:42:29 +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
tychovrahe
f538547d5b
feat(core): optimize touch controller communication
2022-08-08 15:52:26 +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
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
Ondrej Mikle
7b7318c3aa
feat(core/boardloader): add fixed-address boardloader capablities field
2022-06-13 18:18:25 +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
tychovrahe
58041036f5
feat(core): set colors for monochromatic displays
2022-05-10 16:49:23 +02:00
tychovrahe
936c84bac6
feat(core): added button support for Model R
2022-05-10 16:49:23 +02:00
grdddj
6b5f578d02
feat(core): implement basic R emulator
...
Can be built by `TREZOR_MODEL=R make build_unix`, `make build_unix_frozen` does not work yet.
All the dialogs are not very pretty, they are just meant to work.
2022-05-06 11:44:52 +02:00