From 410a18b536e73c005285b458eaeb8b6c3a71c1af Mon Sep 17 00:00:00 2001 From: Matt Johnston Date: Tue, 12 Aug 2025 17:09:52 +0800 Subject: stm32/hash: Clear HMAC mode bit when hashing Running a hash after a hmac would hang, the CR.MODE bit isn't cleared by INIT. Test it by running the test twice. --- embassy-stm32/src/hash/mod.rs | 2 ++ 1 file changed, 2 insertions(+) (limited to 'embassy-stm32/src') diff --git a/embassy-stm32/src/hash/mod.rs b/embassy-stm32/src/hash/mod.rs index e62151bb5..a4c275242 100644 --- a/embassy-stm32/src/hash/mod.rs +++ b/embassy-stm32/src/hash/mod.rs @@ -198,6 +198,8 @@ impl<'d, T: Instance, M: Mode> Hash<'d, T, M> { if key.len() > 64 { T::regs().cr().modify(|w| w.set_lkey(true)); } + } else { + T::regs().cr().modify(|w| w.set_mode(false)); } T::regs().cr().modify(|w| w.set_init(true)); -- cgit