Functions
Configuration functions
Peripheral Driver » LL Driver » AES » Functions

## Functions
__STATIC_INLINE void | ll_aes_enable (aes_regs_t *AESx)
| Enable AES. More...
__STATIC_INLINE void | ll_aes_disable (aes_regs_t *AESx)
| Disable AES. More...
__STATIC_INLINE uint32_t | ll_aes_is_enabled (aes_regs_t *AESx)
| Indicate whether the AES is enabled. More...
__STATIC_INLINE void | ll_aes_enable_start (aes_regs_t *AESx)
| Enable AES start in MCU mode. More...
__STATIC_INLINE void | ll_aes_disable_start (aes_regs_t *AESx)
| Disable AES start in MCU mode. More...
__STATIC_INLINE uint32_t | ll_aes_is_enabled_start (aes_regs_t *AESx)
| Indicate whether the AES start in MCU mode is enabled. More...
__STATIC_INLINE void | ll_aes_enable_dma_start (aes_regs_t *AESx)
| Enable AES DMA mode. More...
__STATIC_INLINE void | ll_aes_disable_dma_start (aes_regs_t *AESx)
| Disable AES DMA mode. More...
__STATIC_INLINE uint32_t | ll_aes_is_enabled_dma_start (aes_regs_t *AESx)
| Indicate whether the AES DMA mode is enabled. More...
__STATIC_INLINE void | ll_aes_enable_read_key (aes_regs_t *AESx)
| Enable fetch key through AHB/key port. More...
__STATIC_INLINE void | ll_aes_set_key_size (aes_regs_t *AESx, uint32_t size)
| Set AES key size. More...
__STATIC_INLINE uint32_t | ll_aes_get_key_size (aes_regs_t *AESx)
| Get AES key size. More...
__STATIC_INLINE void | ll_aes_enable_full_mask (aes_regs_t *AESx)
| Enable AES full mask. More...
__STATIC_INLINE void | ll_aes_disable_full_mask (aes_regs_t *AESx)
| Disable AES full mask. More...
__STATIC_INLINE uint32_t | ll_aes_is_enabled_full_mask (aes_regs_t *AESx)
| Indicate whether the AES full mask is enabled. More...
__STATIC_INLINE void | ll_aes_enable_encryption (aes_regs_t *AESx)
| Enable AES encryption mode. More...
__STATIC_INLINE void | ll_aes_disable_encryption (aes_regs_t *AESx)
| Disable AES encryption mode. More...
__STATIC_INLINE uint32_t | ll_aes_is_enabled_encryption (aes_regs_t *AESx)
| Indicate whether the AES encryption mode is enabled. More...
__STATIC_INLINE void | ll_aes_set_load_seed (aes_regs_t *AESx)
| Set AES to load seed for LFSR. More...
__STATIC_INLINE void | ll_aes_set_first_block (aes_regs_t *AESx)
| Set AES in first block before starting the first block in normal CBC and DMA CBC mode. More...
__STATIC_INLINE void | ll_aes_enable_little_endian (aes_regs_t *AESx)
| Enable AES in little endian. More...
__STATIC_INLINE void | ll_aes_disable_little_endian (aes_regs_t *AESx)
| Disable AES in little endian. More...
__STATIC_INLINE uint32_t | ll_aes_is_enabled_little_endian (aes_regs_t *AESx)
| Indicate whether the AES is in little endian. More...
__STATIC_INLINE void | ll_aes_set_operation_mode (aes_regs_t *AESx, uint32_t mode)
| Set AES operation mode. More...
__STATIC_INLINE uint32_t | ll_aes_get_operation_mode (aes_regs_t *AESx)
| Get AES operation mode. More...
__STATIC_INLINE void | ll_aes_set_key_type (aes_regs_t *AESx, uint32_t Type)
| Set ways to obtain AES key. More...
__STATIC_INLINE uint32_t | ll_aes_get_key_type (aes_regs_t *AESx)
| Get ways to obtain AES key. More...

## Detailed Description

## Function Documentation

## ◆ ll_aes_disable()

__STATIC_INLINE void ll_aes_disable | ( | aes_regs_t * | AESx | ) |

