Functions
Data_Management
Peripheral Driver » LL Driver » AES » Functions

## Functions
__STATIC_INLINE void | ll_aes_set_key_address (aes_regs_t *AESx, uint32_t address)
| Set AES key address in memory. More...
__STATIC_INLINE uint32_t | ll_aes_get_key_address (aes_regs_t *AESx)
| Get AES key address in memory. More...
__STATIC_INLINE uint32_t | ll_aes_get_data_127_96 (aes_regs_t *AESx)
| Get AES output data[127:96]. More...
__STATIC_INLINE uint32_t | ll_aes_get_data_95_64 (aes_regs_t *AESx)
| Get AES output data[95:64]. More...
__STATIC_INLINE uint32_t | ll_aes_get_data_63_32 (aes_regs_t *AESx)
| Get AES output data[63:32]. More...
__STATIC_INLINE uint32_t | ll_aes_get_data_31_0 (aes_regs_t *AESx)
| Get AES output data[31:0]. More...
__STATIC_INLINE void | ll_aes_set_key_255_224 (aes_regs_t *AESx, uint32_t key)
| Set AES key[255:224]. More...
__STATIC_INLINE void | ll_aes_set_key_223_192 (aes_regs_t *AESx, uint32_t key)
| Set AES key[223:192]. More...
__STATIC_INLINE void | ll_aes_set_key_191_160 (aes_regs_t *AESx, uint32_t key)
| Set AES key[191:160]. More...
__STATIC_INLINE void | ll_aes_set_key_159_128 (aes_regs_t *AESx, uint32_t key)
| Set AES key[159:128]. More...
__STATIC_INLINE void | ll_aes_set_key_127_96 (aes_regs_t *AESx, uint32_t key)
| Set AES key[127:96]. More...
__STATIC_INLINE void | ll_aes_set_key_95_64 (aes_regs_t *AESx, uint32_t key)
| Set AES key[95:64]. More...
__STATIC_INLINE void | ll_aes_set_key_63_32 (aes_regs_t *AESx, uint32_t key)
| Set AES key[63:32]. More...
__STATIC_INLINE void | ll_aes_set_key_31_0 (aes_regs_t *AESx, uint32_t key)
| Set AES key[31:0]. More...
__STATIC_INLINE void | ll_aes_set_seed_in (aes_regs_t *AESx, uint32_t seed)
| Set AES input seed. More...
__STATIC_INLINE uint32_t | ll_aes_get_seed_in (aes_regs_t *AESx)
| Get AES input seed. More...
__STATIC_INLINE void | ll_aes_set_seed_out (aes_regs_t *AESx, uint32_t seed)
| Set AES output seed. More...
__STATIC_INLINE uint32_t | ll_aes_get_seed_out (aes_regs_t *AESx)
| Get AES output seed. More...
__STATIC_INLINE void | ll_aes_set_seed_Imask (aes_regs_t *AESx, uint32_t mask)
| Set sbox input data's mask. More...
__STATIC_INLINE uint32_t | ll_aes_get_seed_Imask (aes_regs_t *AESx)
| Get sbox input data's mask. More...
__STATIC_INLINE void | ll_aes_set_seed_Osbox (aes_regs_t *AESx, uint32_t mask)
| Set sbox output data's mask. More...
__STATIC_INLINE uint32_t | ll_aes_get_seed_Osbox (aes_regs_t *AESx)
| Get sbox output data's mask. More...
__STATIC_INLINE void | ll_aes_set_vector_127_96 (aes_regs_t *AESx, uint32_t vector)
| Set AES initialization vector[127:96]. More...
__STATIC_INLINE void | ll_aes_set_vector_95_64 (aes_regs_t *AESx, uint32_t vector)
| Set AES initialization vector[95:64]. More...
__STATIC_INLINE void | ll_aes_set_vector_63_32 (aes_regs_t *AESx, uint32_t vector)
| Set AES initialization vector[63:32]. More...
__STATIC_INLINE void | ll_aes_set_vector_31_0 (aes_regs_t *AESx, uint32_t vector)
| Set AES initialization vector[31:0]. More...
__STATIC_INLINE void | ll_aes_set_data_127_96 (aes_regs_t *AESx, uint32_t data)
| Set AES input data[127:96]. More...
__STATIC_INLINE void | ll_aes_set_data_95_64 (aes_regs_t *AESx, uint32_t data)
| Set AES input data[95:64]. More...
__STATIC_INLINE void | ll_aes_set_data_63_32 (aes_regs_t *AESx, uint32_t data)
| Set AES input data[63:32]. More...
__STATIC_INLINE void | ll_aes_set_data_31_0 (aes_regs_t *AESx, uint32_t data)
| Set AES input data[31:0]. More...
__STATIC_INLINE void | ll_aes_set_key_port_mask (aes_regs_t *AESx, uint32_t mask)
| Set AES fetch key port mask. More...

