60.4.3.2.2 If AES_MR.LOD = 1

This mode is optimized to process AES CBC-MAC operating mode.

The user must first wait for the DMA buffer transfer complete flag, then for the flag DATRDY to rise to ensure that the encryption/decryption is completed (see the following figure).

The DMA receive channel must not be used. Prior to reading the CBC-MAC result, AES_MR.SMOD must be written to ‘0’. To restart a CBC-MAC on a new buffer, AES_MR.SMOD must be written to ‘2’.

The output data are only available on AES_ODATARx.

Figure 60-4. DMA Transfer with AES_MR.LOD = 1

The following table summarizes the different cases.

Table 60-1. Last Output Data Mode Behavior versus Start Modes
Sequence Manual and Auto Modes DMA Transfer
AES_MR.LOD = 0 AES_MR.LOD = 1 AES_MR.LOD = 0 AES_MR.LOD = 1
DATRDY Flag Clearing Condition(1) At least one AES_ODATAR must be read At least one AES_IDATAR must be written Not used Managed by the DMA
End of Encryption/Decryption Notification DATRDY DATRDY 2 DMA Buffer transfer complete flags (channel m and channel n) DMA buffer transfer complete flag, then AES DATRDY flag
Encrypted/Decrypted Data Result Location In AES_ODATARx In AES_ODATARx At the address specified in the Channel Buffer Transfer Descriptor In AES_ODATARx
Note:
  1. Depending on the mode, there are other ways of clearing the DATRDY flag. See AES_ISR.
Warning: In DMA mode, reading AES_ODATARx before the last data transfer may lead to unpredictable results.