Disable AES.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | ENABLE | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 218 of file gr55xx_ll_aes.h.

## ◆ ll_aes_disable_dma_start()

__STATIC_INLINE void ll_aes_disable_dma_start | ( | aes_regs_t * | AESx | ) |

Disable AES DMA mode.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | START_DMA | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 332 of file gr55xx_ll_aes.h.

## ◆ ll_aes_disable_encryption()

__STATIC_INLINE void ll_aes_disable_encryption | ( | aes_regs_t * | AESx | ) |

Disable AES encryption mode.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | ENABLE_ENCRYPTION | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 510 of file gr55xx_ll_aes.h.

## ◆ ll_aes_disable_full_mask()

__STATIC_INLINE void ll_aes_disable_full_mask | ( | aes_regs_t * | AESx | ) |

Disable AES full mask.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | ENABLE_FULLMASK | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 453 of file gr55xx_ll_aes.h.

## ◆ ll_aes_disable_little_endian()

__STATIC_INLINE void ll_aes_disable_little_endian | ( | aes_regs_t * | AESx | ) |

Disable AES in little endian.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | ENDIAN | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 605 of file gr55xx_ll_aes.h.

## ◆ ll_aes_disable_start()

__STATIC_INLINE void ll_aes_disable_start | ( | aes_regs_t * | AESx | ) |

Disable AES start in MCU mode.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | START_NORMAL | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 275 of file gr55xx_ll_aes.h.

## ◆ ll_aes_enable()

__STATIC_INLINE void ll_aes_enable | ( | aes_regs_t * | AESx | ) |

Enable AES.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | ENABLE | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 199 of file gr55xx_ll_aes.h.

## ◆ ll_aes_enable_dma_start()

__STATIC_INLINE void ll_aes_enable_dma_start | ( | aes_regs_t * | AESx | ) |

Enable AES DMA mode.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | START_DMA | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 313 of file gr55xx_ll_aes.h.

## ◆ ll_aes_enable_encryption()

__STATIC_INLINE void ll_aes_enable_encryption | ( | aes_regs_t * | AESx | ) |

Enable AES encryption mode.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | ENABLE_ENCRYPTION | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 491 of file gr55xx_ll_aes.h.

## ◆ ll_aes_enable_full_mask()

__STATIC_INLINE void ll_aes_enable_full_mask | ( | aes_regs_t * | AESx | ) |

Enable AES full mask.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | ENABLE_FULLMASK | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 434 of file gr55xx_ll_aes.h.

## ◆ ll_aes_enable_little_endian()

__STATIC_INLINE void ll_aes_enable_little_endian | ( | aes_regs_t * | AESx | ) |

Enable AES in little endian.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | ENDIAN | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 586 of file gr55xx_ll_aes.h.

## ◆ ll_aes_enable_read_key()

__STATIC_INLINE void ll_aes_enable_read_key | ( | aes_regs_t * | AESx | ) |

Enable fetch key through AHB/key port.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | ENABLE_RKEY | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 370 of file gr55xx_ll_aes.h.

## ◆ ll_aes_enable_start()

__STATIC_INLINE void ll_aes_enable_start | ( | aes_regs_t * | AESx | ) |

Enable AES start in MCU mode.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | START_NORMAL | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 256 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_key_size()

__STATIC_INLINE uint32_t ll_aes_get_key_size | ( | aes_regs_t * | AESx | ) |

Get AES key size.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | KEYMODE | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Returned | value can be one of the following values: LL_AES_KEY_SIZE_128 LL_AES_KEY_SIZE_192 LL_AES_KEY_SIZE_256

Definition at line 415 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_key_type()

__STATIC_INLINE uint32_t ll_aes_get_key_type | ( | aes_regs_t * | AESx | ) |

Get ways to obtain AES key.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | KEYTYPE | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Returned | value can be one of the following values: LL_AES_KEYTYPE_MCU LL_AES_KEYTYPE_AHB LL_AES_KEYTYPE_KRAM

Definition at line 712 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_operation_mode()

__STATIC_INLINE uint32_t ll_aes_get_operation_mode | ( | aes_regs_t * | AESx | ) |