## Detailed Description

## Function Documentation

## ◆ ll_aes_get_data_127_96()

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

Get AES output data[127:96].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | DATA_OUT[0] | DATA_OUT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Output | Data[127:96]

Definition at line 1084 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_data_31_0()

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

Get AES output data[31:0].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | DATA_OUT[3] | DATA_OUT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Output | Data[31:0]

Definition at line 1141 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_data_63_32()

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

Get AES output data[63:32].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | DATA_OUT[2] | DATA_OUT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Output | Data[63:32]

Definition at line 1122 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_data_95_64()

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

Get AES output data[95:64].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | DATA_OUT[1] | DATA_OUT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Output | Data[95:64]

Definition at line 1103 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_key_address()

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

Get AES key address in memory.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY_ADDR | KEY_ADDR | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Returned | value is the key address in RAM.

Definition at line 1065 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_seed_Imask()

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

Get sbox input data's mask.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | SEED_IMASK | SEED_IMASK | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Returned | value is the input data's mask.

Definition at line 1418 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_seed_in()

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

Get AES input seed.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | SEED_IN | SEED_IN | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Returned | value is the input seed.

Definition at line 1340 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_seed_Osbox()

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

Get sbox output data's mask.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | SEED_OSBOX | SEED_OSBOX | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Returned | value is the output data's mask.

Definition at line 1457 of file gr55xx_ll_aes.h.

## ◆ ll_aes_get_seed_out()

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

Get AES output seed.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | SEED_OUT | SEED_OUT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance

Return values

  Returned | value is the output seed.

Definition at line 1379 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_data_127_96()

__STATIC_INLINE void ll_aes_set_data_127_96 | ( | aes_regs_t * | AESx,
|  | uint32_t | data
| ) |  |

Set AES input data[127:96].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | DATA_IN[0] | DATA_IN | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  data | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1557 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_data_31_0()

__STATIC_INLINE void ll_aes_set_data_31_0 | ( | aes_regs_t * | AESx,
|  | uint32_t | data
| ) |  |

Set AES input data[31:0].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | DATA_IN[3] | DATA_IN | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  data | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1617 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_data_63_32()

__STATIC_INLINE void ll_aes_set_data_63_32 | ( | aes_regs_t * | AESx,
|  | uint32_t | data
| ) |  |

Set AES input data[63:32].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | DATA_IN[2] | DATA_IN | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  data | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1597 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_data_95_64()

__STATIC_INLINE void ll_aes_set_data_95_64 | ( | aes_regs_t * | AESx,
|  | uint32_t | data
| ) |  |

Set AES input data[95:64].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | DATA_IN[1] | DATA_IN | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  data | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1577 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_127_96()

__STATIC_INLINE void ll_aes_set_key_127_96 | ( | aes_regs_t * | AESx,
|  | uint32_t | key
| ) |  |

Set AES key[127:96].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY[4] | KEY | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  key | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1241 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_159_128()

__STATIC_INLINE void ll_aes_set_key_159_128 | ( | aes_regs_t * | AESx,
|  | uint32_t | key
| ) |  |

Set AES key[159:128].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY[3] | KEY | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  key | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1221 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_191_160()

__STATIC_INLINE void ll_aes_set_key_191_160 | ( | aes_regs_t * | AESx,
|  | uint32_t | key
| ) |  |

Set AES key[191:160].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY[2] | KEY | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  key | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1201 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_223_192()

__STATIC_INLINE void ll_aes_set_key_223_192 | ( | aes_regs_t * | AESx,
|  | uint32_t | key
| ) |  |

Set AES key[223:192].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY[1] | KEY | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  key | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1181 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_255_224()

