1 /** 2 * @file ctb_regs.h 3 * @brief Registers, Bit Masks and Bit Positions for the CTB Peripheral Module. 4 * @note This file is @generated. 5 * @ingroup ctb_registers 6 */ 7 8 /****************************************************************************** 9 * 10 * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by 11 * Analog Devices, Inc.), 12 * Copyright (C) 2023-2024 Analog Devices, Inc. 13 * 14 * Licensed under the Apache License, Version 2.0 (the "License"); 15 * you may not use this file except in compliance with the License. 16 * You may obtain a copy of the License at 17 * 18 * http://www.apache.org/licenses/LICENSE-2.0 19 * 20 * Unless required by applicable law or agreed to in writing, software 21 * distributed under the License is distributed on an "AS IS" BASIS, 22 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 23 * See the License for the specific language governing permissions and 24 * limitations under the License. 25 * 26 ******************************************************************************/ 27 28 #ifndef LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32690_INCLUDE_CTB_REGS_H_ 29 #define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32690_INCLUDE_CTB_REGS_H_ 30 31 /* **** Includes **** */ 32 #include <stdint.h> 33 34 #ifdef __cplusplus 35 extern "C" { 36 #endif 37 38 #if defined (__ICCARM__) 39 #pragma system_include 40 #endif 41 42 #if defined (__CC_ARM) 43 #pragma anon_unions 44 #endif 45 /// @cond 46 /* 47 If types are not defined elsewhere (CMSIS) define them here 48 */ 49 #ifndef __IO 50 #define __IO volatile 51 #endif 52 #ifndef __I 53 #define __I volatile const 54 #endif 55 #ifndef __O 56 #define __O volatile 57 #endif 58 #ifndef __R 59 #define __R volatile const 60 #endif 61 /// @endcond 62 63 /* **** Definitions **** */ 64 65 /** 66 * @ingroup ctb 67 * @defgroup ctb_registers CTB_Registers 68 * @brief Registers, Bit Masks and Bit Positions for the CTB Peripheral Module. 69 * @details The Cryptographic Toolbox is a combination of cryptographic engines and a secure cryptographic accelerator (SCA) used to provide advanced cryptographic security. 70 */ 71 72 /** 73 * @ingroup ctb_registers 74 * Structure type to access the CTB Registers. 75 */ 76 typedef struct { 77 __IO uint32_t ctrl; /**< <tt>\b 0x00:</tt> CTB CTRL Register */ 78 __IO uint32_t cipher_ctrl; /**< <tt>\b 0x04:</tt> CTB CIPHER_CTRL Register */ 79 __IO uint32_t hash_ctrl; /**< <tt>\b 0x08:</tt> CTB HASH_CTRL Register */ 80 __IO uint32_t crc_ctrl; /**< <tt>\b 0x0C:</tt> CTB CRC_CTRL Register */ 81 __IO uint32_t dma_src; /**< <tt>\b 0x10:</tt> CTB DMA_SRC Register */ 82 __IO uint32_t dma_dest; /**< <tt>\b 0x14:</tt> CTB DMA_DEST Register */ 83 __IO uint32_t dma_cnt; /**< <tt>\b 0x18:</tt> CTB DMA_CNT Register */ 84 __IO uint32_t maa_ctrl; /**< <tt>\b 0x1C:</tt> CTB MAA_CTRL Register */ 85 __O uint32_t din[4]; /**< <tt>\b 0x20:</tt> CTB DIN Register */ 86 __I uint32_t dout[4]; /**< <tt>\b 0x30:</tt> CTB DOUT Register */ 87 __IO uint32_t crc_poly; /**< <tt>\b 0x40:</tt> CTB CRC_POLY Register */ 88 __IO uint32_t crc_val; /**< <tt>\b 0x44:</tt> CTB CRC_VAL Register */ 89 __IO uint32_t crc_prng; /**< <tt>\b 0x48:</tt> CTB CRC_PRNG Register */ 90 __IO uint32_t ham_ecc; /**< <tt>\b 0x4C:</tt> CTB HAM_ECC Register */ 91 __IO uint32_t cipher_init[4]; /**< <tt>\b 0x50:</tt> CTB CIPHER_INIT Register */ 92 __O uint32_t cipher_key[8]; /**< <tt>\b 0x60:</tt> CTB CIPHER_KEY Register */ 93 __IO uint32_t hash_digest[16]; /**< <tt>\b 0x80:</tt> CTB HASH_DIGEST Register */ 94 __IO uint32_t hash_msg_sz[4]; /**< <tt>\b 0xC0:</tt> CTB HASH_MSG_SZ Register */ 95 union { 96 __IO uint32_t maa_maws; /**< <tt>\b 0xD0:</tt> CTB MAA_MAWS Register */ 97 __IO uint32_t aad_length[2]; /**< <tt>\b 0xD0:</tt> CTB AAD_LENGTH Register */ 98 }; 99 __IO uint32_t pld_length[2]; /**< <tt>\b 0xD8:</tt> CTB PLD_LENGTH Register */ 100 __IO uint32_t tagmic[4]; /**< <tt>\b 0xE0:</tt> CTB TAGMIC Register */ 101 } mxc_ctb_regs_t; 102 103 /* Register offsets for module CTB */ 104 /** 105 * @ingroup ctb_registers 106 * @defgroup CTB_Register_Offsets Register Offsets 107 * @brief CTB Peripheral Register Offsets from the CTB Base Peripheral Address. 108 * @{ 109 */ 110 #define MXC_R_CTB_CTRL ((uint32_t)0x00000000UL) /**< Offset from CTB Base Address: <tt> 0x0000</tt> */ 111 #define MXC_R_CTB_CIPHER_CTRL ((uint32_t)0x00000004UL) /**< Offset from CTB Base Address: <tt> 0x0004</tt> */ 112 #define MXC_R_CTB_HASH_CTRL ((uint32_t)0x00000008UL) /**< Offset from CTB Base Address: <tt> 0x0008</tt> */ 113 #define MXC_R_CTB_CRC_CTRL ((uint32_t)0x0000000CUL) /**< Offset from CTB Base Address: <tt> 0x000C</tt> */ 114 #define MXC_R_CTB_DMA_SRC ((uint32_t)0x00000010UL) /**< Offset from CTB Base Address: <tt> 0x0010</tt> */ 115 #define MXC_R_CTB_DMA_DEST ((uint32_t)0x00000014UL) /**< Offset from CTB Base Address: <tt> 0x0014</tt> */ 116 #define MXC_R_CTB_DMA_CNT ((uint32_t)0x00000018UL) /**< Offset from CTB Base Address: <tt> 0x0018</tt> */ 117 #define MXC_R_CTB_MAA_CTRL ((uint32_t)0x0000001CUL) /**< Offset from CTB Base Address: <tt> 0x001C</tt> */ 118 #define MXC_R_CTB_DIN ((uint32_t)0x00000020UL) /**< Offset from CTB Base Address: <tt> 0x0020</tt> */ 119 #define MXC_R_CTB_DOUT ((uint32_t)0x00000030UL) /**< Offset from CTB Base Address: <tt> 0x0030</tt> */ 120 #define MXC_R_CTB_CRC_POLY ((uint32_t)0x00000040UL) /**< Offset from CTB Base Address: <tt> 0x0040</tt> */ 121 #define MXC_R_CTB_CRC_VAL ((uint32_t)0x00000044UL) /**< Offset from CTB Base Address: <tt> 0x0044</tt> */ 122 #define MXC_R_CTB_CRC_PRNG ((uint32_t)0x00000048UL) /**< Offset from CTB Base Address: <tt> 0x0048</tt> */ 123 #define MXC_R_CTB_HAM_ECC ((uint32_t)0x0000004CUL) /**< Offset from CTB Base Address: <tt> 0x004C</tt> */ 124 #define MXC_R_CTB_CIPHER_INIT ((uint32_t)0x00000050UL) /**< Offset from CTB Base Address: <tt> 0x0050</tt> */ 125 #define MXC_R_CTB_CIPHER_KEY ((uint32_t)0x00000060UL) /**< Offset from CTB Base Address: <tt> 0x0060</tt> */ 126 #define MXC_R_CTB_HASH_DIGEST ((uint32_t)0x00000080UL) /**< Offset from CTB Base Address: <tt> 0x0080</tt> */ 127 #define MXC_R_CTB_HASH_MSG_SZ ((uint32_t)0x000000C0UL) /**< Offset from CTB Base Address: <tt> 0x00C0</tt> */ 128 #define MXC_R_CTB_MAA_MAWS ((uint32_t)0x000000D0UL) /**< Offset from CTB Base Address: <tt> 0x00D0</tt> */ 129 #define MXC_R_CTB_AAD_LENGTH ((uint32_t)0x000000D0UL) /**< Offset from CTB Base Address: <tt> 0x00D0</tt> */ 130 #define MXC_R_CTB_PLD_LENGTH ((uint32_t)0x000000D8UL) /**< Offset from CTB Base Address: <tt> 0x00D8</tt> */ 131 #define MXC_R_CTB_TAGMIC ((uint32_t)0x000000E0UL) /**< Offset from CTB Base Address: <tt> 0x00E0</tt> */ 132 /**@} end of group ctb_registers */ 133 134 /** 135 * @ingroup ctb_registers 136 * @defgroup CTB_CTRL CTB_CTRL 137 * @brief Crypto Control Register. 138 * @{ 139 */ 140 #define MXC_F_CTB_CTRL_RST_POS 0 /**< CTRL_RST Position */ 141 #define MXC_F_CTB_CTRL_RST ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_RST_POS)) /**< CTRL_RST Mask */ 142 143 #define MXC_F_CTB_CTRL_INTR_POS 1 /**< CTRL_INTR Position */ 144 #define MXC_F_CTB_CTRL_INTR ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_INTR_POS)) /**< CTRL_INTR Mask */ 145 146 #define MXC_F_CTB_CTRL_SRC_POS 2 /**< CTRL_SRC Position */ 147 #define MXC_F_CTB_CTRL_SRC ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_SRC_POS)) /**< CTRL_SRC Mask */ 148 149 #define MXC_F_CTB_CTRL_BSO_POS 4 /**< CTRL_BSO Position */ 150 #define MXC_F_CTB_CTRL_BSO ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_BSO_POS)) /**< CTRL_BSO Mask */ 151 152 #define MXC_F_CTB_CTRL_BSI_POS 5 /**< CTRL_BSI Position */ 153 #define MXC_F_CTB_CTRL_BSI ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_BSI_POS)) /**< CTRL_BSI Mask */ 154 155 #define MXC_F_CTB_CTRL_WAIT_EN_POS 6 /**< CTRL_WAIT_EN Position */ 156 #define MXC_F_CTB_CTRL_WAIT_EN ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_WAIT_EN_POS)) /**< CTRL_WAIT_EN Mask */ 157 158 #define MXC_F_CTB_CTRL_WAIT_POL_POS 7 /**< CTRL_WAIT_POL Position */ 159 #define MXC_F_CTB_CTRL_WAIT_POL ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_WAIT_POL_POS)) /**< CTRL_WAIT_POL Mask */ 160 161 #define MXC_F_CTB_CTRL_WRSRC_POS 8 /**< CTRL_WRSRC Position */ 162 #define MXC_F_CTB_CTRL_WRSRC ((uint32_t)(0x3UL << MXC_F_CTB_CTRL_WRSRC_POS)) /**< CTRL_WRSRC Mask */ 163 #define MXC_V_CTB_CTRL_WRSRC_NONE ((uint32_t)0x0UL) /**< CTRL_WRSRC_NONE Value */ 164 #define MXC_S_CTB_CTRL_WRSRC_NONE (MXC_V_CTB_CTRL_WRSRC_NONE << MXC_F_CTB_CTRL_WRSRC_POS) /**< CTRL_WRSRC_NONE Setting */ 165 #define MXC_V_CTB_CTRL_WRSRC_CIPHEROUTPUT ((uint32_t)0x1UL) /**< CTRL_WRSRC_CIPHEROUTPUT Value */ 166 #define MXC_S_CTB_CTRL_WRSRC_CIPHEROUTPUT (MXC_V_CTB_CTRL_WRSRC_CIPHEROUTPUT << MXC_F_CTB_CTRL_WRSRC_POS) /**< CTRL_WRSRC_CIPHEROUTPUT Setting */ 167 #define MXC_V_CTB_CTRL_WRSRC_READFIFO ((uint32_t)0x2UL) /**< CTRL_WRSRC_READFIFO Value */ 168 #define MXC_S_CTB_CTRL_WRSRC_READFIFO (MXC_V_CTB_CTRL_WRSRC_READFIFO << MXC_F_CTB_CTRL_WRSRC_POS) /**< CTRL_WRSRC_READFIFO Setting */ 169 170 #define MXC_F_CTB_CTRL_RDSRC_POS 10 /**< CTRL_RDSRC Position */ 171 #define MXC_F_CTB_CTRL_RDSRC ((uint32_t)(0x3UL << MXC_F_CTB_CTRL_RDSRC_POS)) /**< CTRL_RDSRC Mask */ 172 #define MXC_V_CTB_CTRL_RDSRC_DMADISABLED ((uint32_t)0x0UL) /**< CTRL_RDSRC_DMADISABLED Value */ 173 #define MXC_S_CTB_CTRL_RDSRC_DMADISABLED (MXC_V_CTB_CTRL_RDSRC_DMADISABLED << MXC_F_CTB_CTRL_RDSRC_POS) /**< CTRL_RDSRC_DMADISABLED Setting */ 174 #define MXC_V_CTB_CTRL_RDSRC_DMAORAPB ((uint32_t)0x1UL) /**< CTRL_RDSRC_DMAORAPB Value */ 175 #define MXC_S_CTB_CTRL_RDSRC_DMAORAPB (MXC_V_CTB_CTRL_RDSRC_DMAORAPB << MXC_F_CTB_CTRL_RDSRC_POS) /**< CTRL_RDSRC_DMAORAPB Setting */ 176 #define MXC_V_CTB_CTRL_RDSRC_RNG ((uint32_t)0x2UL) /**< CTRL_RDSRC_RNG Value */ 177 #define MXC_S_CTB_CTRL_RDSRC_RNG (MXC_V_CTB_CTRL_RDSRC_RNG << MXC_F_CTB_CTRL_RDSRC_POS) /**< CTRL_RDSRC_RNG Setting */ 178 179 #define MXC_F_CTB_CTRL_FLAG_MODE_POS 14 /**< CTRL_FLAG_MODE Position */ 180 #define MXC_F_CTB_CTRL_FLAG_MODE ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_FLAG_MODE_POS)) /**< CTRL_FLAG_MODE Mask */ 181 182 #define MXC_F_CTB_CTRL_DMADNEMSK_POS 15 /**< CTRL_DMADNEMSK Position */ 183 #define MXC_F_CTB_CTRL_DMADNEMSK ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_DMADNEMSK_POS)) /**< CTRL_DMADNEMSK Mask */ 184 185 #define MXC_F_CTB_CTRL_DMA_DONE_POS 24 /**< CTRL_DMA_DONE Position */ 186 #define MXC_F_CTB_CTRL_DMA_DONE ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_DMA_DONE_POS)) /**< CTRL_DMA_DONE Mask */ 187 188 #define MXC_F_CTB_CTRL_GLS_DONE_POS 25 /**< CTRL_GLS_DONE Position */ 189 #define MXC_F_CTB_CTRL_GLS_DONE ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_GLS_DONE_POS)) /**< CTRL_GLS_DONE Mask */ 190 191 #define MXC_F_CTB_CTRL_HSH_DONE_POS 26 /**< CTRL_HSH_DONE Position */ 192 #define MXC_F_CTB_CTRL_HSH_DONE ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_HSH_DONE_POS)) /**< CTRL_HSH_DONE Mask */ 193 194 #define MXC_F_CTB_CTRL_CPH_DONE_POS 27 /**< CTRL_CPH_DONE Position */ 195 #define MXC_F_CTB_CTRL_CPH_DONE ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_CPH_DONE_POS)) /**< CTRL_CPH_DONE Mask */ 196 197 #define MXC_F_CTB_CTRL_ERR_POS 29 /**< CTRL_ERR Position */ 198 #define MXC_F_CTB_CTRL_ERR ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_ERR_POS)) /**< CTRL_ERR Mask */ 199 200 #define MXC_F_CTB_CTRL_RDY_POS 30 /**< CTRL_RDY Position */ 201 #define MXC_F_CTB_CTRL_RDY ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_RDY_POS)) /**< CTRL_RDY Mask */ 202 203 #define MXC_F_CTB_CTRL_DONE_POS 31 /**< CTRL_DONE Position */ 204 #define MXC_F_CTB_CTRL_DONE ((uint32_t)(0x1UL << MXC_F_CTB_CTRL_DONE_POS)) /**< CTRL_DONE Mask */ 205 206 /**@} end of group CTB_CTRL_Register */ 207 208 /** 209 * @ingroup ctb_registers 210 * @defgroup CTB_CIPHER_CTRL CTB_CIPHER_CTRL 211 * @brief Cipher Control Register. 212 * @{ 213 */ 214 #define MXC_F_CTB_CIPHER_CTRL_ENC_POS 0 /**< CIPHER_CTRL_ENC Position */ 215 #define MXC_F_CTB_CIPHER_CTRL_ENC ((uint32_t)(0x1UL << MXC_F_CTB_CIPHER_CTRL_ENC_POS)) /**< CIPHER_CTRL_ENC Mask */ 216 217 #define MXC_F_CTB_CIPHER_CTRL_KEY_POS 1 /**< CIPHER_CTRL_KEY Position */ 218 #define MXC_F_CTB_CIPHER_CTRL_KEY ((uint32_t)(0x1UL << MXC_F_CTB_CIPHER_CTRL_KEY_POS)) /**< CIPHER_CTRL_KEY Mask */ 219 220 #define MXC_F_CTB_CIPHER_CTRL_SRC_POS 2 /**< CIPHER_CTRL_SRC Position */ 221 #define MXC_F_CTB_CIPHER_CTRL_SRC ((uint32_t)(0x3UL << MXC_F_CTB_CIPHER_CTRL_SRC_POS)) /**< CIPHER_CTRL_SRC Mask */ 222 #define MXC_V_CTB_CIPHER_CTRL_SRC_CIPHERKEY ((uint32_t)0x0UL) /**< CIPHER_CTRL_SRC_CIPHERKEY Value */ 223 #define MXC_S_CTB_CIPHER_CTRL_SRC_CIPHERKEY (MXC_V_CTB_CIPHER_CTRL_SRC_CIPHERKEY << MXC_F_CTB_CIPHER_CTRL_SRC_POS) /**< CIPHER_CTRL_SRC_CIPHERKEY Setting */ 224 #define MXC_V_CTB_CIPHER_CTRL_SRC_REGFILE ((uint32_t)0x2UL) /**< CIPHER_CTRL_SRC_REGFILE Value */ 225 #define MXC_S_CTB_CIPHER_CTRL_SRC_REGFILE (MXC_V_CTB_CIPHER_CTRL_SRC_REGFILE << MXC_F_CTB_CIPHER_CTRL_SRC_POS) /**< CIPHER_CTRL_SRC_REGFILE Setting */ 226 #define MXC_V_CTB_CIPHER_CTRL_SRC_QSPIKEY_REGFILE ((uint32_t)0x3UL) /**< CIPHER_CTRL_SRC_QSPIKEY_REGFILE Value */ 227 #define MXC_S_CTB_CIPHER_CTRL_SRC_QSPIKEY_REGFILE (MXC_V_CTB_CIPHER_CTRL_SRC_QSPIKEY_REGFILE << MXC_F_CTB_CIPHER_CTRL_SRC_POS) /**< CIPHER_CTRL_SRC_QSPIKEY_REGFILE Setting */ 228 229 #define MXC_F_CTB_CIPHER_CTRL_CIPHER_POS 4 /**< CIPHER_CTRL_CIPHER Position */ 230 #define MXC_F_CTB_CIPHER_CTRL_CIPHER ((uint32_t)(0x7UL << MXC_F_CTB_CIPHER_CTRL_CIPHER_POS)) /**< CIPHER_CTRL_CIPHER Mask */ 231 #define MXC_V_CTB_CIPHER_CTRL_CIPHER_DIS ((uint32_t)0x0UL) /**< CIPHER_CTRL_CIPHER_DIS Value */ 232 #define MXC_S_CTB_CIPHER_CTRL_CIPHER_DIS (MXC_V_CTB_CIPHER_CTRL_CIPHER_DIS << MXC_F_CTB_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_DIS Setting */ 233 #define MXC_V_CTB_CIPHER_CTRL_CIPHER_AES128 ((uint32_t)0x1UL) /**< CIPHER_CTRL_CIPHER_AES128 Value */ 234 #define MXC_S_CTB_CIPHER_CTRL_CIPHER_AES128 (MXC_V_CTB_CIPHER_CTRL_CIPHER_AES128 << MXC_F_CTB_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_AES128 Setting */ 235 #define MXC_V_CTB_CIPHER_CTRL_CIPHER_AES192 ((uint32_t)0x2UL) /**< CIPHER_CTRL_CIPHER_AES192 Value */ 236 #define MXC_S_CTB_CIPHER_CTRL_CIPHER_AES192 (MXC_V_CTB_CIPHER_CTRL_CIPHER_AES192 << MXC_F_CTB_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_AES192 Setting */ 237 #define MXC_V_CTB_CIPHER_CTRL_CIPHER_AES256 ((uint32_t)0x3UL) /**< CIPHER_CTRL_CIPHER_AES256 Value */ 238 #define MXC_S_CTB_CIPHER_CTRL_CIPHER_AES256 (MXC_V_CTB_CIPHER_CTRL_CIPHER_AES256 << MXC_F_CTB_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_AES256 Setting */ 239 #define MXC_V_CTB_CIPHER_CTRL_CIPHER_DES ((uint32_t)0x4UL) /**< CIPHER_CTRL_CIPHER_DES Value */ 240 #define MXC_S_CTB_CIPHER_CTRL_CIPHER_DES (MXC_V_CTB_CIPHER_CTRL_CIPHER_DES << MXC_F_CTB_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_DES Setting */ 241 #define MXC_V_CTB_CIPHER_CTRL_CIPHER_TDES ((uint32_t)0x5UL) /**< CIPHER_CTRL_CIPHER_TDES Value */ 242 #define MXC_S_CTB_CIPHER_CTRL_CIPHER_TDES (MXC_V_CTB_CIPHER_CTRL_CIPHER_TDES << MXC_F_CTB_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_TDES Setting */ 243 244 #define MXC_F_CTB_CIPHER_CTRL_MODE_POS 8 /**< CIPHER_CTRL_MODE Position */ 245 #define MXC_F_CTB_CIPHER_CTRL_MODE ((uint32_t)(0x7UL << MXC_F_CTB_CIPHER_CTRL_MODE_POS)) /**< CIPHER_CTRL_MODE Mask */ 246 #define MXC_V_CTB_CIPHER_CTRL_MODE_ECB ((uint32_t)0x0UL) /**< CIPHER_CTRL_MODE_ECB Value */ 247 #define MXC_S_CTB_CIPHER_CTRL_MODE_ECB (MXC_V_CTB_CIPHER_CTRL_MODE_ECB << MXC_F_CTB_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_ECB Setting */ 248 #define MXC_V_CTB_CIPHER_CTRL_MODE_CBC ((uint32_t)0x1UL) /**< CIPHER_CTRL_MODE_CBC Value */ 249 #define MXC_S_CTB_CIPHER_CTRL_MODE_CBC (MXC_V_CTB_CIPHER_CTRL_MODE_CBC << MXC_F_CTB_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_CBC Setting */ 250 #define MXC_V_CTB_CIPHER_CTRL_MODE_CFB ((uint32_t)0x2UL) /**< CIPHER_CTRL_MODE_CFB Value */ 251 #define MXC_S_CTB_CIPHER_CTRL_MODE_CFB (MXC_V_CTB_CIPHER_CTRL_MODE_CFB << MXC_F_CTB_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_CFB Setting */ 252 #define MXC_V_CTB_CIPHER_CTRL_MODE_OFB ((uint32_t)0x3UL) /**< CIPHER_CTRL_MODE_OFB Value */ 253 #define MXC_S_CTB_CIPHER_CTRL_MODE_OFB (MXC_V_CTB_CIPHER_CTRL_MODE_OFB << MXC_F_CTB_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_OFB Setting */ 254 #define MXC_V_CTB_CIPHER_CTRL_MODE_CTR ((uint32_t)0x4UL) /**< CIPHER_CTRL_MODE_CTR Value */ 255 #define MXC_S_CTB_CIPHER_CTRL_MODE_CTR (MXC_V_CTB_CIPHER_CTRL_MODE_CTR << MXC_F_CTB_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_CTR Setting */ 256 #define MXC_V_CTB_CIPHER_CTRL_MODE_GCM ((uint32_t)0x5UL) /**< CIPHER_CTRL_MODE_GCM Value */ 257 #define MXC_S_CTB_CIPHER_CTRL_MODE_GCM (MXC_V_CTB_CIPHER_CTRL_MODE_GCM << MXC_F_CTB_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_GCM Setting */ 258 #define MXC_V_CTB_CIPHER_CTRL_MODE_CCM ((uint32_t)0x6UL) /**< CIPHER_CTRL_MODE_CCM Value */ 259 #define MXC_S_CTB_CIPHER_CTRL_MODE_CCM (MXC_V_CTB_CIPHER_CTRL_MODE_CCM << MXC_F_CTB_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_CCM Setting */ 260 261 #define MXC_F_CTB_CIPHER_CTRL_HVC_POS 11 /**< CIPHER_CTRL_HVC Position */ 262 #define MXC_F_CTB_CIPHER_CTRL_HVC ((uint32_t)(0x1UL << MXC_F_CTB_CIPHER_CTRL_HVC_POS)) /**< CIPHER_CTRL_HVC Mask */ 263 264 #define MXC_F_CTB_CIPHER_CTRL_DTYPE_POS 12 /**< CIPHER_CTRL_DTYPE Position */ 265 #define MXC_F_CTB_CIPHER_CTRL_DTYPE ((uint32_t)(0x1UL << MXC_F_CTB_CIPHER_CTRL_DTYPE_POS)) /**< CIPHER_CTRL_DTYPE Mask */ 266 267 #define MXC_F_CTB_CIPHER_CTRL_CCMM_POS 13 /**< CIPHER_CTRL_CCMM Position */ 268 #define MXC_F_CTB_CIPHER_CTRL_CCMM ((uint32_t)(0x7UL << MXC_F_CTB_CIPHER_CTRL_CCMM_POS)) /**< CIPHER_CTRL_CCMM Mask */ 269 #define MXC_V_CTB_CIPHER_CTRL_CCMM_4 ((uint32_t)0x1UL) /**< CIPHER_CTRL_CCMM_4 Value */ 270 #define MXC_S_CTB_CIPHER_CTRL_CCMM_4 (MXC_V_CTB_CIPHER_CTRL_CCMM_4 << MXC_F_CTB_CIPHER_CTRL_CCMM_POS) /**< CIPHER_CTRL_CCMM_4 Setting */ 271 #define MXC_V_CTB_CIPHER_CTRL_CCMM_6 ((uint32_t)0x2UL) /**< CIPHER_CTRL_CCMM_6 Value */ 272 #define MXC_S_CTB_CIPHER_CTRL_CCMM_6 (MXC_V_CTB_CIPHER_CTRL_CCMM_6 << MXC_F_CTB_CIPHER_CTRL_CCMM_POS) /**< CIPHER_CTRL_CCMM_6 Setting */ 273 #define MXC_V_CTB_CIPHER_CTRL_CCMM_8 ((uint32_t)0x3UL) /**< CIPHER_CTRL_CCMM_8 Value */ 274 #define MXC_S_CTB_CIPHER_CTRL_CCMM_8 (MXC_V_CTB_CIPHER_CTRL_CCMM_8 << MXC_F_CTB_CIPHER_CTRL_CCMM_POS) /**< CIPHER_CTRL_CCMM_8 Setting */ 275 #define MXC_V_CTB_CIPHER_CTRL_CCMM_10 ((uint32_t)0x4UL) /**< CIPHER_CTRL_CCMM_10 Value */ 276 #define MXC_S_CTB_CIPHER_CTRL_CCMM_10 (MXC_V_CTB_CIPHER_CTRL_CCMM_10 << MXC_F_CTB_CIPHER_CTRL_CCMM_POS) /**< CIPHER_CTRL_CCMM_10 Setting */ 277 #define MXC_V_CTB_CIPHER_CTRL_CCMM_12 ((uint32_t)0x5UL) /**< CIPHER_CTRL_CCMM_12 Value */ 278 #define MXC_S_CTB_CIPHER_CTRL_CCMM_12 (MXC_V_CTB_CIPHER_CTRL_CCMM_12 << MXC_F_CTB_CIPHER_CTRL_CCMM_POS) /**< CIPHER_CTRL_CCMM_12 Setting */ 279 #define MXC_V_CTB_CIPHER_CTRL_CCMM_14 ((uint32_t)0x6UL) /**< CIPHER_CTRL_CCMM_14 Value */ 280 #define MXC_S_CTB_CIPHER_CTRL_CCMM_14 (MXC_V_CTB_CIPHER_CTRL_CCMM_14 << MXC_F_CTB_CIPHER_CTRL_CCMM_POS) /**< CIPHER_CTRL_CCMM_14 Setting */ 281 #define MXC_V_CTB_CIPHER_CTRL_CCMM_16 ((uint32_t)0x7UL) /**< CIPHER_CTRL_CCMM_16 Value */ 282 #define MXC_S_CTB_CIPHER_CTRL_CCMM_16 (MXC_V_CTB_CIPHER_CTRL_CCMM_16 << MXC_F_CTB_CIPHER_CTRL_CCMM_POS) /**< CIPHER_CTRL_CCMM_16 Setting */ 283 284 #define MXC_F_CTB_CIPHER_CTRL_CCML_POS 16 /**< CIPHER_CTRL_CCML Position */ 285 #define MXC_F_CTB_CIPHER_CTRL_CCML ((uint32_t)(0x7UL << MXC_F_CTB_CIPHER_CTRL_CCML_POS)) /**< CIPHER_CTRL_CCML Mask */ 286 #define MXC_V_CTB_CIPHER_CTRL_CCML_2 ((uint32_t)0x1UL) /**< CIPHER_CTRL_CCML_2 Value */ 287 #define MXC_S_CTB_CIPHER_CTRL_CCML_2 (MXC_V_CTB_CIPHER_CTRL_CCML_2 << MXC_F_CTB_CIPHER_CTRL_CCML_POS) /**< CIPHER_CTRL_CCML_2 Setting */ 288 #define MXC_V_CTB_CIPHER_CTRL_CCML_3 ((uint32_t)0x2UL) /**< CIPHER_CTRL_CCML_3 Value */ 289 #define MXC_S_CTB_CIPHER_CTRL_CCML_3 (MXC_V_CTB_CIPHER_CTRL_CCML_3 << MXC_F_CTB_CIPHER_CTRL_CCML_POS) /**< CIPHER_CTRL_CCML_3 Setting */ 290 #define MXC_V_CTB_CIPHER_CTRL_CCML_4 ((uint32_t)0x3UL) /**< CIPHER_CTRL_CCML_4 Value */ 291 #define MXC_S_CTB_CIPHER_CTRL_CCML_4 (MXC_V_CTB_CIPHER_CTRL_CCML_4 << MXC_F_CTB_CIPHER_CTRL_CCML_POS) /**< CIPHER_CTRL_CCML_4 Setting */ 292 #define MXC_V_CTB_CIPHER_CTRL_CCML_5 ((uint32_t)0x4UL) /**< CIPHER_CTRL_CCML_5 Value */ 293 #define MXC_S_CTB_CIPHER_CTRL_CCML_5 (MXC_V_CTB_CIPHER_CTRL_CCML_5 << MXC_F_CTB_CIPHER_CTRL_CCML_POS) /**< CIPHER_CTRL_CCML_5 Setting */ 294 #define MXC_V_CTB_CIPHER_CTRL_CCML_6 ((uint32_t)0x5UL) /**< CIPHER_CTRL_CCML_6 Value */ 295 #define MXC_S_CTB_CIPHER_CTRL_CCML_6 (MXC_V_CTB_CIPHER_CTRL_CCML_6 << MXC_F_CTB_CIPHER_CTRL_CCML_POS) /**< CIPHER_CTRL_CCML_6 Setting */ 296 #define MXC_V_CTB_CIPHER_CTRL_CCML_7 ((uint32_t)0x6UL) /**< CIPHER_CTRL_CCML_7 Value */ 297 #define MXC_S_CTB_CIPHER_CTRL_CCML_7 (MXC_V_CTB_CIPHER_CTRL_CCML_7 << MXC_F_CTB_CIPHER_CTRL_CCML_POS) /**< CIPHER_CTRL_CCML_7 Setting */ 298 #define MXC_V_CTB_CIPHER_CTRL_CCML_8 ((uint32_t)0x7UL) /**< CIPHER_CTRL_CCML_8 Value */ 299 #define MXC_S_CTB_CIPHER_CTRL_CCML_8 (MXC_V_CTB_CIPHER_CTRL_CCML_8 << MXC_F_CTB_CIPHER_CTRL_CCML_POS) /**< CIPHER_CTRL_CCML_8 Setting */ 300 301 /**@} end of group CTB_CIPHER_CTRL_Register */ 302 303 /** 304 * @ingroup ctb_registers 305 * @defgroup CTB_HASH_CTRL CTB_HASH_CTRL 306 * @brief HASH Control Register. 307 * @{ 308 */ 309 #define MXC_F_CTB_HASH_CTRL_INIT_POS 0 /**< HASH_CTRL_INIT Position */ 310 #define MXC_F_CTB_HASH_CTRL_INIT ((uint32_t)(0x1UL << MXC_F_CTB_HASH_CTRL_INIT_POS)) /**< HASH_CTRL_INIT Mask */ 311 312 #define MXC_F_CTB_HASH_CTRL_XOR_POS 1 /**< HASH_CTRL_XOR Position */ 313 #define MXC_F_CTB_HASH_CTRL_XOR ((uint32_t)(0x1UL << MXC_F_CTB_HASH_CTRL_XOR_POS)) /**< HASH_CTRL_XOR Mask */ 314 315 #define MXC_F_CTB_HASH_CTRL_HASH_POS 2 /**< HASH_CTRL_HASH Position */ 316 #define MXC_F_CTB_HASH_CTRL_HASH ((uint32_t)(0x7UL << MXC_F_CTB_HASH_CTRL_HASH_POS)) /**< HASH_CTRL_HASH Mask */ 317 #define MXC_V_CTB_HASH_CTRL_HASH_DIS ((uint32_t)0x0UL) /**< HASH_CTRL_HASH_DIS Value */ 318 #define MXC_S_CTB_HASH_CTRL_HASH_DIS (MXC_V_CTB_HASH_CTRL_HASH_DIS << MXC_F_CTB_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_DIS Setting */ 319 #define MXC_V_CTB_HASH_CTRL_HASH_SHA1 ((uint32_t)0x1UL) /**< HASH_CTRL_HASH_SHA1 Value */ 320 #define MXC_S_CTB_HASH_CTRL_HASH_SHA1 (MXC_V_CTB_HASH_CTRL_HASH_SHA1 << MXC_F_CTB_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA1 Setting */ 321 #define MXC_V_CTB_HASH_CTRL_HASH_SHA224 ((uint32_t)0x2UL) /**< HASH_CTRL_HASH_SHA224 Value */ 322 #define MXC_S_CTB_HASH_CTRL_HASH_SHA224 (MXC_V_CTB_HASH_CTRL_HASH_SHA224 << MXC_F_CTB_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA224 Setting */ 323 #define MXC_V_CTB_HASH_CTRL_HASH_SHA256 ((uint32_t)0x3UL) /**< HASH_CTRL_HASH_SHA256 Value */ 324 #define MXC_S_CTB_HASH_CTRL_HASH_SHA256 (MXC_V_CTB_HASH_CTRL_HASH_SHA256 << MXC_F_CTB_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA256 Setting */ 325 #define MXC_V_CTB_HASH_CTRL_HASH_SHA384 ((uint32_t)0x4UL) /**< HASH_CTRL_HASH_SHA384 Value */ 326 #define MXC_S_CTB_HASH_CTRL_HASH_SHA384 (MXC_V_CTB_HASH_CTRL_HASH_SHA384 << MXC_F_CTB_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA384 Setting */ 327 #define MXC_V_CTB_HASH_CTRL_HASH_SHA512 ((uint32_t)0x5UL) /**< HASH_CTRL_HASH_SHA512 Value */ 328 #define MXC_S_CTB_HASH_CTRL_HASH_SHA512 (MXC_V_CTB_HASH_CTRL_HASH_SHA512 << MXC_F_CTB_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA512 Setting */ 329 330 #define MXC_F_CTB_HASH_CTRL_LAST_POS 5 /**< HASH_CTRL_LAST Position */ 331 #define MXC_F_CTB_HASH_CTRL_LAST ((uint32_t)(0x1UL << MXC_F_CTB_HASH_CTRL_LAST_POS)) /**< HASH_CTRL_LAST Mask */ 332 333 /**@} end of group CTB_HASH_CTRL_Register */ 334 335 /** 336 * @ingroup ctb_registers 337 * @defgroup CTB_CRC_CTRL CTB_CRC_CTRL 338 * @brief CRC Control Register. 339 * @{ 340 */ 341 #define MXC_F_CTB_CRC_CTRL_CRC_POS 0 /**< CRC_CTRL_CRC Position */ 342 #define MXC_F_CTB_CRC_CTRL_CRC ((uint32_t)(0x1UL << MXC_F_CTB_CRC_CTRL_CRC_POS)) /**< CRC_CTRL_CRC Mask */ 343 344 #define MXC_F_CTB_CRC_CTRL_MSB_POS 1 /**< CRC_CTRL_MSB Position */ 345 #define MXC_F_CTB_CRC_CTRL_MSB ((uint32_t)(0x1UL << MXC_F_CTB_CRC_CTRL_MSB_POS)) /**< CRC_CTRL_MSB Mask */ 346 347 #define MXC_F_CTB_CRC_CTRL_PRNG_POS 2 /**< CRC_CTRL_PRNG Position */ 348 #define MXC_F_CTB_CRC_CTRL_PRNG ((uint32_t)(0x1UL << MXC_F_CTB_CRC_CTRL_PRNG_POS)) /**< CRC_CTRL_PRNG Mask */ 349 350 #define MXC_F_CTB_CRC_CTRL_ENT_POS 3 /**< CRC_CTRL_ENT Position */ 351 #define MXC_F_CTB_CRC_CTRL_ENT ((uint32_t)(0x1UL << MXC_F_CTB_CRC_CTRL_ENT_POS)) /**< CRC_CTRL_ENT Mask */ 352 353 #define MXC_F_CTB_CRC_CTRL_HAM_POS 4 /**< CRC_CTRL_HAM Position */ 354 #define MXC_F_CTB_CRC_CTRL_HAM ((uint32_t)(0x1UL << MXC_F_CTB_CRC_CTRL_HAM_POS)) /**< CRC_CTRL_HAM Mask */ 355 356 #define MXC_F_CTB_CRC_CTRL_HRST_POS 5 /**< CRC_CTRL_HRST Position */ 357 #define MXC_F_CTB_CRC_CTRL_HRST ((uint32_t)(0x1UL << MXC_F_CTB_CRC_CTRL_HRST_POS)) /**< CRC_CTRL_HRST Mask */ 358 359 /**@} end of group CTB_CRC_CTRL_Register */ 360 361 /** 362 * @ingroup ctb_registers 363 * @defgroup CTB_DMA_SRC CTB_DMA_SRC 364 * @brief Crypto DMA Source Address. 365 * @{ 366 */ 367 #define MXC_F_CTB_DMA_SRC_ADDR_POS 0 /**< DMA_SRC_ADDR Position */ 368 #define MXC_F_CTB_DMA_SRC_ADDR ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_DMA_SRC_ADDR_POS)) /**< DMA_SRC_ADDR Mask */ 369 370 /**@} end of group CTB_DMA_SRC_Register */ 371 372 /** 373 * @ingroup ctb_registers 374 * @defgroup CTB_DMA_DEST CTB_DMA_DEST 375 * @brief Crypto DMA Destination Address. 376 * @{ 377 */ 378 #define MXC_F_CTB_DMA_DEST_ADDR_POS 0 /**< DMA_DEST_ADDR Position */ 379 #define MXC_F_CTB_DMA_DEST_ADDR ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_DMA_DEST_ADDR_POS)) /**< DMA_DEST_ADDR Mask */ 380 381 /**@} end of group CTB_DMA_DEST_Register */ 382 383 /** 384 * @ingroup ctb_registers 385 * @defgroup CTB_DMA_CNT CTB_DMA_CNT 386 * @brief Crypto DMA Byte Count. 387 * @{ 388 */ 389 #define MXC_F_CTB_DMA_CNT_ADDR_POS 0 /**< DMA_CNT_ADDR Position */ 390 #define MXC_F_CTB_DMA_CNT_ADDR ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_DMA_CNT_ADDR_POS)) /**< DMA_CNT_ADDR Mask */ 391 392 /**@} end of group CTB_DMA_CNT_Register */ 393 394 /** 395 * @ingroup ctb_registers 396 * @defgroup CTB_DIN CTB_DIN 397 * @brief Crypto Data Input. Data input can be written to this register instead of using 398 * the DMA. This register writes to the FIFO. This register occupies four 399 * successive words to allow the use of multi-store instructions. Words can be 400 * written to any location, they will be placed in the FIFO in the order they are 401 * written. The endian swap input control bit affects this register. 402 * @{ 403 */ 404 #define MXC_F_CTB_DIN_DATA_POS 0 /**< DIN_DATA Position */ 405 #define MXC_F_CTB_DIN_DATA ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_DIN_DATA_POS)) /**< DIN_DATA Mask */ 406 407 /**@} end of group CTB_DIN_Register */ 408 409 /** 410 * @ingroup ctb_registers 411 * @defgroup CTB_DOUT CTB_DOUT 412 * @brief Crypto Data Output. Resulting data from cipher calculation. Data is placed in 413 * the lower words of these four registers depending on the algorithm. For block 414 * cipher modes, this register holds the result of most recent encryption or 415 * decryption operation. These registers are affected by the endian swap bits. 416 * @{ 417 */ 418 #define MXC_F_CTB_DOUT_DATA_POS 0 /**< DOUT_DATA Position */ 419 #define MXC_F_CTB_DOUT_DATA ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_DOUT_DATA_POS)) /**< DOUT_DATA Mask */ 420 421 /**@} end of group CTB_DOUT_Register */ 422 423 /** 424 * @ingroup ctb_registers 425 * @defgroup CTB_CRC_POLY CTB_CRC_POLY 426 * @brief CRC Polynomial. The polynomial to be used for Galois Field calculations (CRC or 427 * LFSR) should be written to this register. This register is affected by the MSB 428 * control bit. 429 * @{ 430 */ 431 #define MXC_F_CTB_CRC_POLY_POLY_POS 0 /**< CRC_POLY_POLY Position */ 432 #define MXC_F_CTB_CRC_POLY_POLY ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_CRC_POLY_POLY_POS)) /**< CRC_POLY_POLY Mask */ 433 434 /**@} end of group CTB_CRC_POLY_Register */ 435 436 /** 437 * @ingroup ctb_registers 438 * @defgroup CTB_CRC_VAL CTB_CRC_VAL 439 * @brief CRC Value. This is the state for the Galois Field. This register holds the 440 * result of a CRC calculation or the current state of the LFSR. This register is 441 * affected by the MSB control bit. 442 * @{ 443 */ 444 #define MXC_F_CTB_CRC_VAL_VAL_POS 0 /**< CRC_VAL_VAL Position */ 445 #define MXC_F_CTB_CRC_VAL_VAL ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_CRC_VAL_VAL_POS)) /**< CRC_VAL_VAL Mask */ 446 447 /**@} end of group CTB_CRC_VAL_Register */ 448 449 /** 450 * @ingroup ctb_registers 451 * @defgroup CTB_CRC_PRNG CTB_CRC_PRNG 452 * @brief CRC PRNG Register. 453 * @{ 454 */ 455 #define MXC_F_CTB_CRC_PRNG_PRNG_POS 0 /**< CRC_PRNG_PRNG Position */ 456 #define MXC_F_CTB_CRC_PRNG_PRNG ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_CRC_PRNG_PRNG_POS)) /**< CRC_PRNG_PRNG Mask */ 457 458 /**@} end of group CTB_CRC_PRNG_Register */ 459 460 /** 461 * @ingroup ctb_registers 462 * @defgroup CTB_HAM_ECC CTB_HAM_ECC 463 * @brief Hamming ECC Register. 464 * @{ 465 */ 466 #define MXC_F_CTB_HAM_ECC_ECC_POS 0 /**< HAM_ECC_ECC Position */ 467 #define MXC_F_CTB_HAM_ECC_ECC ((uint32_t)(0xFFFFUL << MXC_F_CTB_HAM_ECC_ECC_POS)) /**< HAM_ECC_ECC Mask */ 468 469 #define MXC_F_CTB_HAM_ECC_PAR_POS 16 /**< HAM_ECC_PAR Position */ 470 #define MXC_F_CTB_HAM_ECC_PAR ((uint32_t)(0x1UL << MXC_F_CTB_HAM_ECC_PAR_POS)) /**< HAM_ECC_PAR Mask */ 471 472 /**@} end of group CTB_HAM_ECC_Register */ 473 474 /** 475 * @ingroup ctb_registers 476 * @defgroup CTB_CIPHER_INIT CTB_CIPHER_INIT 477 * @brief Initial Vector. For block cipher operations that use CBC, CFB, OFB, or CNTR 478 * modes, this register holds the initial value. This register is updated with each 479 * encryption or decryption operation. This register is affected by the endian swap 480 * bits. 481 * @{ 482 */ 483 #define MXC_F_CTB_CIPHER_INIT_IVEC_POS 0 /**< CIPHER_INIT_IVEC Position */ 484 #define MXC_F_CTB_CIPHER_INIT_IVEC ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_CIPHER_INIT_IVEC_POS)) /**< CIPHER_INIT_IVEC Mask */ 485 486 /**@} end of group CTB_CIPHER_INIT_Register */ 487 488 /** 489 * @ingroup ctb_registers 490 * @defgroup CTB_CIPHER_KEY CTB_CIPHER_KEY 491 * @brief Cipher Key. This register holds the key used for block cipher operations. The 492 * lower words are used for block ciphers that use shorter key lengths. This 493 * register is affected by the endian swap input control bits. 494 * @{ 495 */ 496 #define MXC_F_CTB_CIPHER_KEY_KEY_POS 0 /**< CIPHER_KEY_KEY Position */ 497 #define MXC_F_CTB_CIPHER_KEY_KEY ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_CIPHER_KEY_KEY_POS)) /**< CIPHER_KEY_KEY Mask */ 498 499 /**@} end of group CTB_CIPHER_KEY_Register */ 500 501 /** 502 * @ingroup ctb_registers 503 * @defgroup CTB_HASH_DIGEST CTB_HASH_DIGEST 504 * @brief This register holds the calculated hash value. This register is affected by the 505 * endian swap bits. 506 * @{ 507 */ 508 #define MXC_F_CTB_HASH_DIGEST_HASH_POS 0 /**< HASH_DIGEST_HASH Position */ 509 #define MXC_F_CTB_HASH_DIGEST_HASH ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_HASH_DIGEST_HASH_POS)) /**< HASH_DIGEST_HASH Mask */ 510 511 /**@} end of group CTB_HASH_DIGEST_Register */ 512 513 /** 514 * @ingroup ctb_registers 515 * @defgroup CTB_HASH_MSG_SZ CTB_HASH_MSG_SZ 516 * @brief Message Size. This register holds the lowest 32-bit of message size in bytes. 517 * @{ 518 */ 519 #define MXC_F_CTB_HASH_MSG_SZ_MSGSZ_POS 0 /**< HASH_MSG_SZ_MSGSZ Position */ 520 #define MXC_F_CTB_HASH_MSG_SZ_MSGSZ ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_HASH_MSG_SZ_MSGSZ_POS)) /**< HASH_MSG_SZ_MSGSZ Mask */ 521 522 /**@} end of group CTB_HASH_MSG_SZ_Register */ 523 524 /** 525 * @ingroup ctb_registers 526 * @defgroup CTB_MAA_MAWS CTB_MAA_MAWS 527 * @brief MAA Word Size Register. 528 * @{ 529 */ 530 #define MXC_F_CTB_MAA_MAWS_SIZE_POS 0 /**< MAA_MAWS_SIZE Position */ 531 #define MXC_F_CTB_MAA_MAWS_SIZE ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_MAA_MAWS_SIZE_POS)) /**< MAA_MAWS_SIZE Mask */ 532 533 /**@} end of group CTB_MAA_MAWS_Register */ 534 535 /** 536 * @ingroup ctb_registers 537 * @defgroup CTB_AAD_LENGTH CTB_AAD_LENGTH 538 * @brief AAD Length Registers. 539 * @{ 540 */ 541 #define MXC_F_CTB_AAD_LENGTH_LENGTH_POS 0 /**< AAD_LENGTH_LENGTH Position */ 542 #define MXC_F_CTB_AAD_LENGTH_LENGTH ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_AAD_LENGTH_LENGTH_POS)) /**< AAD_LENGTH_LENGTH Mask */ 543 544 /**@} end of group CTB_AAD_LENGTH_Register */ 545 546 /** 547 * @ingroup ctb_registers 548 * @defgroup CTB_PLD_LENGTH CTB_PLD_LENGTH 549 * @brief PLD Length Registers. 550 * @{ 551 */ 552 #define MXC_F_CTB_PLD_LENGTH_LENGTH_POS 0 /**< PLD_LENGTH_LENGTH Position */ 553 #define MXC_F_CTB_PLD_LENGTH_LENGTH ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_PLD_LENGTH_LENGTH_POS)) /**< PLD_LENGTH_LENGTH Mask */ 554 555 /**@} end of group CTB_PLD_LENGTH_Register */ 556 557 /** 558 * @ingroup ctb_registers 559 * @defgroup CTB_TAGMIC CTB_TAGMIC 560 * @brief TAG/MIC Registers. 561 * @{ 562 */ 563 #define MXC_F_CTB_TAGMIC_LENGTH_POS 0 /**< TAGMIC_LENGTH Position */ 564 #define MXC_F_CTB_TAGMIC_LENGTH ((uint32_t)(0xFFFFFFFFUL << MXC_F_CTB_TAGMIC_LENGTH_POS)) /**< TAGMIC_LENGTH Mask */ 565 566 /**@} end of group CTB_TAGMIC_Register */ 567 568 #ifdef __cplusplus 569 } 570 #endif 571 572 #endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32690_INCLUDE_CTB_REGS_H_ 573