377 lines
8.7 KiB
YAML
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
|