__STATIC_INLINE void ll_aes_set_key_255_224 | ( | aes_regs_t * | AESx,
|  | uint32_t | key
| ) |  |

Set AES key[255:224].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY[0] | KEY | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  key | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1161 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_31_0()

__STATIC_INLINE void ll_aes_set_key_31_0 | ( | aes_regs_t * | AESx,
|  | uint32_t | key
| ) |  |

Set AES key[31:0].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY[7] | KEY | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  key | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1301 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_63_32()

__STATIC_INLINE void ll_aes_set_key_63_32 | ( | aes_regs_t * | AESx,
|  | uint32_t | key
| ) |  |

Set AES key[63:32].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY[6] | KEY | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  key | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1281 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_95_64()

__STATIC_INLINE void ll_aes_set_key_95_64 | ( | aes_regs_t * | AESx,
|  | uint32_t | key
| ) |  |

Set AES key[95:64].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY[5] | KEY | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  key | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1261 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_address()

__STATIC_INLINE void ll_aes_set_key_address | ( | aes_regs_t * | AESx,
|  | uint32_t | address
| ) |  |

Set AES key address in memory.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KEY_ADDR | KEY_ADDR | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  address | This parameter can be one of the address in RAM

Return values

  None |

Definition at line 1046 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_key_port_mask()

__STATIC_INLINE void ll_aes_set_key_port_mask | ( | aes_regs_t * | AESx,
|  | uint32_t | mask
| ) |  |

Set AES fetch key port mask.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | KPORT_MASK | KPORT_MASK | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  mask | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1637 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_seed_Imask()

__STATIC_INLINE void ll_aes_set_seed_Imask | ( | aes_regs_t * | AESx,
|  | uint32_t | mask
| ) |  |

Set sbox input data's mask.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | SEED_IMASK | SEED_IMASK | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  mask | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1399 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_seed_in()

__STATIC_INLINE void ll_aes_set_seed_in | ( | aes_regs_t * | AESx,
|  | uint32_t | seed
| ) |  |

Set AES input seed.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | SEED_IN | SEED_IN | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  seed | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1321 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_seed_Osbox()

__STATIC_INLINE void ll_aes_set_seed_Osbox | ( | aes_regs_t * | AESx,
|  | uint32_t | mask
| ) |  |

Set sbox output data's mask.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | SEED_OSBOX | SEED_OSBOX | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  mask | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1438 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_seed_out()

__STATIC_INLINE void ll_aes_set_seed_out | ( | aes_regs_t * | AESx,
|  | uint32_t | seed
| ) |  |

Set AES output seed.

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | SEED_OUT | SEED_OUT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  seed | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1360 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_vector_127_96()

__STATIC_INLINE void ll_aes_set_vector_127_96 | ( | aes_regs_t * | AESx,
|  | uint32_t | vector
| ) |  |

Set AES initialization vector[127:96].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | VECTOR_INIT[0] | VECTOR_INIT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  vector | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1477 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_vector_31_0()

__STATIC_INLINE void ll_aes_set_vector_31_0 | ( | aes_regs_t * | AESx,
|  | uint32_t | vector
| ) |  |

Set AES initialization vector[31:0].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | VECTOR_INIT[3] | VECTOR_INIT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  vector | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1537 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_vector_63_32()

__STATIC_INLINE void ll_aes_set_vector_63_32 | ( | aes_regs_t * | AESx,
|  | uint32_t | vector
| ) |  |

Set AES initialization vector[63:32].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | VECTOR_INIT[2] | VECTOR_INIT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  vector | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1517 of file gr55xx_ll_aes.h.

## ◆ ll_aes_set_vector_95_64()

__STATIC_INLINE void ll_aes_set_vector_95_64 | ( | aes_regs_t * | AESx,
|  | uint32_t | vector
| ) |  |

Set AES initialization vector[95:64].

\rst +———————-+—————————–+ | Register | BitsName | +======================+=============================+ | VECTOR_INIT[1] | VECTOR_INIT | +———————-+—————————–+ \endrst

Parameters

  AESx | AES instance
  vector | This parameter can be one of the following values: 0 ~ 0xFFFFFFFF

Return values

  None |

Definition at line 1497 of file gr55xx_ll_aes.h.