1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-08-04 12:56:25 +00:00
Commit Graph

220 Commits

Author SHA1 Message Date
tychovrahe
80a18f1156 fix(core/prodtest): fix backlight setting in prodtest
[no changelog]
2025-05-30 14:39:10 +02:00
tychovrahe
b8b2d7cf13 feat(core/bootloader): add separate bootloader-entry haptic effect
[no changelog]
2025-05-30 14:38:56 +02:00
tychovrahe
a688bae64b fix(core/bootloader): fix entering bootloader on battery powered devices
[no changelog]
2025-05-30 14:38:56 +02:00
kopecdav
7d3d2e877f refactor(core): add power manager api comments
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
b97d05247c fix(core/prodtest): fix power off led signalization
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
378b81b663 feat(core/prodtest): add command to adjust SOC limit
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
7de6e438eb fix(core/prodtest): adjust power manager command documentation
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
33b8b2c8f7 fix(core): fix kernel power manager initialization
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
b634eaca91 feat(core/bootloader): adjust boot sequence for battery devices
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
a4eaf4dc27 feat(core): respect manufacturing mode in power on sequence
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
2e23349419 feat(core/prodtest): limit charging in prodtest to 70% SOC
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
e01edaad4a feat(core/prodtest): add fuel gauge to prodtest welcome screen
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
26dc39b941 feat(core/bootloader): add power management to bootloader
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
7fa4e2d510 fix(core/prodtest): fix power management initialization in prodtest
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
c89ca35bbc feat(core): event polling for power manager
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
0cd38186bf fix(core): adjust to powerctl->power manager transition
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
48ef573649 refactor(core): remove recursion from power manager state machine automat
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
a530fb2c76 feat(core): add pm_charging_set_max_current function to API
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
0e228caac1 feat(core) add prodtest precharge test [no changelog] 2025-05-30 14:04:45 +02:00
kopecdav
4b9fb839cd refactor(core): split pmic as a separate feature
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
58e31be4ec feat(core): add power_state into prodtest pm_report
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
892a1b8171 style(core): fix cstyles [no changelog] 2025-05-30 14:04:45 +02:00
kopecdav
a3ab75b5aa fix(core): fix prodtest to not hibernate with external power source [no changelog] 2025-05-30 14:04:45 +02:00
kopecdav
f6bb7684cc chore(core): add machine readable output of pm report [no changelog] 2025-05-30 14:04:45 +02:00
kopecdav
8e7d5a2a01 chore(core): unify prodtests under power_manager
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
39c5c9b068 feat(core): remove powerctl, transfer all subordinate libraries into power manager
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
e1503eee53 fix(core): add power_manager into the prodtest
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
614528acb6 refactor(core): refactor pm prodtest to new namespace, add watch test
[no changelog]
2025-05-30 14:04:45 +02:00
kopecdav
0fc4ad037e feat(core): Add power manager watch prodtest [no changelog] 2025-05-30 14:04:45 +02:00
kopecdav
6745cf01a5 feat(core): add battery SoC into power manager report [no changelog] 2025-05-30 14:04:45 +02:00
kopecdav
5b3c46c81f feat(core): Add power manager prodtest
[no changelog]
2025-05-30 14:04:45 +02:00
tychovrahe
a6fda4d814 feat(core/prodtest): add reboot to bootloader command
[no changelog]
2025-05-30 13:34:21 +02:00
tychovrahe
5c3cf0004e chore(core): bump FW and fix version due to storage migration
[no changelog]
2025-05-30 13:12:58 +02:00
tychovrahe
70e5561c3f feat(core): adjust bootloader locking for tropic-enabled models
[no changelog]
2025-05-27 13:38:56 +02:00
tychovrahe
539a0d08c8 fix(core/bootloader): fix BLE communication error message
[no changelog]
2025-05-27 13:01:29 +02:00
tychovrahe
6bdac7614f feat(core): support handling of tropic keys in secret sector
[no changelog]
2025-05-19 11:41:36 +02:00
tychovrahe
e4a31ab0e3 feat(core/prodtest): report build version in prodtest intro and version 2025-05-19 09:34:26 +02:00
tychovrahe
048970d059 fix(core/bootloader): fix reboot trezor when called from waiting for host
[no changelog]
2025-05-16 14:56:23 +02:00
Roman Zeyde
556e29b068 perf(core): enable MICROPY_ROM_TEXT_COMPRESSION
Also, use `__builtin_strcmp` instead of `strcmp`.

[no changelog]
2025-05-15 09:55:40 +03:00
Roman Zeyde
ca943aeb8b chore(core): don't use main() in core/embed/projects/firmware/main.c
It would allow compile it without `-ffreestanding`.

