stm32-data/data/registers/aes_f7.yaml
2023-09-07 21:20:36 +03:00

377 lines
8.7 KiB
YAML

---
block/AES:
description: Advanced encryption standard hardware accelerator
items:
- name: CR
description: Control register
byte_offset: 0
fieldset: CR
- name: SR
description: Status register
byte_offset: 4
fieldset: SR
- name: DINR
description: Data input register
byte_offset: 8
fieldset: DINR
- name: DOUTR
description: Data output register
byte_offset: 12
fieldset: DOUTR
- name: KEYR0
description: Key register 0
byte_offset: 16
fieldset: KEYR0
- name: KEYR1
description: Key register 1
byte_offset: 20
fieldset: KEYR1
- name: KEYR2
description: Key register 2
byte_offset: 24
fieldset: KEYR2
- name: KEYR3
description: Key register 3
byte_offset: 28
fieldset: KEYR3
- name: IVR0
description: Initialization vector register 0
byte_offset: 32
fieldset: IVR0
- name: IVR1
description: Initialization vector register 1
byte_offset: 36
fieldset: IVR1
- name: IVR2
description: Initialization vector register 2
byte_offset: 40
fieldset: IVR2
- name: IVR3
description: Initialization vector register 3
byte_offset: 44
fieldset: IVR3
- name: KEYR4
description: Key register 4
byte_offset: 48
fieldset: KEYR4
- name: KEYR5
description: Key register 5
byte_offset: 52
fieldset: KEYR5
- name: KEYR6
description: Key register 6
byte_offset: 56
fieldset: KEYR6
- name: KEYR7
description: Key register 7
byte_offset: 60
fieldset: KEYR7
- name: SUSP0R
description: Suspend register 0
byte_offset: 64
fieldset: SUSP0R
- name: SUSP1R
description: Suspend register 1
byte_offset: 68
fieldset: SUSP1R
- name: SUSP2R
description: Suspend register 2
byte_offset: 72
fieldset: SUSP2R
- name: SUSP3R
description: Suspend register 3
byte_offset: 76
fieldset: SUSP3R
- name: SUSP4R
description: Suspend register 4
byte_offset: 80
fieldset: SUSP4R
- name: SUSP5R
description: Suspend register 5
byte_offset: 84
fieldset: SUSP5R
- name: SUSP6R
description: Suspend register 6
byte_offset: 88
fieldset: SUSP6R
- name: SUSP7R
description: Suspend register 7
byte_offset: 92
fieldset: SUSP7R
fieldset/CR:
description: Control register
fields:
- name: EN
description: AES enable
bit_offset: 0
bit_size: 1
- name: DATATYPE
description: Data type selection
bit_offset: 1
bit_size: 2
enum: DATATYPE
- name: MODE
description: Operating mode
bit_offset: 3
bit_size: 2
enum: MODE
- name: CHMOD10
description: Chaining mode bit1 bit0
bit_offset: 5
bit_size: 2
- name: CCFC
description: Computation Complete Flag Clear
bit_offset: 7
bit_size: 1
- name: ERRC
description: Error clear
bit_offset: 8
bit_size: 1
- name: CCFIE
description: CCF flag interrupt enable
bit_offset: 9
bit_size: 1
- name: ERRIE
description: Error interrupt enable
bit_offset: 10
bit_size: 1
- name: DMAINEN
description: Enable DMA management of data input phase
bit_offset: 11
bit_size: 1
- name: DMAOUTEN
description: Enable DMA management of data output phase
bit_offset: 12
bit_size: 1
- name: GCMPH
description: GCM or CCM phase selection
bit_offset: 13
bit_size: 2
enum: GCMPH
- name: CHMOD2
description: Chaining mode bit2
bit_offset: 16
bit_size: 1
- name: KEYSIZE
description: Key size selection
bit_offset: 18
bit_size: 1
fieldset/DINR:
description: Data input register
fields:
- name: DIN
description: Input data word
bit_offset: 0
bit_size: 32
fieldset/DOUTR:
description: Data output register
fields:
- name: DOUT
description: Output data word
bit_offset: 0
bit_size: 32
fieldset/IVR0:
description: Initialization vector register 0
fields:
- name: IVI
description: Initialization vector input, bits [31:0]
bit_offset: 0
bit_size: 32
fieldset/IVR1:
description: Initialization vector register 1
fields:
- name: IVI
description: Initialization vector input, bits [63:32]
bit_offset: 0
bit_size: 32
fieldset/IVR2:
description: Initialization vector register 2
fields:
- name: IVI
description: Initialization vector input, bits [95:64]
bit_offset: 0
bit_size: 32
fieldset/IVR3:
description: Initialization vector register 3
fields:
- name: IVI
description: Initialization vector input, bits [127:96]
bit_offset: 0
bit_size: 32
fieldset/KEYR0:
description: Key register 0
fields:
- name: KEY
description: Cryptographic key, bits [31:0]
bit_offset: 0
bit_size: 32
fieldset/KEYR1:
description: Key register 1
fields:
- name: KEY
description: Cryptographic key, bits [63:32]
bit_offset: 0
bit_size: 32
fieldset/KEYR2:
description: Key register 2
fields:
- name: KEY
description: Cryptographic key, bits [95:64]
bit_offset: 0
bit_size: 32
fieldset/KEYR3:
description: Key register 3
fields:
- name: KEY
description: Cryptographic key, bits [127:96]
bit_offset: 0
bit_size: 32
fieldset/KEYR4:
description: Key register 4
fields:
- name: KEY
description: Cryptographic key, bits [159:128]
bit_offset: 0
bit_size: 32
fieldset/KEYR5:
description: Key register 5
fields:
- name: KEY
description: Cryptographic key, bits [191:160]
bit_offset: 0
bit_size: 32
fieldset/KEYR6:
description: Key register 6
fields:
- name: KEY
description: Cryptographic key, bits [223:192]
bit_offset: 0
bit_size: 32
fieldset/KEYR7:
description: Key register 7
fields:
- name: KEY
description: Cryptographic key, bits [255:224]
bit_offset: 0
bit_size: 32
fieldset/SR:
description: Status register
fields:
- name: CCF
description: Computation complete flag
bit_offset: 0
bit_size: 1
- name: RDERR
description: Read error flag
bit_offset: 1
bit_size: 1
- name: WRERR
description: Write error flag
bit_offset: 2
bit_size: 1
- name: BUSY
description: Busy flag
bit_offset: 3
bit_size: 1
fieldset/SUSP0R:
description: Suspend register 0
fields:
- name: SUSP
description: AES suspend
bit_offset: 0
bit_size: 32
fieldset/SUSP1R:
description: Suspend register 1
fields:
- name: SUSP
description: AES suspend
bit_offset: 0
bit_size: 32
fieldset/SUSP2R:
description: Suspend register 2
fields:
- name: SUSP
description: AES suspend
bit_offset: 0
bit_size: 32
fieldset/SUSP3R:
description: Suspend register 3
fields:
- name: SUSP
description: AES suspend
bit_offset: 0
bit_size: 32
fieldset/SUSP4R:
description: Suspend register 4
fields:
- name: SUSP
description: AES suspend
bit_offset: 0
bit_size: 32
fieldset/SUSP5R:
description: Suspend register 5
fields:
- name: SUSP
description: AES suspend
bit_offset: 0
bit_size: 32
fieldset/SUSP6R:
description: Suspend register 6
fields:
- name: SUSP
description: AES suspend
bit_offset: 0
bit_size: 32
fieldset/SUSP7R:
description: Suspend register 7
fields:
- name: SUSP
description: AES suspend
bit_offset: 0
bit_size: 32
enum/GCMPH:
bit_size: 2
variants:
- name: Init phase
description: Init phase
value: 0
- name: Header phase
description: Header phase
value: 1
- name: Payload phase
description: Payload phase
value: 2
- name: Final phase
description: Final phase
value: 3
enum/DATATYPE:
bit_size: 2
variants:
- name: None
description: Word
value: 0
- name: HalfWord
description: Half-word (16-bit)
value: 1
- name: Byte
description: Byte (8-bit)
value: 2
- name: Bit
description: Bit
value: 3
enum/MODE:
bit_size: 2
variants:
- name: Mode1
description: "Mode 1: encryption"
value: 0
- name: Mode2
description: "Mode 2: key derivation (or key preparation for ECB/CBC decryption)"
value: 1
- name: Mode3
description: "Mode 3: decryption"
value: 2
- name: Mode4
description: "Mode 4: key derivation then single decryption"
value: 3