Get AES operation mode.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | OPMODE | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Returned | value can be one of the following values: LL_AES_OPERATION_MODE_ECB LL_AES_OPERATION_MODE_CBC

Definition at line 667 of file gr55xx_ll_aes.h.

## ◆ ll_aes_is_enabled()

__STATIC_INLINE uint32_t ll_aes_is_enabled | ( | aes_regs_t * | AESx | ) |

Indicate whether the AES is enabled.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | ENABLE | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  State | of bit (1 or 0).

Definition at line 237 of file gr55xx_ll_aes.h.

## ◆ ll_aes_is_enabled_dma_start()

__STATIC_INLINE uint32_t ll_aes_is_enabled_dma_start | ( | aes_regs_t * | AESx | ) |

Indicate whether the AES DMA mode is enabled.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | START_DMA | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  State | of bit (1 or 0).

Definition at line 351 of file gr55xx_ll_aes.h.

## ◆ ll_aes_is_enabled_encryption()

__STATIC_INLINE uint32_t ll_aes_is_enabled_encryption | ( | aes_regs_t * | AESx | ) |

Indicate whether the AES encryption mode is enabled.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | ENABLE_ENCRYPTION | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  State | of bit (1 or 0).

Definition at line 529 of file gr55xx_ll_aes.h.

## ◆ ll_aes_is_enabled_full_mask()

__STATIC_INLINE uint32_t ll_aes_is_enabled_full_mask | ( | aes_regs_t * | AESx | ) |

Indicate whether the AES full mask is enabled.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | ENABLE_FULLMASK | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  State | of bit (1 or 0).

Definition at line 472 of file gr55xx_ll_aes.h.

## ◆ ll_aes_is_enabled_little_endian()

__STATIC_INLINE uint32_t ll_aes_is_enabled_little_endian | ( | aes_regs_t * | AESx | ) |

Indicate whether the AES is in little endian.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | ENDIAN | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  State | of bit (1 or 0).

Definition at line 624 of file gr55xx_ll_aes.h.

## ◆ ll_aes_is_enabled_start()

__STATIC_INLINE uint32_t ll_aes_is_enabled_start | ( | aes_regs_t * | AESx | ) |

Indicate whether the AES start in MCU mode is enabled.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CTRL | START_NORMAL | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  State | of bit (1 or 0).

Definition at line 294 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_first_block()

__STATIC_INLINE void ll_aes_set_first_block | ( | aes_regs_t * | AESx | ) |

Set AES in first block before starting the first block in normal CBC and DMA CBC mode.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | FIRSTBLOCK | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 567 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_size()

__STATIC_INLINE void ll_aes_set_key_size | ( | aes_regs_t * | AESx,
|  | uint32_t | size
| ) |  |

Set AES key size.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | KEYMODE | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  size | This parameter can be one of the following values: LL_AES_KEY_SIZE_128 LL_AES_KEY_SIZE_192 LL_AES_KEY_SIZE_256

Return values

  None |

Definition at line 393 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_type()

__STATIC_INLINE void ll_aes_set_key_type | ( | aes_regs_t * | AESx,
|  | uint32_t | Type
| ) |  |

Set ways to obtain AES key.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | KEYTYPE | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  Type | This parameter can be one of the following values: LL_AES_KEYTYPE_MCU LL_AES_KEYTYPE_AHB LL_AES_KEYTYPE_KRAM

Return values

  None |

Definition at line 690 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_load_seed()

__STATIC_INLINE void ll_aes_set_load_seed | ( | aes_regs_t * | AESx | ) |

Set AES to load seed for LFSR.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | LOADSEED | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  None |

Definition at line 548 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_operation_mode()

__STATIC_INLINE void ll_aes_set_operation_mode | ( | aes_regs_t * | AESx,
|  | uint32_t | mode
| ) |  |

Set AES operation mode.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | CONFIG | OPMODE | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  mode | This parameter can be one of the following values: LL_AES_OPERATION_MODE_ECB LL_AES_OPERATION_MODE_CBC

Return values

  None |

Definition at line 646 of file gr55xx_ll_aes.h.