[no changelog]
2025-05-13 20:17:41 +03:00
Roman Zeyde
7cdb0cf244 feat(vendor): update MicroPython to allow excluding line numbers from bytecode
Setting `MICROPY_ENABLE_SOURCE_LINE=0` helps reducing the debug firmware size by ~2%:
```
$ TREZOR_MODEL=T3T1 MICROPY_ENABLE_SOURCE_LINE=0 PYOPT=0 make -C core build_firmware
<snip>
           FLASH:     1,629,456 B      1664 KB     95.63%
```

Before this PR:
```
           FLASH:     1,662,224 B      1664 KB     97.55%
```

[no changelog]
2025-05-13 17:07:37 +03:00
tychovrahe
e641fb1c25 fix(core): fix sysevents polling deadlines
[no changelog]
2025-05-12 08:58:58 +02:00
tychovrahe
d6220d72a5 fix(core/bootloader): fix null ios handling in host control
[no changelog]
2025-05-12 08:58:46 +02:00
cepetr
b9bb71a243 refactor(core): prepare board_capabilities for secmon api
[no changelog]
2025-05-12 07:57:46 +02:00
tychovrahe
c319e5fa20 refactor(core/bootloader): streamline initializing & deinitializing communication interfaces in bootloader
[no changelog]
2025-05-07 17:08:40 +02:00
tychovrahe
4f783c0a45 fix(core/prodtest): fix nrf communication tests
[no changelog]
2025-05-07 17:08:40 +02:00
tychovrahe
3fe0c90c1c feat(core): change internal communication with NRF to SPI only
[no changelog]
2025-05-07 16:36:40 +02:00
tychovrahe
54202b9f53 feat(nordic): send busy response when trezor is not listening to BLE messages
[no changelog]
2025-05-07 16:08:46 +02:00
tychovrahe
70014e103a feat(core/bootloader): add power-off item to the bootloader menu
[no changelog]
2025-05-07 15:23:46 +02:00
tychovrahe
37687f1815 feat(core): add BLE to bootloader 2025-05-07 14:54:28 +02:00
Roman Zeyde
749c0bc8b2 chore(core): use systick_us for mp_hal_ticks_us
[no changelog]
2025-05-06 09:37:17 +03:00
tychovrahe
c6dedea7b3 chore(core/prodtest): improve CLI parameter documentation
[no changelog]
2025-05-01 19:53:00 +02:00
tychovrahe
e9b47d1116 chore(core/prodtest): fix time units in readme for NFC commands
[no changelog]
2025-05-01 19:53:00 +02:00
tychovrahe
a22563c01a chore(core/prodtest): fix typos in prodtest
[no changelog]
2025-05-01 19:53:00 +02:00
tychovrahe
3a9315cc58 feat(core/prodtest): allow infinite testing of NFC functionalities
[no changelog]
2025-05-01 19:53:00 +02:00
Ioan Bizău
8ad1069166 chore(core): bump version to 2.8.11
[no changelog]
2025-05-01 08:53:26 +02:00
kopecdav
aa16fa71d6 fix(core): remove backup ram deinit outside of FIXED_HW_DEINIT
[no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
c9984fabb2 fix(core): fix backup ram prodtest argument parsing
[no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
ae02677ca2 feat(core): add backup ram global initialization in bootloader, prodtest and kernel
[no changelog]
2025-04-30 15:18:02 +02:00
kopecdav
bece935d67 refactor(core): Remove backup ram section from linker [no changelog] 2025-04-30 15:18:02 +02:00
kopecdav
5ae5d97328 feat(core): Add backup_ram header, version and consistency checks + minor refactor [no changelog] 2025-04-30 15:18:02 +02:00
kopecdav
7f27730b5d feat(core): Add backup driver prodtest [no changelog] 2025-04-30 15:18:02 +02:00
kopecdav
bfd78c8d6e feat(core): Update fuel gauge charging mode + Update battery model to separate battery data in standalone header file. [no changelog] 2025-04-30 12:55:49 +02:00
kopecdav
3b407e8dc8 feat(core): Add fuel_gauge prodtest [no changelog] 2025-04-30 12:55:49 +02:00
Roman Zeyde
65e8f96428 chore(core): update main_clean_exit comment
We are not using `atexit()` handler following #4892.

[no changelog]
2025-04-24 16:26:36 +03:00
cepetr
8b0736c360 fix(prodtest): increase vcp ring buffer size
[no changelog]
2025-04-23 13:32:21 +02:00
cepetr
a05ce8aa70 fix(core): fix USB VCP freeze on T3W1 in prodtest
[no changelog]
2025-04-17 11:45:26 +02:00
Martin Milata
e81617e1c6 build(core): fix build for GCC14
[no changelog]
2025-04-16 17:27:11 +02:00
Roman Zeyde
2975a07f1f chore(core): remove unused path definitions from MicroPython emulator
[no changelog]
2025-04-14 22:42:05 +03:00
cepetr
8a636bd9cf fix(core): make mod_trezorio_poll return False only on timeout
[no changelog]
2025-04-14 12:30:52 +02:00
Martin Milata
828e1868ab docs: fix broken changelog links 2025-04-09 10:11:21 +02:00
tychovrahe
f1120d53c2 fix(core/prodtest): provide BLE driver with pairing code when accepting pairing
[no changelog]
2025-04-07 15:05:57 +02:00
kopecdav
56bad5bd3a feat(core): Update stwlc38 patching cut selection + new stwlc38 FW patch and configs [no changelog] 2025-04-07 13:42:10 +02:00
tychovrahe
d506abd9db fix(core/bootloader_ci): fix firmware upload
[no changelog]
2025-04-04 16:20:01 +02:00
tychovrahe
7e2847c357 fix(core): allow running firmware on locked bootloader device based on allow_run_with_secret flag 2025-04-03 18:59:52 +02:00
tychovrahe
8ea957b8e1 feat(core/prodtest): add hibernation on power button long-press
[no changelog]
2025-04-03 16:06:20 +02:00
tychovrahe
f579d31684 refactor(core/prodtest): make cli non-blocking, event-loop compatible
[no changelog]
2025-04-03 16:06:20 +02:00
Roman Zeyde
ec87d2d21d fix(core): presize __main__ module to avoid heap fragmentation
[no changelog]
2025-04-02 16:01:51 +03:00
cepetr
7994a0b93b feat(core): introduce kernel event loop
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
8d7a25e5eb feat(core): add event polling to button driver
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
271f029be7 fix(core): fix emulator build on macOS
[no changelog]
2025-04-01 10:00:26 +02:00
tychovrahe
9d46ad259c fix(core/prodtest): remove final wait from report commands
[no changelog]
2025-03-27 18:25:46 +01:00
tychovrahe
b7b8e77ccb feat(core): enable tropic in firmware/kernel on hw
[no changelog]
2025-03-27 11:59:10 +01:00
tychovrahe
4fce1f55ee fix(core): fix bootloader build for models with HW keys but without optiga
[no changelog]
2025-03-26 14:59:19 +01:00
tychovrahe
8e0e3a1787 refactor(core): complete bootloader refactoring 2025-03-24 14:31:14 +01:00
tychovrahe
6fb65bcfd9 refactor(core): refactor button events
[no changelog]
2025-03-20 11:07:34 +01:00
Ioan Bizău
3efa0480c6 feat(core): add libtropic to the unix build
[no changelog]
2025-03-13 15:08:48 +01:00
Roman Zeyde
c95158751a build(core): allow increasing VCP write timeout
It should allow us exporting larger amounts of debug data.

[no changelog]
2025-03-13 16:07:09 +02:00
tychovrahe
103568e2e5 feat(core/prodtest): show device ID in prodtest QR code 2025-03-08 12:26:41 +01:00
tychovrahe
661a30e390 feat(core/prodtest): support writing device ID into OTP memory 2025-03-08 12:26:41 +01:00
tychovrahe
ee9f42a8b2 fix(core/prodtest): add early return in case of otp batch reading error
[no changelog]
2025-03-08 12:26:41 +01:00
tychovrahe
6db5eaf850 fix(core/prodtest): fix otp device variant lock check
[no changelog]
2025-03-08 12:26:41 +01:00
kopecdav
f2054ff409 feat(core/prodtest): Introduce unit test extension into prodtest [no changelog] 2025-03-07 17:24:24 +01:00
obrusvit
acdf549fc4 chore(core): bump version to 2.8.10
[no changelog]
2025-03-07 11:44:29 +01:00
tychovrahe
d1c1503fa4 feat(core/prodtest): add tamper testing function
[no changelog]
2025-03-04 11:23:55 +01:00
tychovrahe
d535e725c0 fix(core): fix tamper setting
[no changelog]
2025-03-04 11:23:55 +01:00
cepetr
19ba854c69 feat(code): introduce dma2d syscalls
[no changelog]
2025-03-04 08:08:10 +01:00
tychovrahe
dcf9002f00 feat(core/prodtest): add hw-revision command and driver 2025-03-03 13:28:10 +01:00
tychovrahe
a22c15663c chore(core): fix typo
[no changelog]
2025-03-03 13:28:10 +01:00
tychovrahe
4221b8514b feat(core/prodtest): implement NRF test functions
[no changelog]
2025-02-26 10:27:14 +01:00