From 258370dbb5c02b2b1f13631d5b8246eb9a134033 Mon Sep 17 00:00:00 2001 From: tychovrahe Date: Sat, 12 Apr 2025 07:39:27 +0200 Subject: [PATCH] fixup! feat(core): support handling of tropic keys in secret sector --- core/embed/sec/secret/stm32u5/secret.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/core/embed/sec/secret/stm32u5/secret.c b/core/embed/sec/secret/stm32u5/secret.c index 6ae004f37b..63891ce9e6 100644 --- a/core/embed/sec/secret/stm32u5/secret.c +++ b/core/embed/sec/secret/stm32u5/secret.c @@ -180,12 +180,12 @@ __attribute__((unused)) static void secret_key_cache(uint8_t reg_offset, volatile uint32_t *reg = &TAMP->BKP0R; reg += reg_offset; if (sectrue == ok) { - for (int i = 0; i < 8; i++) { + for (int i = 0; i < (SECRET_KEY_LEN / sizeof(uint32_t)); i++) { *reg = ((uint32_t *)secret)[i]; reg++; } } else { - for (int i = 0; i < 8; i++) { + for (int i = 0; i < (SECRET_KEY_LEN / sizeof(uint32_t)); i++) { *reg = 0; reg++; } @@ -214,7 +214,7 @@ __attribute__((unused)) static secbool secret_key_get( bool all_zero = true; volatile uint32_t *reg = &TAMP->BKP0R; - for (int i = 0; i < 8; i++) { + for (int i = 0; i < (SECRET_KEY_LEN / sizeof(uint32_t)); i++) { secret[i] = reg[i + reg_offset]; if (secret[i] != 0) { @@ -260,12 +260,12 @@ static void secret_bhk_load(void) { volatile uint32_t *reg1 = &TAMP->BKP0R; if (sectrue == ok) { - for (int i = 0; i < 8; i++) { + for (int i = 0; i < (SECRET_KEY_LEN / sizeof(uint32_t)); i++) { *reg1 = ((uint32_t *)secret)[i]; reg1++; } } else { - for (int i = 0; i < 8; i++) { + for (int i = 0; i < (SECRET_KEY_LEN / sizeof(uint32_t)); i++) { *reg1 = 0; reg1++; }