Регистры Allwinner H616

Сокращения  |  Дерево шин  |  Карта памяти


T_D_Q_COM_CTRL
10.1.4. Task Descriptor Queue Common Control

Криптосистема : список регистров



31 ||||||||||||||||| 16
15 ||||||||||||||||| 00

  INTER_ENA_CUR_TASK

Bit 31
R/W
0x0

Interrupt enable for current task
Interrupt enable for current task
0: disable interrupt
1: enable interrupt


  Unused

Bits 30 : 25

  CBC_MAC_LEN

Bits 24 : 17
R/W
0x0

The outcome bit length of CBC-MAC when in CBC-MAC mode.


  IV_MODE

Bit 16
R/W
0x0

IV mode for SHA1/SHA224/SHA256/SHA384/SHA512/MD5 or constants
0: use initial constants defined in FIPS-180
1: use input iv


  LAST_HMAC_PLAINTEXT

Bit 15
R/W
0x0

0: not the last HMAC plaintext package. Padding is not required.
1: the last HMAC plaintext package.Padding is required


  Unused

Bits 14 : 9

  OP_DIR

Bit 8
R/W
0x0

Algorithm Operation Direction
0: Encryption
1: Decryption


  Unused

Bit 7

  ALGORITHM_TYPE

Bits 6 : 0
R/W
0x0

0x0: AES
0x1: DES
0x2: Triple DES (3DES)
0x10: MD5
0x11: SHA-1
0x12: SHA-224
0x13: SHA-256
0x14: SHA-384
0x15: SHA-512

0x16: HMAC-SHA1
0x17: HMAC-SHA256
0x1C: TRNG
0x1D: PRNG
0x20: RSA
0x21: ECC
0x30: RAES
Others: Reserved



Команда U-Boot для чтения регистра

md 1904000 1
md 1904800 1



Bit fields structure

typedef union  t_d_q_com_ctrl
{
  struct
  {
   unsigned algorithm_type : 7;
   unsigned unused0 : 1;
   unsigned op_dir : 1;
   unsigned unused1 : 6;
   unsigned last_hmac_plaintext : 1;
   unsigned iv_mode : 1;
   unsigned cbc_mac_len : 8;
   unsigned unused2 : 6;
   unsigned inter_ena_cur_task : 1;
  } b;
   unsigned long w;
} T_D_Q_COM_CTRL
   

Allwinner H616 Manual