From e34a7543b17a70058eabfd048078aa1404ebb692 Mon Sep 17 00:00:00 2001 From: shchmue Date: Fri, 19 Apr 2019 11:54:09 -0400 Subject: [PATCH] [TSEC] Fix tsec timeout Without increasing probability of a race condition --- bootloader/sec/tsec.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/bootloader/sec/tsec.c b/bootloader/sec/tsec.c index 0c48b93..b3bf95c 100644 --- a/bootloader/sec/tsec.c +++ b/bootloader/sec/tsec.c @@ -188,10 +188,11 @@ int tsec_query(u8 *tsec_keys, u8 kb, tsec_ctxt_t *tsec_ctxt) { smmu_flush_all(); - if (k == se[SE_KEYTABLE_DATA0_REG_OFFSET / 4]) - continue; - k = se[SE_KEYTABLE_DATA0_REG_OFFSET / 4]; - key[kidx++] = k; + if (k != se[SE_KEYTABLE_DATA0_REG_OFFSET / 4]) + { + k = se[SE_KEYTABLE_DATA0_REG_OFFSET / 4]; + key[kidx++] = k; + } // Failsafe. if ((u32)get_tmr_us() - start > 125000)