206 uint8_t digestLength = 0;
207 uint32_t dmaAlgorithmSelect = 0;
211 switch (hashAlgorithm) {
232 if (initialHash && finalHash) {
241 messageLength = messageLength ? messageLength : 1;
251 HWREG(CRYPTO_BASE + CRYPTO_O_HASHMODE) = hashAlgorithm | (initialHash ? CRYPTO_HASHMODE_NEW_HASH_M : 0);
254 if (intermediateDigest && !initialHash) {
263 HWREG(CRYPTO_BASE + CRYPTO_O_HASHIOBUFCTRL) = CRYPTO_HASHIOBUFCTRL_PAD_DMA_MESSAGE_M;
#define SHA2_ALGSEL_SHA512
Definition: sha2.h:151
static void SHA2SetMessageLength(uint32_t length)
Specify the total length of the message.
Definition: sha2.h:484
#define SHA2_RESULT_RDY
Definition: sha2.h:105
#define SHA2_SHA512_DIGEST_LENGTH_BYTES
Definition: sha2.h:127
static void SHA2IntEnable(uint32_t intFlags)
Enable individual crypto interrupt sources.
Definition: sha2.h:588
#define SHA2_MODE_SELECT_SHA224
Definition: sha2.h:131
static void SHA2SetDigest(uint32_t *digest, uint8_t digestLength)
Load an intermediate digest.
Definition: sha2.h:506
#define SHA2_SHA384_DIGEST_LENGTH_BYTES
Definition: sha2.h:126
#define SHA2_MODE_SELECT_SHA512
Definition: sha2.h:134
static void SHA2ClearDigestAvailableFlag(void)
Confirm digest was read.
Definition: sha2.h:568
#define SHA2_ALGSEL_TAG
Definition: sha2.h:152
#define SHA2_SHA224_DIGEST_LENGTH_BYTES
Definition: sha2.h:124
#define SHA2_SHA256_DIGEST_LENGTH_BYTES
Definition: sha2.h:125
void SHA2StartDMAOperation(uint8_t *channel0Addr, uint32_t channel0Length, uint8_t *channel1Addr, uint32_t channel1Length)
Start a crypto DMA operation.
Definition: sha2.c:71
static void SHA2IntClear(uint32_t intFlags)
Clear crypto interrupt sources.
Definition: sha2.h:687
static void SHA2SelectAlgorithm(uint32_t algorithm)
Configure the crypto DMA for a particular operation.
Definition: sha2.h:455
#define SHA2_DMA_IN_DONE
Definition: sha2.h:104
#define SHA2_MODE_SELECT_SHA256
Definition: sha2.h:132
#define SHA2_ALGSEL_SHA256
Definition: sha2.h:150
#define SHA2_INVALID_ALGORITHM
Definition: sha2.h:117
#define SHA2_SUCCESS
Definition: sha2.h:116
#define SHA2_MODE_SELECT_SHA384
Definition: sha2.h:133