Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[hmac] Block the configuration change while processing
There were a few test failures on the sudden CFG register update during SHA/HMAC process. A few bugs caused system hang. They blocked the interconnect so that the software cannot release the errors. Related commits: 14a4312 13678cf Latest one that @cindychip found at Issue #991 also caused hang condition inside HMAC. Rather fixing every hang condition, it seems to be better to block the CFG update in the middle of the process. If the software wants to update CFG, it can update CFG but it only can be visible to the hardware after the current HMAC/SHA process is completed. This PR also blocks the secret key update while the hash engine is active. Secret key (KEY0 .. KEY7) can only be updated after the engine completes the computing of hash and before the new message is fed. If the event occurs (secret key is updated in process), the error will be reported to the software through the ERROR FIFO. This is related to #991 Signed-off-by: Eunchan Kim <eunchan@opentitan.org>
- Loading branch information
Eunchan Kim
committed
Nov 20, 2019
1 parent
d42948c
commit 3594d96
Showing
6 changed files
with
216 additions
and
233 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.