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

360 Commits

Author SHA1 Message Date
Pavol Rusnak
34322d5fb6
firmware: enable stack protector (except nlr stuff) 2017-12-13 02:06:22 +01:00
Pavol Rusnak
1aba175d7d
build: adapt to new trezor-crypto changes 2017-12-12 22:00:15 +01:00
Pavol Rusnak
7b9fcf98ae
drop embed/extmod/modtrezorcrypto/trezor-crypto symlink 2017-12-12 20:31:03 +01:00
Jochen Hoenicke
816bfe387f Bug fix: missing parenthesis in flash_write_word 2017-12-12 00:01:49 +01:00
Pavol Rusnak
20a1326ebb
storage: fix typo 2017-12-11 23:11:43 +01:00
Pavol Rusnak
ce3eaba925
trezorhal: use static inline instead of static (gcc 7.2 workaround) 2017-12-11 22:34:45 +01:00
Pavol Rusnak
8a8450d6be
fix build for older compilers 2017-12-09 18:18:42 +01:00
Pavol Rusnak
e268aeb8b7
flash: simplify/unify flash_erase_sectors usage 2017-12-09 18:00:37 +01:00
Pavol Rusnak
6ab0f03ec4
embed: norcow_init, storage_init and flash_init don't return secbool, they halt using ensure if something goes wrong 2017-12-09 14:48:49 +01:00
Pavol Rusnak
6b94fd26e4
boardloader: rename reset_flags_init to reset_flags_check 2017-12-09 14:36:02 +01:00
Jan Pochyla
314e6a99c1 modtrezorcrypto/bip32: add HDNode.__init__ 2017-12-08 17:25:28 +01:00
Pavol Rusnak
626a8885ce
trezor.config: add compaction test 2017-12-08 16:46:13 +01:00
Pavol Rusnak
b39b4a4947
norcow: fix bug 2017-12-08 16:17:58 +01:00
Pavol Rusnak
7f5192701f
unix: use mmap to access flash file 2017-12-08 14:18:15 +01:00
Pavol Rusnak
44a11fa3ef
norcow: introduce NORCOW_MAGIC 2017-12-08 13:42:17 +01:00
Pavol Rusnak
38e3088325
common: don't expose shutdown() via common.h 2017-12-08 12:42:43 +01:00
Pavol Rusnak
f88080b904
Merge branch 'pin_fails' 2017-12-07 15:29:47 +01:00
Pavol Rusnak
40104822e8
unix: make SDL failures fatal 2017-12-07 12:44:38 +01:00
Pavol Rusnak
04d980f8f0
add Features.model field (set to "T") 2017-12-04 22:40:42 +01:00
Jan Pochyla
8b85078730
reflash: add new firmware target
Flashes (unlocked) boardloader and bootloader from pre-compiled sdcard image.
2017-11-28 20:59:32 +01:00
Jan Pochyla
09af312789 prodtest: add BORDER command 2017-11-27 13:19:22 +01:00
Pavol Rusnak
679d024df0
display: use CMD2EN: Command 2 Enable 2017-11-22 19:31:58 +01:00
mcudev
6179edde90 touch: reset and usage updates 2017-11-21 10:22:16 -05:00
mcudev
5556c37f6f display: hardware reset updates 2017-11-21 10:22:16 -05:00
mcudev
61ff3b46c5 display: ST7789V porch settings are for RGB interface, not parallel 8080-I 2017-11-21 10:22:16 -05:00
mcudev
30829b281c display: ST7789V remove commands that unnecessarily set default values again 2017-11-21 10:22:16 -05:00
mcudev
e62fa345c8 display: minor ILI9341 updates 2017-11-21 10:22:16 -05:00
mcudev
a0129e7715 display: orientation, windowing, and config updates 2017-11-21 10:22:16 -05:00
mcudev
f53ec3f928 display: update display_unsleep 2017-11-21 10:22:16 -05:00
mcudev
5e867cc092 display: update display_sleep 2017-11-21 10:22:16 -05:00
mcudev
2ea5d102a8 bootloader, firmware: remove unneeded call to display_orientation 2017-11-21 10:22:08 -05:00
Pavol Rusnak
4002ef2a49
firmware, unix: return cpython compatibility (needed for __class__ and __dict__) 2017-11-21 15:35:46 +01:00
Pavol Rusnak
ec6c3c2cdc
unix, firmware: more cleanup 2017-11-21 15:11:35 +01:00
Pavol Rusnak
d4893add54
firmware, unix: turn off some modules 2017-11-20 17:29:24 +01:00
Jan Pochyla
5bd39c70b0 storage: fix change_pin and small details 2017-11-08 18:08:19 +01:00
Jan Pochyla
cf14717d43 unix: add shutdown()
As sys/socket.h defines shutdown also, we can't include common.h in unix mocks.
2017-11-08 18:07:33 +01:00
Pavol Rusnak
879a3e85bd
trezorhal: reorder stuff in common.{c,h}; remove unnecessary externs for functions 2017-11-07 20:44:30 +01:00
Pavol Rusnak
d9574bf131
trezorhal: enable BOR level 3, PVD level 5, turn off display in PVD handler 2017-11-07 18:06:42 +01:00
Pavol Rusnak
e4360a7296
bootloader: change upgrade criteria to vendor keyset comparison 2017-11-07 13:46:18 +01:00
Jan Pochyla
237740de9c storage: implement change_pin 2017-11-06 17:47:05 +01:00
Jan Pochyla
5e643e9195 modtrezorconfig: fix has_pin 2017-11-06 17:26:25 +01:00
Jan Pochyla
df77e74988 storage: fix unlock 2017-11-06 17:26:13 +01:00
Pavol Rusnak
3636a5f1b1
bootloader/vendorheader: vtrust is bitmap not scalar 2017-11-06 16:31:09 +01:00
Pavol Rusnak
5444410e04
unix: use return value from fread properly 2017-11-06 15:44:35 +01:00
mcudev
430900ea2c boardloader: ensure check_sdcard fails when read fails 2017-11-06 14:36:56 +01:00
Pavol Rusnak
2e3b8336c2
unix: fix unused-result warning 2017-11-06 11:12:43 +01:00
Pavol Rusnak
ee7d260d2f
trezorhal: use const where possible for flash 2017-11-05 23:51:10 +01:00
Pavol Rusnak
30363305f4
modtrezorconfig: use secbool, not bool 2017-11-05 23:32:32 +01:00
Jan Pochyla
1f6cc70480 flash: remove flash_set_option_bytes 2017-11-05 21:00:38 +01:00
Jan Pochyla
0376ff7f48 storage, norcow: use secbool 2017-11-05 20:46:59 +01:00
Jan Pochyla
662cfc1b2c unix/flash: use secbool 2017-11-05 20:46:59 +01:00
Jan Pochyla
418f035811 storage: add has_pin and change_pin
TODO: finish change_pin
2017-11-05 20:46:59 +01:00
Jan Pochyla
c2ec40bebf flash: flash_init returns bool 2017-11-05 20:46:58 +01:00
Jan Pochyla
353883e0f3 storage: rename constant 2017-11-05 20:46:11 +01:00
Jan Pochyla
b6ba95625c norcow: port on top of flash.c, remove config 2017-11-05 20:46:11 +01:00
Jan Pochyla
27bfcfe1af norcow: import into tree 2017-11-05 20:46:11 +01:00
Jan Pochyla
d4443a4f7f unix/flash: start with 0xff 2017-11-05 20:46:11 +01:00
Jan Pochyla
12708b4987 unix/flash: default FLASH_FILE 2017-11-05 20:46:11 +01:00
Jan Pochyla
c78babdc12 flash: add flash_get_address 2017-11-05 20:46:11 +01:00
Jan Pochyla
f07b4dda0b modtrezorconfig: extract pin & unlocking to storage.c 2017-11-05 20:46:11 +01:00
Jan Pochyla
fdc2f6a39d modtrezorconfig: use new flash API 2017-11-05 20:46:11 +01:00
Jan Pochyla
543e8c5007 flash: add unix/flash.c 2017-11-05 20:46:11 +01:00
Jan Pochyla
4cabe40220 storage: pin checking in c proof of concept
TODO: move out of modtrezorconfig
TODO: flash unix mock
2017-11-05 20:46:11 +01:00
mcudev
2ebd2b1b6b jump_to: clear out before the next stage NMI exception handler can run 2017-11-05 19:37:05 +01:00
mcudev
ffc16a98b5 rng: header cleanup, loop codestyle 2017-11-05 19:37:05 +01:00
mcudev
cc9aa8c197 cleanup: do not use reserved identifiers for header guards 2017-11-05 19:37:05 +01:00
Pavol Rusnak
77cc62644d
firmware: don't return CYCCNT contents as it is always zero anyway (cycle counter is disabled) 2017-11-05 18:02:47 +01:00
Pavol Rusnak
8190e0909e
boardloader: set BOR level to 2 2017-11-05 16:42:20 +01:00
mcudev
1737f17f43
boardloader: flash option bytes, production changes 2017-11-05 16:42:20 +01:00
mcudev
15bdc59b46 touch: reset touch panel 2017-11-05 16:20:37 +01:00
mcudev
d9a64fbb6a touch: app note related updates and exit loop upon detection 2017-11-05 16:20:37 +01:00
mcudev
2ae1c99b06 touch: address simplification 2017-11-05 16:20:37 +01:00
mcudev
6aeccd5ee1 touch: make i2c_handle static and trivial simplification 2017-11-05 16:20:37 +01:00
mcudev
d1ed02fb98 touch: use full 12-bit X and Y values 2017-11-05 16:20:37 +01:00
mcudev
edd95d9b65 secbool: add unsigned literal suffixes 2017-11-03 19:38:18 +01:00
mcudev
7e01a733a3 shutdown: reorder operations 2017-11-03 19:33:15 +01:00
mcudev
5be5e19f99 clear_otg_hs_memory: remove unpredictable write 2017-11-03 19:33:15 +01:00
Jan Pochyla
c632f9450f trezorhal: add spread spectrum clock 2017-10-31 11:49:18 +01:00
Jan Pochyla
6213974b6e prodtest: emulate python impl in OTP READ 2017-10-30 14:08:56 +01:00
Pavol Rusnak
7d0a12c29e
unix: fix build 2017-10-29 23:26:44 +01:00
Pavol Rusnak
311a28242b
boardloader: fix production build, disable reset_flags_init for now 2017-10-29 21:12:40 +01:00
Pavol Rusnak
16f657361c
boardloader: disable BOR protection; fix setting OB flags 2017-10-29 18:07:05 +01:00
Pavol Rusnak
a08f18c2ce
boardloader: use PVD level 4 2017-10-29 17:58:33 +01:00
Pavol Rusnak
30ddb53c11
prodtest: fix calls to sdcard functions 2017-10-29 17:51:16 +01:00
Pavol Rusnak
6738796d8b
trezorhal: call shutdown in default_handler 2017-10-29 17:50:50 +01:00
Pavol Rusnak
69c17dae9b
trezorhal: use uint32_t* for sdcard_{read,write}_blocks 2017-10-29 16:34:09 +01:00
Pavol Rusnak
fa802e9353
boardloader: fix test for existence of bootloader on sd card 2017-10-29 16:23:25 +01:00
Pavol Rusnak
a56da7d7ed
prodtest: fix sdcard test 2017-10-29 15:07:34 +01:00
Pavol Rusnak
5d6d342813
bootloader: erase storage on vendor change 2017-10-27 18:45:33 +02:00
Jan Pochyla
836508657d prodtest: style 2017-10-27 17:26:14 +02:00
Pavol Rusnak
3851404d04
small cosmetic changes to prodtest and others 2017-10-27 06:01:22 +02:00
Pavol Rusnak
d0e81edc8f
bootloader: check chunk hash before flashing 2017-10-27 05:09:35 +02:00
Pavol Rusnak
36143033c4
bootloader: check vendor header / image header before flashing 2017-10-27 04:49:59 +02:00
Pavol Rusnak
9690f1abdf
bootloader: load chunk into memory first, then save it to flash 2017-10-27 04:20:03 +02:00
Pavol Rusnak
4d36d0e1c1
trezorhal: use sectrue where possible 2017-10-27 03:58:00 +02:00
Pavol Rusnak
efa918a2f9
prodtest: code cleanup, fix build 2017-10-27 01:00:39 +02:00
Jan Pochyla
905e0bc82a
prodtest: codestyle, touch, fixes 2017-10-26 23:55:15 +02:00
Jan Pochyla
51d00e1de7
trezorhal/usb: add Inf timeout to blocking fns 2017-10-26 23:55:14 +02:00
Jan Pochyla
9cb342fcb6
prodtest: implement commands 2017-10-26 23:55:14 +02:00
Jan Pochyla
95965c3ff7
prodtest: add new target 2017-10-26 23:55:13 +02:00
Pavol Rusnak
f73eb3effd
trezorhal: introduce secbool/sectrue/secfalse and use it where possible 2017-10-26 23:51:39 +02:00
Pavol Rusnak
7ddfdf69d6
trezorhal: support for non-continous areas in check_image_contents 2017-10-26 19:09:53 +02:00
Pavol Rusnak
89cc35b195
trezorhal: fix hash offset in check_image_contents 2017-10-26 18:53:20 +02:00
Pavol Rusnak
7c891e19e5
boardloader, bootloader: check image contents against hashes in the header 2017-10-26 17:16:59 +02:00
Pavol Rusnak
b4ff9deb6b
bootloader: better wording 2017-10-26 15:56:57 +02:00
Pavol Rusnak
63636be0a3
trezorhal: rework header checking to new format 2017-10-26 15:54:02 +02:00
Pavol Rusnak
9e82a4d348
bootloader, firmware: introduce chunk hashes in the image header 2017-10-26 14:25:10 +02:00
Pavol Rusnak
3c974095aa
trezorhal: increase image header size from 512 to 1024 bytes 2017-10-26 02:11:40 +02:00
Pavol Rusnak
0c6ee14ee1
trezorhal: move image related defines to image.h 2017-10-26 01:17:57 +02:00
Pavol Rusnak
28aca51bc8
firmware: sign just the firmware part, not vendor header 2017-10-26 00:09:21 +02:00
Pavol Rusnak
e4003700cd
bootloader, firmware: update visuals 2017-10-25 15:20:06 +02:00
Pavol Rusnak
8bd258db6f
trezorhal: added calls to USBD_LL_FlushEP in deinit functions 2017-10-24 19:19:57 +02:00
Pavol Rusnak
9e31e0f4d4
bootloader: stop/deinit usb for unplug events as well 2017-10-24 18:48:01 +02:00
mcudev
b922579173 bootloader: cleanup usb on firmware upload success before jumping to firmware (#68) 2017-10-24 18:45:02 +02:00
Pavol Rusnak
d2ecae71d7
trezorhal: return position of last touch event from touch_click 2017-10-24 17:59:25 +02:00
Pavol Rusnak
6e51ee251f
bootloader+firmware: call shutdown instead of inf-loop after main is finished 2017-10-24 17:23:06 +02:00
mcudev
abf7f822b8 boardloader: do not call shutdown directly, return and the startup code handles it 2017-10-24 17:17:20 +02:00
mcudev
041dd951d3 boardloader: do not use ensure before display_init, just return 2017-10-24 17:17:20 +02:00
mcudev
1f6edb448c boardloader: check reset flags for production 2017-10-24 17:17:20 +02:00
mcudev
3f58a771b4 boardloader: stop clearing standby flag 2017-10-24 17:17:20 +02:00
mcudev
b1eea5a434 boardloader: enable PVD programmable voltage detector and interrupt 2017-10-24 17:17:20 +02:00
Jan Pochyla
f93316bebd cleanup .gitignore files 2017-10-24 16:24:59 +02:00
Pavol Rusnak
6b9751d30d
trezorhal: cleanup usb api 2017-10-20 18:51:05 +02:00
Pavol Rusnak
4f041e9f3a
trezorhal: update sdcard api 2017-10-20 18:13:17 +02:00
Pavol Rusnak
3033762618
trezorhal: make touch_init and usb_init return void, use ensure inside 2017-10-20 17:18:55 +02:00
Pavol Rusnak
5f256ce0b0
bootloader: show DOM QR code on welcome screen 2017-10-20 16:07:42 +02:00
Pavol Rusnak
b544fd3f81
bootloader: fix usb_init_all api 2017-10-20 16:03:51 +02:00
Pavol Rusnak
79fe9162b5
trezorhal: simplify api for init functions, use bool and void rather than int 2017-10-20 15:25:24 +02:00
Pavol Rusnak
b51ca0a16e
trezorhal: remove extra comment 2017-10-20 14:56:15 +02:00
Pavol Rusnak
21fac2e2c3
boardloader: don't erase sectors in flash_set_option_bytes for now 2017-10-20 14:42:51 +02:00
mcudev
d6ae912703 boardloader: flash option bytes updates 2017-10-20 14:41:01 +02:00
mcudev
fc7b1cfe81 flash_init: remove empty function from all stages 2017-10-20 14:41:01 +02:00
mcudev
167d476fff image_parse_header: remove undefined behavior and other updates (#61)
boardloader: bootloader: remove undefined behavior in header parsing, code cleanup
2017-10-19 18:45:57 +02:00
mcudev
a0286bcc29 build: further cleanup common symbols (#63) 2017-10-19 15:27:15 +02:00
Pavol Rusnak
749b80ba03
bootloader: fix touch detection at start 2017-10-18 17:18:58 +02:00
mcudev
ee7e6134a2 bootloader, firmware: do not need touch interrupt handlers or to enable touch interrupts (#59) 2017-10-18 16:54:03 +02:00
mcudev
73897c1147 boardloader: remove micropython related code that enables debug features to get clock cycle counts (#58) 2017-10-17 18:29:51 +02:00
Pavol Rusnak
e10d40f846
bootloader: restart into firmware after update, don't shutdown 2017-10-17 18:29:03 +02:00
Pavol Rusnak
c689b1f2cd
bootloader: remove debug code 2017-10-17 17:38:22 +02:00
mcudev
4bda828cbd boardloader: disable flash data cache (#57) 2017-10-17 17:35:10 +02:00
Pavol Rusnak
17c3d2b56f
bootloader: implement UI according to mockup 2017-10-17 17:31:16 +02:00
Pavol Rusnak
fdafae7d8d
trezorhal: remove timer1_get_source_freq function 2017-10-17 15:50:45 +02:00
mcudev
4f16aed757 display: handle TEON and COLMOD the same for both display types (#55) 2017-10-17 14:27:55 +02:00
Pavol Rusnak
4a14fb6c4d
boardloader: move periph_init to lowlevel.c 2017-10-17 11:44:53 +02:00
mcudev
45a4a944d0 boardloader, bootloader, firmware: only call periph_init in boardloader (#54) 2017-10-17 11:42:57 +02:00
mcudev
ac89203e7c SDIO: remove SDIO_IRQHandler and interrupt config (#53) 2017-10-17 00:43:47 +02:00
Pavol Rusnak
6ea9b105e5
boardloader, bootloader: reorder erasing of sectors, check whether sector was really erased 2017-10-16 21:43:07 +02:00
Pavol Rusnak
b1d9a59a79
unix: fix build 2017-10-16 21:02:21 +02:00
Pavol Rusnak
82050912c4
bootloader: implement WipeDevice 2017-10-16 20:56:16 +02:00
mcudev
ca8d93ab5d boardloader, bootloader, firmware: factor out display_pwm_init (#52) 2017-10-16 20:56:05 +02:00