1 /** 2 * @file tpu_regs.h 3 * @brief Registers, Bit Masks and Bit Positions for the TPU Peripheral Module. 4 * @note This file is @generated. 5 * @ingroup tpu_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_MAX32650_INCLUDE_TPU_REGS_H_ 29 #define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32650_INCLUDE_TPU_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 tpu 67 * @defgroup tpu_registers TPU_Registers 68 * @brief Registers, Bit Masks and Bit Positions for the TPU Peripheral Module. 69 * @details The Trust Protection Unit used to assist the computationally intensive operations of several common cryptographic algorithms. 70 */ 71 72 /** 73 * @ingroup tpu_registers 74 * Structure type to access the TPU Registers. 75 */ 76 typedef struct { 77 __IO uint32_t crypto_ctrl; /**< <tt>\b 0x00:</tt> TPU CRYPTO_CTRL Register */ 78 __IO uint32_t cipher_ctrl; /**< <tt>\b 0x04:</tt> TPU CIPHER_CTRL Register */ 79 __IO uint32_t hash_ctrl; /**< <tt>\b 0x08:</tt> TPU HASH_CTRL Register */ 80 __IO uint32_t crc_ctrl; /**< <tt>\b 0x0C:</tt> TPU CRC_CTRL Register */ 81 __IO uint32_t dma_src; /**< <tt>\b 0x10:</tt> TPU DMA_SRC Register */ 82 __IO uint32_t dma_dest; /**< <tt>\b 0x14:</tt> TPU DMA_DEST Register */ 83 __IO uint32_t dma_cnt; /**< <tt>\b 0x18:</tt> TPU DMA_CNT Register */ 84 __IO uint32_t maa_ctrl; /**< <tt>\b 0x1C:</tt> TPU MAA_CTRL Register */ 85 __O uint32_t crypto_din[4]; /**< <tt>\b 0x20:</tt> TPU CRYPTO_DIN Register */ 86 __I uint32_t crypto_dout[4]; /**< <tt>\b 0x30:</tt> TPU CRYPTO_DOUT Register */ 87 __IO uint32_t crc_poly; /**< <tt>\b 0x40:</tt> TPU CRC_POLY Register */ 88 __IO uint32_t crc_val; /**< <tt>\b 0x44:</tt> TPU CRC_VAL Register */ 89 __I uint32_t crc_prng; /**< <tt>\b 0x48:</tt> TPU CRC_PRNG Register */ 90 __IO uint32_t ham_ecc; /**< <tt>\b 0x4C:</tt> TPU HAM_ECC Register */ 91 __IO uint32_t cipher_init[4]; /**< <tt>\b 0x50:</tt> TPU CIPHER_INIT Register */ 92 __O uint32_t cipher_key[8]; /**< <tt>\b 0x60:</tt> TPU CIPHER_KEY Register */ 93 __IO uint32_t hash_digest[16]; /**< <tt>\b 0x80:</tt> TPU HASH_DIGEST Register */ 94 __IO uint32_t hash_msg_sz[4]; /**< <tt>\b 0xC0:</tt> TPU HASH_MSG_SZ Register */ 95 __IO uint32_t maa_maws; /**< <tt>\b 0xD0:</tt> TPU MAA_MAWS Register */ 96 } mxc_tpu_regs_t; 97 98 /* Register offsets for module TPU */ 99 /** 100 * @ingroup tpu_registers 101 * @defgroup TPU_Register_Offsets Register Offsets 102 * @brief TPU Peripheral Register Offsets from the TPU Base Peripheral Address. 103 * @{ 104 */ 105 #define MXC_R_TPU_CRYPTO_CTRL ((uint32_t)0x00000000UL) /**< Offset from TPU Base Address: <tt> 0x0000</tt> */ 106 #define MXC_R_TPU_CIPHER_CTRL ((uint32_t)0x00000004UL) /**< Offset from TPU Base Address: <tt> 0x0004</tt> */ 107 #define MXC_R_TPU_HASH_CTRL ((uint32_t)0x00000008UL) /**< Offset from TPU Base Address: <tt> 0x0008</tt> */ 108 #define MXC_R_TPU_CRC_CTRL ((uint32_t)0x0000000CUL) /**< Offset from TPU Base Address: <tt> 0x000C</tt> */ 109 #define MXC_R_TPU_DMA_SRC ((uint32_t)0x00000010UL) /**< Offset from TPU Base Address: <tt> 0x0010</tt> */ 110 #define MXC_R_TPU_DMA_DEST ((uint32_t)0x00000014UL) /**< Offset from TPU Base Address: <tt> 0x0014</tt> */ 111 #define MXC_R_TPU_DMA_CNT ((uint32_t)0x00000018UL) /**< Offset from TPU Base Address: <tt> 0x0018</tt> */ 112 #define MXC_R_TPU_MAA_CTRL ((uint32_t)0x0000001CUL) /**< Offset from TPU Base Address: <tt> 0x001C</tt> */ 113 #define MXC_R_TPU_CRYPTO_DIN ((uint32_t)0x00000020UL) /**< Offset from TPU Base Address: <tt> 0x0020</tt> */ 114 #define MXC_R_TPU_CRYPTO_DOUT ((uint32_t)0x00000030UL) /**< Offset from TPU Base Address: <tt> 0x0030</tt> */ 115 #define MXC_R_TPU_CRC_POLY ((uint32_t)0x00000040UL) /**< Offset from TPU Base Address: <tt> 0x0040</tt> */ 116 #define MXC_R_TPU_CRC_VAL ((uint32_t)0x00000044UL) /**< Offset from TPU Base Address: <tt> 0x0044</tt> */ 117 #define MXC_R_TPU_CRC_PRNG ((uint32_t)0x00000048UL) /**< Offset from TPU Base Address: <tt> 0x0048</tt> */ 118 #define MXC_R_TPU_HAM_ECC ((uint32_t)0x0000004CUL) /**< Offset from TPU Base Address: <tt> 0x004C</tt> */ 119 #define MXC_R_TPU_CIPHER_INIT ((uint32_t)0x00000050UL) /**< Offset from TPU Base Address: <tt> 0x0050</tt> */ 120 #define MXC_R_TPU_CIPHER_KEY ((uint32_t)0x00000060UL) /**< Offset from TPU Base Address: <tt> 0x0060</tt> */ 121 #define MXC_R_TPU_HASH_DIGEST ((uint32_t)0x00000080UL) /**< Offset from TPU Base Address: <tt> 0x0080</tt> */ 122 #define MXC_R_TPU_HASH_MSG_SZ ((uint32_t)0x000000C0UL) /**< Offset from TPU Base Address: <tt> 0x00C0</tt> */ 123 #define MXC_R_TPU_MAA_MAWS ((uint32_t)0x000000D0UL) /**< Offset from TPU Base Address: <tt> 0x00D0</tt> */ 124 /**@} end of group tpu_registers */ 125 126 /** 127 * @ingroup tpu_registers 128 * @defgroup TPU_CRYPTO_CTRL TPU_CRYPTO_CTRL 129 * @brief Crypto Control Register. 130 * @{ 131 */ 132 #define MXC_F_TPU_CRYPTO_CTRL_RST_POS 0 /**< CRYPTO_CTRL_RST Position */ 133 #define MXC_F_TPU_CRYPTO_CTRL_RST ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_RST_POS)) /**< CRYPTO_CTRL_RST Mask */ 134 #define MXC_V_TPU_CRYPTO_CTRL_RST_RESET ((uint32_t)0x1UL) /**< CRYPTO_CTRL_RST_RESET Value */ 135 #define MXC_S_TPU_CRYPTO_CTRL_RST_RESET (MXC_V_TPU_CRYPTO_CTRL_RST_RESET << MXC_F_TPU_CRYPTO_CTRL_RST_POS) /**< CRYPTO_CTRL_RST_RESET Setting */ 136 #define MXC_V_TPU_CRYPTO_CTRL_RST_RESET_DONE ((uint32_t)0x0UL) /**< CRYPTO_CTRL_RST_RESET_DONE Value */ 137 #define MXC_S_TPU_CRYPTO_CTRL_RST_RESET_DONE (MXC_V_TPU_CRYPTO_CTRL_RST_RESET_DONE << MXC_F_TPU_CRYPTO_CTRL_RST_POS) /**< CRYPTO_CTRL_RST_RESET_DONE Setting */ 138 #define MXC_V_TPU_CRYPTO_CTRL_RST_BUSY ((uint32_t)0x1UL) /**< CRYPTO_CTRL_RST_BUSY Value */ 139 #define MXC_S_TPU_CRYPTO_CTRL_RST_BUSY (MXC_V_TPU_CRYPTO_CTRL_RST_BUSY << MXC_F_TPU_CRYPTO_CTRL_RST_POS) /**< CRYPTO_CTRL_RST_BUSY Setting */ 140 141 #define MXC_F_TPU_CRYPTO_CTRL_INT_POS 1 /**< CRYPTO_CTRL_INT Position */ 142 #define MXC_F_TPU_CRYPTO_CTRL_INT ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_INT_POS)) /**< CRYPTO_CTRL_INT Mask */ 143 #define MXC_V_TPU_CRYPTO_CTRL_INT_DIS ((uint32_t)0x0UL) /**< CRYPTO_CTRL_INT_DIS Value */ 144 #define MXC_S_TPU_CRYPTO_CTRL_INT_DIS (MXC_V_TPU_CRYPTO_CTRL_INT_DIS << MXC_F_TPU_CRYPTO_CTRL_INT_POS) /**< CRYPTO_CTRL_INT_DIS Setting */ 145 #define MXC_V_TPU_CRYPTO_CTRL_INT_EN ((uint32_t)0x1UL) /**< CRYPTO_CTRL_INT_EN Value */ 146 #define MXC_S_TPU_CRYPTO_CTRL_INT_EN (MXC_V_TPU_CRYPTO_CTRL_INT_EN << MXC_F_TPU_CRYPTO_CTRL_INT_POS) /**< CRYPTO_CTRL_INT_EN Setting */ 147 148 #define MXC_F_TPU_CRYPTO_CTRL_SRC_POS 2 /**< CRYPTO_CTRL_SRC Position */ 149 #define MXC_F_TPU_CRYPTO_CTRL_SRC ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_SRC_POS)) /**< CRYPTO_CTRL_SRC Mask */ 150 #define MXC_V_TPU_CRYPTO_CTRL_SRC_INPUTFIFO ((uint32_t)0x0UL) /**< CRYPTO_CTRL_SRC_INPUTFIFO Value */ 151 #define MXC_S_TPU_CRYPTO_CTRL_SRC_INPUTFIFO (MXC_V_TPU_CRYPTO_CTRL_SRC_INPUTFIFO << MXC_F_TPU_CRYPTO_CTRL_SRC_POS) /**< CRYPTO_CTRL_SRC_INPUTFIFO Setting */ 152 #define MXC_V_TPU_CRYPTO_CTRL_SRC_OUTPUTFIFO ((uint32_t)0x1UL) /**< CRYPTO_CTRL_SRC_OUTPUTFIFO Value */ 153 #define MXC_S_TPU_CRYPTO_CTRL_SRC_OUTPUTFIFO (MXC_V_TPU_CRYPTO_CTRL_SRC_OUTPUTFIFO << MXC_F_TPU_CRYPTO_CTRL_SRC_POS) /**< CRYPTO_CTRL_SRC_OUTPUTFIFO Setting */ 154 155 #define MXC_F_TPU_CRYPTO_CTRL_BSO_POS 4 /**< CRYPTO_CTRL_BSO Position */ 156 #define MXC_F_TPU_CRYPTO_CTRL_BSO ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_BSO_POS)) /**< CRYPTO_CTRL_BSO Mask */ 157 #define MXC_V_TPU_CRYPTO_CTRL_BSO_DIS ((uint32_t)0x0UL) /**< CRYPTO_CTRL_BSO_DIS Value */ 158 #define MXC_S_TPU_CRYPTO_CTRL_BSO_DIS (MXC_V_TPU_CRYPTO_CTRL_BSO_DIS << MXC_F_TPU_CRYPTO_CTRL_BSO_POS) /**< CRYPTO_CTRL_BSO_DIS Setting */ 159 #define MXC_V_TPU_CRYPTO_CTRL_BSO_EN ((uint32_t)0x1UL) /**< CRYPTO_CTRL_BSO_EN Value */ 160 #define MXC_S_TPU_CRYPTO_CTRL_BSO_EN (MXC_V_TPU_CRYPTO_CTRL_BSO_EN << MXC_F_TPU_CRYPTO_CTRL_BSO_POS) /**< CRYPTO_CTRL_BSO_EN Setting */ 161 162 #define MXC_F_TPU_CRYPTO_CTRL_BSI_POS 5 /**< CRYPTO_CTRL_BSI Position */ 163 #define MXC_F_TPU_CRYPTO_CTRL_BSI ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_BSI_POS)) /**< CRYPTO_CTRL_BSI Mask */ 164 #define MXC_V_TPU_CRYPTO_CTRL_BSI_DIS ((uint32_t)0x0UL) /**< CRYPTO_CTRL_BSI_DIS Value */ 165 #define MXC_S_TPU_CRYPTO_CTRL_BSI_DIS (MXC_V_TPU_CRYPTO_CTRL_BSI_DIS << MXC_F_TPU_CRYPTO_CTRL_BSI_POS) /**< CRYPTO_CTRL_BSI_DIS Setting */ 166 #define MXC_V_TPU_CRYPTO_CTRL_BSI_EN ((uint32_t)0x1UL) /**< CRYPTO_CTRL_BSI_EN Value */ 167 #define MXC_S_TPU_CRYPTO_CTRL_BSI_EN (MXC_V_TPU_CRYPTO_CTRL_BSI_EN << MXC_F_TPU_CRYPTO_CTRL_BSI_POS) /**< CRYPTO_CTRL_BSI_EN Setting */ 168 169 #define MXC_F_TPU_CRYPTO_CTRL_WAIT_EN_POS 6 /**< CRYPTO_CTRL_WAIT_EN Position */ 170 #define MXC_F_TPU_CRYPTO_CTRL_WAIT_EN ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_WAIT_EN_POS)) /**< CRYPTO_CTRL_WAIT_EN Mask */ 171 #define MXC_V_TPU_CRYPTO_CTRL_WAIT_EN_DIS ((uint32_t)0x0UL) /**< CRYPTO_CTRL_WAIT_EN_DIS Value */ 172 #define MXC_S_TPU_CRYPTO_CTRL_WAIT_EN_DIS (MXC_V_TPU_CRYPTO_CTRL_WAIT_EN_DIS << MXC_F_TPU_CRYPTO_CTRL_WAIT_EN_POS) /**< CRYPTO_CTRL_WAIT_EN_DIS Setting */ 173 #define MXC_V_TPU_CRYPTO_CTRL_WAIT_EN_EN ((uint32_t)0x1UL) /**< CRYPTO_CTRL_WAIT_EN_EN Value */ 174 #define MXC_S_TPU_CRYPTO_CTRL_WAIT_EN_EN (MXC_V_TPU_CRYPTO_CTRL_WAIT_EN_EN << MXC_F_TPU_CRYPTO_CTRL_WAIT_EN_POS) /**< CRYPTO_CTRL_WAIT_EN_EN Setting */ 175 176 #define MXC_F_TPU_CRYPTO_CTRL_WAIT_POL_POS 7 /**< CRYPTO_CTRL_WAIT_POL Position */ 177 #define MXC_F_TPU_CRYPTO_CTRL_WAIT_POL ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_WAIT_POL_POS)) /**< CRYPTO_CTRL_WAIT_POL Mask */ 178 #define MXC_V_TPU_CRYPTO_CTRL_WAIT_POL_ACTIVELO ((uint32_t)0x0UL) /**< CRYPTO_CTRL_WAIT_POL_ACTIVELO Value */ 179 #define MXC_S_TPU_CRYPTO_CTRL_WAIT_POL_ACTIVELO (MXC_V_TPU_CRYPTO_CTRL_WAIT_POL_ACTIVELO << MXC_F_TPU_CRYPTO_CTRL_WAIT_POL_POS) /**< CRYPTO_CTRL_WAIT_POL_ACTIVELO Setting */ 180 #define MXC_V_TPU_CRYPTO_CTRL_WAIT_POL_ACTIVEHI ((uint32_t)0x1UL) /**< CRYPTO_CTRL_WAIT_POL_ACTIVEHI Value */ 181 #define MXC_S_TPU_CRYPTO_CTRL_WAIT_POL_ACTIVEHI (MXC_V_TPU_CRYPTO_CTRL_WAIT_POL_ACTIVEHI << MXC_F_TPU_CRYPTO_CTRL_WAIT_POL_POS) /**< CRYPTO_CTRL_WAIT_POL_ACTIVEHI Setting */ 182 183 #define MXC_F_TPU_CRYPTO_CTRL_WRSRC_POS 8 /**< CRYPTO_CTRL_WRSRC Position */ 184 #define MXC_F_TPU_CRYPTO_CTRL_WRSRC ((uint32_t)(0x3UL << MXC_F_TPU_CRYPTO_CTRL_WRSRC_POS)) /**< CRYPTO_CTRL_WRSRC Mask */ 185 #define MXC_V_TPU_CRYPTO_CTRL_WRSRC_NONE ((uint32_t)0x0UL) /**< CRYPTO_CTRL_WRSRC_NONE Value */ 186 #define MXC_S_TPU_CRYPTO_CTRL_WRSRC_NONE (MXC_V_TPU_CRYPTO_CTRL_WRSRC_NONE << MXC_F_TPU_CRYPTO_CTRL_WRSRC_POS) /**< CRYPTO_CTRL_WRSRC_NONE Setting */ 187 #define MXC_V_TPU_CRYPTO_CTRL_WRSRC_CIPHEROUTPUT ((uint32_t)0x1UL) /**< CRYPTO_CTRL_WRSRC_CIPHEROUTPUT Value */ 188 #define MXC_S_TPU_CRYPTO_CTRL_WRSRC_CIPHEROUTPUT (MXC_V_TPU_CRYPTO_CTRL_WRSRC_CIPHEROUTPUT << MXC_F_TPU_CRYPTO_CTRL_WRSRC_POS) /**< CRYPTO_CTRL_WRSRC_CIPHEROUTPUT Setting */ 189 #define MXC_V_TPU_CRYPTO_CTRL_WRSRC_READFIFO ((uint32_t)0x2UL) /**< CRYPTO_CTRL_WRSRC_READFIFO Value */ 190 #define MXC_S_TPU_CRYPTO_CTRL_WRSRC_READFIFO (MXC_V_TPU_CRYPTO_CTRL_WRSRC_READFIFO << MXC_F_TPU_CRYPTO_CTRL_WRSRC_POS) /**< CRYPTO_CTRL_WRSRC_READFIFO Setting */ 191 192 #define MXC_F_TPU_CRYPTO_CTRL_RDSRC_POS 10 /**< CRYPTO_CTRL_RDSRC Position */ 193 #define MXC_F_TPU_CRYPTO_CTRL_RDSRC ((uint32_t)(0x3UL << MXC_F_TPU_CRYPTO_CTRL_RDSRC_POS)) /**< CRYPTO_CTRL_RDSRC Mask */ 194 #define MXC_V_TPU_CRYPTO_CTRL_RDSRC_DMADISABLED ((uint32_t)0x0UL) /**< CRYPTO_CTRL_RDSRC_DMADISABLED Value */ 195 #define MXC_S_TPU_CRYPTO_CTRL_RDSRC_DMADISABLED (MXC_V_TPU_CRYPTO_CTRL_RDSRC_DMADISABLED << MXC_F_TPU_CRYPTO_CTRL_RDSRC_POS) /**< CRYPTO_CTRL_RDSRC_DMADISABLED Setting */ 196 #define MXC_V_TPU_CRYPTO_CTRL_RDSRC_DMAORAPB ((uint32_t)0x1UL) /**< CRYPTO_CTRL_RDSRC_DMAORAPB Value */ 197 #define MXC_S_TPU_CRYPTO_CTRL_RDSRC_DMAORAPB (MXC_V_TPU_CRYPTO_CTRL_RDSRC_DMAORAPB << MXC_F_TPU_CRYPTO_CTRL_RDSRC_POS) /**< CRYPTO_CTRL_RDSRC_DMAORAPB Setting */ 198 #define MXC_V_TPU_CRYPTO_CTRL_RDSRC_RNG ((uint32_t)0x2UL) /**< CRYPTO_CTRL_RDSRC_RNG Value */ 199 #define MXC_S_TPU_CRYPTO_CTRL_RDSRC_RNG (MXC_V_TPU_CRYPTO_CTRL_RDSRC_RNG << MXC_F_TPU_CRYPTO_CTRL_RDSRC_POS) /**< CRYPTO_CTRL_RDSRC_RNG Setting */ 200 201 #define MXC_F_TPU_CRYPTO_CTRL_FLAG_MODE_POS 14 /**< CRYPTO_CTRL_FLAG_MODE Position */ 202 #define MXC_F_TPU_CRYPTO_CTRL_FLAG_MODE ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_FLAG_MODE_POS)) /**< CRYPTO_CTRL_FLAG_MODE Mask */ 203 #define MXC_V_TPU_CRYPTO_CTRL_FLAG_MODE_UNRES_WR ((uint32_t)0x0UL) /**< CRYPTO_CTRL_FLAG_MODE_UNRES_WR Value */ 204 #define MXC_S_TPU_CRYPTO_CTRL_FLAG_MODE_UNRES_WR (MXC_V_TPU_CRYPTO_CTRL_FLAG_MODE_UNRES_WR << MXC_F_TPU_CRYPTO_CTRL_FLAG_MODE_POS) /**< CRYPTO_CTRL_FLAG_MODE_UNRES_WR Setting */ 205 #define MXC_V_TPU_CRYPTO_CTRL_FLAG_MODE_RES_WR ((uint32_t)0x1UL) /**< CRYPTO_CTRL_FLAG_MODE_RES_WR Value */ 206 #define MXC_S_TPU_CRYPTO_CTRL_FLAG_MODE_RES_WR (MXC_V_TPU_CRYPTO_CTRL_FLAG_MODE_RES_WR << MXC_F_TPU_CRYPTO_CTRL_FLAG_MODE_POS) /**< CRYPTO_CTRL_FLAG_MODE_RES_WR Setting */ 207 208 #define MXC_F_TPU_CRYPTO_CTRL_DMADNEMSK_POS 15 /**< CRYPTO_CTRL_DMADNEMSK Position */ 209 #define MXC_F_TPU_CRYPTO_CTRL_DMADNEMSK ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_DMADNEMSK_POS)) /**< CRYPTO_CTRL_DMADNEMSK Mask */ 210 #define MXC_V_TPU_CRYPTO_CTRL_DMADNEMSK_NOT_USED ((uint32_t)0x0UL) /**< CRYPTO_CTRL_DMADNEMSK_NOT_USED Value */ 211 #define MXC_S_TPU_CRYPTO_CTRL_DMADNEMSK_NOT_USED (MXC_V_TPU_CRYPTO_CTRL_DMADNEMSK_NOT_USED << MXC_F_TPU_CRYPTO_CTRL_DMADNEMSK_POS) /**< CRYPTO_CTRL_DMADNEMSK_NOT_USED Setting */ 212 #define MXC_V_TPU_CRYPTO_CTRL_DMADNEMSK_USED ((uint32_t)0x1UL) /**< CRYPTO_CTRL_DMADNEMSK_USED Value */ 213 #define MXC_S_TPU_CRYPTO_CTRL_DMADNEMSK_USED (MXC_V_TPU_CRYPTO_CTRL_DMADNEMSK_USED << MXC_F_TPU_CRYPTO_CTRL_DMADNEMSK_POS) /**< CRYPTO_CTRL_DMADNEMSK_USED Setting */ 214 215 #define MXC_F_TPU_CRYPTO_CTRL_DMA_DONE_POS 24 /**< CRYPTO_CTRL_DMA_DONE Position */ 216 #define MXC_F_TPU_CRYPTO_CTRL_DMA_DONE ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_DMA_DONE_POS)) /**< CRYPTO_CTRL_DMA_DONE Mask */ 217 #define MXC_V_TPU_CRYPTO_CTRL_DMA_DONE_NOTDONE ((uint32_t)0x0UL) /**< CRYPTO_CTRL_DMA_DONE_NOTDONE Value */ 218 #define MXC_S_TPU_CRYPTO_CTRL_DMA_DONE_NOTDONE (MXC_V_TPU_CRYPTO_CTRL_DMA_DONE_NOTDONE << MXC_F_TPU_CRYPTO_CTRL_DMA_DONE_POS) /**< CRYPTO_CTRL_DMA_DONE_NOTDONE Setting */ 219 #define MXC_V_TPU_CRYPTO_CTRL_DMA_DONE_DONE ((uint32_t)0x1UL) /**< CRYPTO_CTRL_DMA_DONE_DONE Value */ 220 #define MXC_S_TPU_CRYPTO_CTRL_DMA_DONE_DONE (MXC_V_TPU_CRYPTO_CTRL_DMA_DONE_DONE << MXC_F_TPU_CRYPTO_CTRL_DMA_DONE_POS) /**< CRYPTO_CTRL_DMA_DONE_DONE Setting */ 221 222 #define MXC_F_TPU_CRYPTO_CTRL_GLS_DONE_POS 25 /**< CRYPTO_CTRL_GLS_DONE Position */ 223 #define MXC_F_TPU_CRYPTO_CTRL_GLS_DONE ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_GLS_DONE_POS)) /**< CRYPTO_CTRL_GLS_DONE Mask */ 224 #define MXC_V_TPU_CRYPTO_CTRL_GLS_DONE_NOTDONE ((uint32_t)0x0UL) /**< CRYPTO_CTRL_GLS_DONE_NOTDONE Value */ 225 #define MXC_S_TPU_CRYPTO_CTRL_GLS_DONE_NOTDONE (MXC_V_TPU_CRYPTO_CTRL_GLS_DONE_NOTDONE << MXC_F_TPU_CRYPTO_CTRL_GLS_DONE_POS) /**< CRYPTO_CTRL_GLS_DONE_NOTDONE Setting */ 226 #define MXC_V_TPU_CRYPTO_CTRL_GLS_DONE_DONE ((uint32_t)0x1UL) /**< CRYPTO_CTRL_GLS_DONE_DONE Value */ 227 #define MXC_S_TPU_CRYPTO_CTRL_GLS_DONE_DONE (MXC_V_TPU_CRYPTO_CTRL_GLS_DONE_DONE << MXC_F_TPU_CRYPTO_CTRL_GLS_DONE_POS) /**< CRYPTO_CTRL_GLS_DONE_DONE Setting */ 228 229 #define MXC_F_TPU_CRYPTO_CTRL_HSH_DONE_POS 26 /**< CRYPTO_CTRL_HSH_DONE Position */ 230 #define MXC_F_TPU_CRYPTO_CTRL_HSH_DONE ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_HSH_DONE_POS)) /**< CRYPTO_CTRL_HSH_DONE Mask */ 231 #define MXC_V_TPU_CRYPTO_CTRL_HSH_DONE_NOTDONE ((uint32_t)0x0UL) /**< CRYPTO_CTRL_HSH_DONE_NOTDONE Value */ 232 #define MXC_S_TPU_CRYPTO_CTRL_HSH_DONE_NOTDONE (MXC_V_TPU_CRYPTO_CTRL_HSH_DONE_NOTDONE << MXC_F_TPU_CRYPTO_CTRL_HSH_DONE_POS) /**< CRYPTO_CTRL_HSH_DONE_NOTDONE Setting */ 233 #define MXC_V_TPU_CRYPTO_CTRL_HSH_DONE_DONE ((uint32_t)0x1UL) /**< CRYPTO_CTRL_HSH_DONE_DONE Value */ 234 #define MXC_S_TPU_CRYPTO_CTRL_HSH_DONE_DONE (MXC_V_TPU_CRYPTO_CTRL_HSH_DONE_DONE << MXC_F_TPU_CRYPTO_CTRL_HSH_DONE_POS) /**< CRYPTO_CTRL_HSH_DONE_DONE Setting */ 235 236 #define MXC_F_TPU_CRYPTO_CTRL_CPH_DONE_POS 27 /**< CRYPTO_CTRL_CPH_DONE Position */ 237 #define MXC_F_TPU_CRYPTO_CTRL_CPH_DONE ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_CPH_DONE_POS)) /**< CRYPTO_CTRL_CPH_DONE Mask */ 238 #define MXC_V_TPU_CRYPTO_CTRL_CPH_DONE_NOTDONE ((uint32_t)0x0UL) /**< CRYPTO_CTRL_CPH_DONE_NOTDONE Value */ 239 #define MXC_S_TPU_CRYPTO_CTRL_CPH_DONE_NOTDONE (MXC_V_TPU_CRYPTO_CTRL_CPH_DONE_NOTDONE << MXC_F_TPU_CRYPTO_CTRL_CPH_DONE_POS) /**< CRYPTO_CTRL_CPH_DONE_NOTDONE Setting */ 240 #define MXC_V_TPU_CRYPTO_CTRL_CPH_DONE_DONE ((uint32_t)0x1UL) /**< CRYPTO_CTRL_CPH_DONE_DONE Value */ 241 #define MXC_S_TPU_CRYPTO_CTRL_CPH_DONE_DONE (MXC_V_TPU_CRYPTO_CTRL_CPH_DONE_DONE << MXC_F_TPU_CRYPTO_CTRL_CPH_DONE_POS) /**< CRYPTO_CTRL_CPH_DONE_DONE Setting */ 242 243 #define MXC_F_TPU_CRYPTO_CTRL_MAA_DONE_POS 28 /**< CRYPTO_CTRL_MAA_DONE Position */ 244 #define MXC_F_TPU_CRYPTO_CTRL_MAA_DONE ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_MAA_DONE_POS)) /**< CRYPTO_CTRL_MAA_DONE Mask */ 245 #define MXC_V_TPU_CRYPTO_CTRL_MAA_DONE_NOTDONE ((uint32_t)0x0UL) /**< CRYPTO_CTRL_MAA_DONE_NOTDONE Value */ 246 #define MXC_S_TPU_CRYPTO_CTRL_MAA_DONE_NOTDONE (MXC_V_TPU_CRYPTO_CTRL_MAA_DONE_NOTDONE << MXC_F_TPU_CRYPTO_CTRL_MAA_DONE_POS) /**< CRYPTO_CTRL_MAA_DONE_NOTDONE Setting */ 247 #define MXC_V_TPU_CRYPTO_CTRL_MAA_DONE_DONE ((uint32_t)0x1UL) /**< CRYPTO_CTRL_MAA_DONE_DONE Value */ 248 #define MXC_S_TPU_CRYPTO_CTRL_MAA_DONE_DONE (MXC_V_TPU_CRYPTO_CTRL_MAA_DONE_DONE << MXC_F_TPU_CRYPTO_CTRL_MAA_DONE_POS) /**< CRYPTO_CTRL_MAA_DONE_DONE Setting */ 249 250 #define MXC_F_TPU_CRYPTO_CTRL_ERR_POS 29 /**< CRYPTO_CTRL_ERR Position */ 251 #define MXC_F_TPU_CRYPTO_CTRL_ERR ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_ERR_POS)) /**< CRYPTO_CTRL_ERR Mask */ 252 #define MXC_V_TPU_CRYPTO_CTRL_ERR_NOERROR ((uint32_t)0x0UL) /**< CRYPTO_CTRL_ERR_NOERROR Value */ 253 #define MXC_S_TPU_CRYPTO_CTRL_ERR_NOERROR (MXC_V_TPU_CRYPTO_CTRL_ERR_NOERROR << MXC_F_TPU_CRYPTO_CTRL_ERR_POS) /**< CRYPTO_CTRL_ERR_NOERROR Setting */ 254 #define MXC_V_TPU_CRYPTO_CTRL_ERR_ERROR ((uint32_t)0x1UL) /**< CRYPTO_CTRL_ERR_ERROR Value */ 255 #define MXC_S_TPU_CRYPTO_CTRL_ERR_ERROR (MXC_V_TPU_CRYPTO_CTRL_ERR_ERROR << MXC_F_TPU_CRYPTO_CTRL_ERR_POS) /**< CRYPTO_CTRL_ERR_ERROR Setting */ 256 257 #define MXC_F_TPU_CRYPTO_CTRL_RDY_POS 30 /**< CRYPTO_CTRL_RDY Position */ 258 #define MXC_F_TPU_CRYPTO_CTRL_RDY ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_RDY_POS)) /**< CRYPTO_CTRL_RDY Mask */ 259 #define MXC_V_TPU_CRYPTO_CTRL_RDY_BUSY ((uint32_t)0x0UL) /**< CRYPTO_CTRL_RDY_BUSY Value */ 260 #define MXC_S_TPU_CRYPTO_CTRL_RDY_BUSY (MXC_V_TPU_CRYPTO_CTRL_RDY_BUSY << MXC_F_TPU_CRYPTO_CTRL_RDY_POS) /**< CRYPTO_CTRL_RDY_BUSY Setting */ 261 #define MXC_V_TPU_CRYPTO_CTRL_RDY_READY ((uint32_t)0x1UL) /**< CRYPTO_CTRL_RDY_READY Value */ 262 #define MXC_S_TPU_CRYPTO_CTRL_RDY_READY (MXC_V_TPU_CRYPTO_CTRL_RDY_READY << MXC_F_TPU_CRYPTO_CTRL_RDY_POS) /**< CRYPTO_CTRL_RDY_READY Setting */ 263 264 #define MXC_F_TPU_CRYPTO_CTRL_DONE_POS 31 /**< CRYPTO_CTRL_DONE Position */ 265 #define MXC_F_TPU_CRYPTO_CTRL_DONE ((uint32_t)(0x1UL << MXC_F_TPU_CRYPTO_CTRL_DONE_POS)) /**< CRYPTO_CTRL_DONE Mask */ 266 #define MXC_V_TPU_CRYPTO_CTRL_DONE_NOTDONE ((uint32_t)0x0UL) /**< CRYPTO_CTRL_DONE_NOTDONE Value */ 267 #define MXC_S_TPU_CRYPTO_CTRL_DONE_NOTDONE (MXC_V_TPU_CRYPTO_CTRL_DONE_NOTDONE << MXC_F_TPU_CRYPTO_CTRL_DONE_POS) /**< CRYPTO_CTRL_DONE_NOTDONE Setting */ 268 #define MXC_V_TPU_CRYPTO_CTRL_DONE_DONE ((uint32_t)0x1UL) /**< CRYPTO_CTRL_DONE_DONE Value */ 269 #define MXC_S_TPU_CRYPTO_CTRL_DONE_DONE (MXC_V_TPU_CRYPTO_CTRL_DONE_DONE << MXC_F_TPU_CRYPTO_CTRL_DONE_POS) /**< CRYPTO_CTRL_DONE_DONE Setting */ 270 271 /**@} end of group TPU_CRYPTO_CTRL_Register */ 272 273 /** 274 * @ingroup tpu_registers 275 * @defgroup TPU_CIPHER_CTRL TPU_CIPHER_CTRL 276 * @brief Cipher Control Register. 277 * @{ 278 */ 279 #define MXC_F_TPU_CIPHER_CTRL_ENC_POS 0 /**< CIPHER_CTRL_ENC Position */ 280 #define MXC_F_TPU_CIPHER_CTRL_ENC ((uint32_t)(0x1UL << MXC_F_TPU_CIPHER_CTRL_ENC_POS)) /**< CIPHER_CTRL_ENC Mask */ 281 #define MXC_V_TPU_CIPHER_CTRL_ENC_ENCRYPT ((uint32_t)0x0UL) /**< CIPHER_CTRL_ENC_ENCRYPT Value */ 282 #define MXC_S_TPU_CIPHER_CTRL_ENC_ENCRYPT (MXC_V_TPU_CIPHER_CTRL_ENC_ENCRYPT << MXC_F_TPU_CIPHER_CTRL_ENC_POS) /**< CIPHER_CTRL_ENC_ENCRYPT Setting */ 283 #define MXC_V_TPU_CIPHER_CTRL_ENC_DECRYPT ((uint32_t)0x1UL) /**< CIPHER_CTRL_ENC_DECRYPT Value */ 284 #define MXC_S_TPU_CIPHER_CTRL_ENC_DECRYPT (MXC_V_TPU_CIPHER_CTRL_ENC_DECRYPT << MXC_F_TPU_CIPHER_CTRL_ENC_POS) /**< CIPHER_CTRL_ENC_DECRYPT Setting */ 285 286 #define MXC_F_TPU_CIPHER_CTRL_KEY_POS 1 /**< CIPHER_CTRL_KEY Position */ 287 #define MXC_F_TPU_CIPHER_CTRL_KEY ((uint32_t)(0x1UL << MXC_F_TPU_CIPHER_CTRL_KEY_POS)) /**< CIPHER_CTRL_KEY Mask */ 288 #define MXC_V_TPU_CIPHER_CTRL_KEY_COMPLETE ((uint32_t)0x0UL) /**< CIPHER_CTRL_KEY_COMPLETE Value */ 289 #define MXC_S_TPU_CIPHER_CTRL_KEY_COMPLETE (MXC_V_TPU_CIPHER_CTRL_KEY_COMPLETE << MXC_F_TPU_CIPHER_CTRL_KEY_POS) /**< CIPHER_CTRL_KEY_COMPLETE Setting */ 290 #define MXC_V_TPU_CIPHER_CTRL_KEY_START ((uint32_t)0x1UL) /**< CIPHER_CTRL_KEY_START Value */ 291 #define MXC_S_TPU_CIPHER_CTRL_KEY_START (MXC_V_TPU_CIPHER_CTRL_KEY_START << MXC_F_TPU_CIPHER_CTRL_KEY_POS) /**< CIPHER_CTRL_KEY_START Setting */ 292 293 #define MXC_F_TPU_CIPHER_CTRL_SRC_POS 2 /**< CIPHER_CTRL_SRC Position */ 294 #define MXC_F_TPU_CIPHER_CTRL_SRC ((uint32_t)(0x3UL << MXC_F_TPU_CIPHER_CTRL_SRC_POS)) /**< CIPHER_CTRL_SRC Mask */ 295 #define MXC_V_TPU_CIPHER_CTRL_SRC_CIPHERKEY ((uint32_t)0x0UL) /**< CIPHER_CTRL_SRC_CIPHERKEY Value */ 296 #define MXC_S_TPU_CIPHER_CTRL_SRC_CIPHERKEY (MXC_V_TPU_CIPHER_CTRL_SRC_CIPHERKEY << MXC_F_TPU_CIPHER_CTRL_SRC_POS) /**< CIPHER_CTRL_SRC_CIPHERKEY Setting */ 297 #define MXC_V_TPU_CIPHER_CTRL_SRC_REGFILE ((uint32_t)0x2UL) /**< CIPHER_CTRL_SRC_REGFILE Value */ 298 #define MXC_S_TPU_CIPHER_CTRL_SRC_REGFILE (MXC_V_TPU_CIPHER_CTRL_SRC_REGFILE << MXC_F_TPU_CIPHER_CTRL_SRC_POS) /**< CIPHER_CTRL_SRC_REGFILE Setting */ 299 #define MXC_V_TPU_CIPHER_CTRL_SRC_QSPIKEY_REGFILE ((uint32_t)0x3UL) /**< CIPHER_CTRL_SRC_QSPIKEY_REGFILE Value */ 300 #define MXC_S_TPU_CIPHER_CTRL_SRC_QSPIKEY_REGFILE (MXC_V_TPU_CIPHER_CTRL_SRC_QSPIKEY_REGFILE << MXC_F_TPU_CIPHER_CTRL_SRC_POS) /**< CIPHER_CTRL_SRC_QSPIKEY_REGFILE Setting */ 301 302 #define MXC_F_TPU_CIPHER_CTRL_CIPHER_POS 4 /**< CIPHER_CTRL_CIPHER Position */ 303 #define MXC_F_TPU_CIPHER_CTRL_CIPHER ((uint32_t)(0x7UL << MXC_F_TPU_CIPHER_CTRL_CIPHER_POS)) /**< CIPHER_CTRL_CIPHER Mask */ 304 #define MXC_V_TPU_CIPHER_CTRL_CIPHER_DIS ((uint32_t)0x0UL) /**< CIPHER_CTRL_CIPHER_DIS Value */ 305 #define MXC_S_TPU_CIPHER_CTRL_CIPHER_DIS (MXC_V_TPU_CIPHER_CTRL_CIPHER_DIS << MXC_F_TPU_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_DIS Setting */ 306 #define MXC_V_TPU_CIPHER_CTRL_CIPHER_AES128 ((uint32_t)0x1UL) /**< CIPHER_CTRL_CIPHER_AES128 Value */ 307 #define MXC_S_TPU_CIPHER_CTRL_CIPHER_AES128 (MXC_V_TPU_CIPHER_CTRL_CIPHER_AES128 << MXC_F_TPU_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_AES128 Setting */ 308 #define MXC_V_TPU_CIPHER_CTRL_CIPHER_AES192 ((uint32_t)0x2UL) /**< CIPHER_CTRL_CIPHER_AES192 Value */ 309 #define MXC_S_TPU_CIPHER_CTRL_CIPHER_AES192 (MXC_V_TPU_CIPHER_CTRL_CIPHER_AES192 << MXC_F_TPU_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_AES192 Setting */ 310 #define MXC_V_TPU_CIPHER_CTRL_CIPHER_AES256 ((uint32_t)0x3UL) /**< CIPHER_CTRL_CIPHER_AES256 Value */ 311 #define MXC_S_TPU_CIPHER_CTRL_CIPHER_AES256 (MXC_V_TPU_CIPHER_CTRL_CIPHER_AES256 << MXC_F_TPU_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_AES256 Setting */ 312 #define MXC_V_TPU_CIPHER_CTRL_CIPHER_DES ((uint32_t)0x4UL) /**< CIPHER_CTRL_CIPHER_DES Value */ 313 #define MXC_S_TPU_CIPHER_CTRL_CIPHER_DES (MXC_V_TPU_CIPHER_CTRL_CIPHER_DES << MXC_F_TPU_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_DES Setting */ 314 #define MXC_V_TPU_CIPHER_CTRL_CIPHER_TDEA ((uint32_t)0x5UL) /**< CIPHER_CTRL_CIPHER_TDEA Value */ 315 #define MXC_S_TPU_CIPHER_CTRL_CIPHER_TDEA (MXC_V_TPU_CIPHER_CTRL_CIPHER_TDEA << MXC_F_TPU_CIPHER_CTRL_CIPHER_POS) /**< CIPHER_CTRL_CIPHER_TDEA Setting */ 316 317 #define MXC_F_TPU_CIPHER_CTRL_MODE_POS 8 /**< CIPHER_CTRL_MODE Position */ 318 #define MXC_F_TPU_CIPHER_CTRL_MODE ((uint32_t)(0x7UL << MXC_F_TPU_CIPHER_CTRL_MODE_POS)) /**< CIPHER_CTRL_MODE Mask */ 319 #define MXC_V_TPU_CIPHER_CTRL_MODE_ECB ((uint32_t)0x0UL) /**< CIPHER_CTRL_MODE_ECB Value */ 320 #define MXC_S_TPU_CIPHER_CTRL_MODE_ECB (MXC_V_TPU_CIPHER_CTRL_MODE_ECB << MXC_F_TPU_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_ECB Setting */ 321 #define MXC_V_TPU_CIPHER_CTRL_MODE_CBC ((uint32_t)0x1UL) /**< CIPHER_CTRL_MODE_CBC Value */ 322 #define MXC_S_TPU_CIPHER_CTRL_MODE_CBC (MXC_V_TPU_CIPHER_CTRL_MODE_CBC << MXC_F_TPU_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_CBC Setting */ 323 #define MXC_V_TPU_CIPHER_CTRL_MODE_CFB ((uint32_t)0x2UL) /**< CIPHER_CTRL_MODE_CFB Value */ 324 #define MXC_S_TPU_CIPHER_CTRL_MODE_CFB (MXC_V_TPU_CIPHER_CTRL_MODE_CFB << MXC_F_TPU_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_CFB Setting */ 325 #define MXC_V_TPU_CIPHER_CTRL_MODE_OFB ((uint32_t)0x3UL) /**< CIPHER_CTRL_MODE_OFB Value */ 326 #define MXC_S_TPU_CIPHER_CTRL_MODE_OFB (MXC_V_TPU_CIPHER_CTRL_MODE_OFB << MXC_F_TPU_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_OFB Setting */ 327 #define MXC_V_TPU_CIPHER_CTRL_MODE_CTR ((uint32_t)0x4UL) /**< CIPHER_CTRL_MODE_CTR Value */ 328 #define MXC_S_TPU_CIPHER_CTRL_MODE_CTR (MXC_V_TPU_CIPHER_CTRL_MODE_CTR << MXC_F_TPU_CIPHER_CTRL_MODE_POS) /**< CIPHER_CTRL_MODE_CTR Setting */ 329 330 /**@} end of group TPU_CIPHER_CTRL_Register */ 331 332 /** 333 * @ingroup tpu_registers 334 * @defgroup TPU_HASH_CTRL TPU_HASH_CTRL 335 * @brief HASH Control Register. 336 * @{ 337 */ 338 #define MXC_F_TPU_HASH_CTRL_INIT_POS 0 /**< HASH_CTRL_INIT Position */ 339 #define MXC_F_TPU_HASH_CTRL_INIT ((uint32_t)(0x1UL << MXC_F_TPU_HASH_CTRL_INIT_POS)) /**< HASH_CTRL_INIT Mask */ 340 #define MXC_V_TPU_HASH_CTRL_INIT_NOP ((uint32_t)0x0UL) /**< HASH_CTRL_INIT_NOP Value */ 341 #define MXC_S_TPU_HASH_CTRL_INIT_NOP (MXC_V_TPU_HASH_CTRL_INIT_NOP << MXC_F_TPU_HASH_CTRL_INIT_POS) /**< HASH_CTRL_INIT_NOP Setting */ 342 #define MXC_V_TPU_HASH_CTRL_INIT_START ((uint32_t)0x1UL) /**< HASH_CTRL_INIT_START Value */ 343 #define MXC_S_TPU_HASH_CTRL_INIT_START (MXC_V_TPU_HASH_CTRL_INIT_START << MXC_F_TPU_HASH_CTRL_INIT_POS) /**< HASH_CTRL_INIT_START Setting */ 344 345 #define MXC_F_TPU_HASH_CTRL_XOR_POS 1 /**< HASH_CTRL_XOR Position */ 346 #define MXC_F_TPU_HASH_CTRL_XOR ((uint32_t)(0x1UL << MXC_F_TPU_HASH_CTRL_XOR_POS)) /**< HASH_CTRL_XOR Mask */ 347 #define MXC_V_TPU_HASH_CTRL_XOR_DIS ((uint32_t)0x0UL) /**< HASH_CTRL_XOR_DIS Value */ 348 #define MXC_S_TPU_HASH_CTRL_XOR_DIS (MXC_V_TPU_HASH_CTRL_XOR_DIS << MXC_F_TPU_HASH_CTRL_XOR_POS) /**< HASH_CTRL_XOR_DIS Setting */ 349 #define MXC_V_TPU_HASH_CTRL_XOR_EN ((uint32_t)0x1UL) /**< HASH_CTRL_XOR_EN Value */ 350 #define MXC_S_TPU_HASH_CTRL_XOR_EN (MXC_V_TPU_HASH_CTRL_XOR_EN << MXC_F_TPU_HASH_CTRL_XOR_POS) /**< HASH_CTRL_XOR_EN Setting */ 351 352 #define MXC_F_TPU_HASH_CTRL_HASH_POS 2 /**< HASH_CTRL_HASH Position */ 353 #define MXC_F_TPU_HASH_CTRL_HASH ((uint32_t)(0x7UL << MXC_F_TPU_HASH_CTRL_HASH_POS)) /**< HASH_CTRL_HASH Mask */ 354 #define MXC_V_TPU_HASH_CTRL_HASH_DIS ((uint32_t)0x0UL) /**< HASH_CTRL_HASH_DIS Value */ 355 #define MXC_S_TPU_HASH_CTRL_HASH_DIS (MXC_V_TPU_HASH_CTRL_HASH_DIS << MXC_F_TPU_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_DIS Setting */ 356 #define MXC_V_TPU_HASH_CTRL_HASH_SHA1 ((uint32_t)0x1UL) /**< HASH_CTRL_HASH_SHA1 Value */ 357 #define MXC_S_TPU_HASH_CTRL_HASH_SHA1 (MXC_V_TPU_HASH_CTRL_HASH_SHA1 << MXC_F_TPU_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA1 Setting */ 358 #define MXC_V_TPU_HASH_CTRL_HASH_SHA224 ((uint32_t)0x2UL) /**< HASH_CTRL_HASH_SHA224 Value */ 359 #define MXC_S_TPU_HASH_CTRL_HASH_SHA224 (MXC_V_TPU_HASH_CTRL_HASH_SHA224 << MXC_F_TPU_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA224 Setting */ 360 #define MXC_V_TPU_HASH_CTRL_HASH_SHA256 ((uint32_t)0x3UL) /**< HASH_CTRL_HASH_SHA256 Value */ 361 #define MXC_S_TPU_HASH_CTRL_HASH_SHA256 (MXC_V_TPU_HASH_CTRL_HASH_SHA256 << MXC_F_TPU_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA256 Setting */ 362 #define MXC_V_TPU_HASH_CTRL_HASH_SHA384 ((uint32_t)0x4UL) /**< HASH_CTRL_HASH_SHA384 Value */ 363 #define MXC_S_TPU_HASH_CTRL_HASH_SHA384 (MXC_V_TPU_HASH_CTRL_HASH_SHA384 << MXC_F_TPU_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA384 Setting */ 364 #define MXC_V_TPU_HASH_CTRL_HASH_SHA512 ((uint32_t)0x5UL) /**< HASH_CTRL_HASH_SHA512 Value */ 365 #define MXC_S_TPU_HASH_CTRL_HASH_SHA512 (MXC_V_TPU_HASH_CTRL_HASH_SHA512 << MXC_F_TPU_HASH_CTRL_HASH_POS) /**< HASH_CTRL_HASH_SHA512 Setting */ 366 367 #define MXC_F_TPU_HASH_CTRL_LAST_POS 5 /**< HASH_CTRL_LAST Position */ 368 #define MXC_F_TPU_HASH_CTRL_LAST ((uint32_t)(0x1UL << MXC_F_TPU_HASH_CTRL_LAST_POS)) /**< HASH_CTRL_LAST Mask */ 369 #define MXC_V_TPU_HASH_CTRL_LAST_NOEFFECT ((uint32_t)0x0UL) /**< HASH_CTRL_LAST_NOEFFECT Value */ 370 #define MXC_S_TPU_HASH_CTRL_LAST_NOEFFECT (MXC_V_TPU_HASH_CTRL_LAST_NOEFFECT << MXC_F_TPU_HASH_CTRL_LAST_POS) /**< HASH_CTRL_LAST_NOEFFECT Setting */ 371 #define MXC_V_TPU_HASH_CTRL_LAST_LASTMSGDATA ((uint32_t)0x1UL) /**< HASH_CTRL_LAST_LASTMSGDATA Value */ 372 #define MXC_S_TPU_HASH_CTRL_LAST_LASTMSGDATA (MXC_V_TPU_HASH_CTRL_LAST_LASTMSGDATA << MXC_F_TPU_HASH_CTRL_LAST_POS) /**< HASH_CTRL_LAST_LASTMSGDATA Setting */ 373 374 /**@} end of group TPU_HASH_CTRL_Register */ 375 376 /** 377 * @ingroup tpu_registers 378 * @defgroup TPU_CRC_CTRL TPU_CRC_CTRL 379 * @brief CRC Control Register. 380 * @{ 381 */ 382 #define MXC_F_TPU_CRC_CTRL_CRC_EN_POS 0 /**< CRC_CTRL_CRC_EN Position */ 383 #define MXC_F_TPU_CRC_CTRL_CRC_EN ((uint32_t)(0x1UL << MXC_F_TPU_CRC_CTRL_CRC_EN_POS)) /**< CRC_CTRL_CRC_EN Mask */ 384 #define MXC_V_TPU_CRC_CTRL_CRC_EN_DIS ((uint32_t)0x0UL) /**< CRC_CTRL_CRC_EN_DIS Value */ 385 #define MXC_S_TPU_CRC_CTRL_CRC_EN_DIS (MXC_V_TPU_CRC_CTRL_CRC_EN_DIS << MXC_F_TPU_CRC_CTRL_CRC_EN_POS) /**< CRC_CTRL_CRC_EN_DIS Setting */ 386 #define MXC_V_TPU_CRC_CTRL_CRC_EN_EN ((uint32_t)0x1UL) /**< CRC_CTRL_CRC_EN_EN Value */ 387 #define MXC_S_TPU_CRC_CTRL_CRC_EN_EN (MXC_V_TPU_CRC_CTRL_CRC_EN_EN << MXC_F_TPU_CRC_CTRL_CRC_EN_POS) /**< CRC_CTRL_CRC_EN_EN Setting */ 388 389 #define MXC_F_TPU_CRC_CTRL_MSB_POS 1 /**< CRC_CTRL_MSB Position */ 390 #define MXC_F_TPU_CRC_CTRL_MSB ((uint32_t)(0x1UL << MXC_F_TPU_CRC_CTRL_MSB_POS)) /**< CRC_CTRL_MSB Mask */ 391 #define MXC_V_TPU_CRC_CTRL_MSB_LSBFIRST ((uint32_t)0x0UL) /**< CRC_CTRL_MSB_LSBFIRST Value */ 392 #define MXC_S_TPU_CRC_CTRL_MSB_LSBFIRST (MXC_V_TPU_CRC_CTRL_MSB_LSBFIRST << MXC_F_TPU_CRC_CTRL_MSB_POS) /**< CRC_CTRL_MSB_LSBFIRST Setting */ 393 #define MXC_V_TPU_CRC_CTRL_MSB_MSBFIRST ((uint32_t)0x1UL) /**< CRC_CTRL_MSB_MSBFIRST Value */ 394 #define MXC_S_TPU_CRC_CTRL_MSB_MSBFIRST (MXC_V_TPU_CRC_CTRL_MSB_MSBFIRST << MXC_F_TPU_CRC_CTRL_MSB_POS) /**< CRC_CTRL_MSB_MSBFIRST Setting */ 395 396 #define MXC_F_TPU_CRC_CTRL_PRNG_POS 2 /**< CRC_CTRL_PRNG Position */ 397 #define MXC_F_TPU_CRC_CTRL_PRNG ((uint32_t)(0x1UL << MXC_F_TPU_CRC_CTRL_PRNG_POS)) /**< CRC_CTRL_PRNG Mask */ 398 #define MXC_V_TPU_CRC_CTRL_PRNG_DIS ((uint32_t)0x0UL) /**< CRC_CTRL_PRNG_DIS Value */ 399 #define MXC_S_TPU_CRC_CTRL_PRNG_DIS (MXC_V_TPU_CRC_CTRL_PRNG_DIS << MXC_F_TPU_CRC_CTRL_PRNG_POS) /**< CRC_CTRL_PRNG_DIS Setting */ 400 #define MXC_V_TPU_CRC_CTRL_PRNG_EN ((uint32_t)0x1UL) /**< CRC_CTRL_PRNG_EN Value */ 401 #define MXC_S_TPU_CRC_CTRL_PRNG_EN (MXC_V_TPU_CRC_CTRL_PRNG_EN << MXC_F_TPU_CRC_CTRL_PRNG_POS) /**< CRC_CTRL_PRNG_EN Setting */ 402 403 #define MXC_F_TPU_CRC_CTRL_ENT_POS 3 /**< CRC_CTRL_ENT Position */ 404 #define MXC_F_TPU_CRC_CTRL_ENT ((uint32_t)(0x1UL << MXC_F_TPU_CRC_CTRL_ENT_POS)) /**< CRC_CTRL_ENT Mask */ 405 #define MXC_V_TPU_CRC_CTRL_ENT_DIS ((uint32_t)0x0UL) /**< CRC_CTRL_ENT_DIS Value */ 406 #define MXC_S_TPU_CRC_CTRL_ENT_DIS (MXC_V_TPU_CRC_CTRL_ENT_DIS << MXC_F_TPU_CRC_CTRL_ENT_POS) /**< CRC_CTRL_ENT_DIS Setting */ 407 #define MXC_V_TPU_CRC_CTRL_ENT_EN ((uint32_t)0x1UL) /**< CRC_CTRL_ENT_EN Value */ 408 #define MXC_S_TPU_CRC_CTRL_ENT_EN (MXC_V_TPU_CRC_CTRL_ENT_EN << MXC_F_TPU_CRC_CTRL_ENT_POS) /**< CRC_CTRL_ENT_EN Setting */ 409 410 #define MXC_F_TPU_CRC_CTRL_HAM_POS 4 /**< CRC_CTRL_HAM Position */ 411 #define MXC_F_TPU_CRC_CTRL_HAM ((uint32_t)(0x1UL << MXC_F_TPU_CRC_CTRL_HAM_POS)) /**< CRC_CTRL_HAM Mask */ 412 #define MXC_V_TPU_CRC_CTRL_HAM_DIS ((uint32_t)0x0UL) /**< CRC_CTRL_HAM_DIS Value */ 413 #define MXC_S_TPU_CRC_CTRL_HAM_DIS (MXC_V_TPU_CRC_CTRL_HAM_DIS << MXC_F_TPU_CRC_CTRL_HAM_POS) /**< CRC_CTRL_HAM_DIS Setting */ 414 #define MXC_V_TPU_CRC_CTRL_HAM_EN ((uint32_t)0x1UL) /**< CRC_CTRL_HAM_EN Value */ 415 #define MXC_S_TPU_CRC_CTRL_HAM_EN (MXC_V_TPU_CRC_CTRL_HAM_EN << MXC_F_TPU_CRC_CTRL_HAM_POS) /**< CRC_CTRL_HAM_EN Setting */ 416 417 #define MXC_F_TPU_CRC_CTRL_HRST_POS 5 /**< CRC_CTRL_HRST Position */ 418 #define MXC_F_TPU_CRC_CTRL_HRST ((uint32_t)(0x1UL << MXC_F_TPU_CRC_CTRL_HRST_POS)) /**< CRC_CTRL_HRST Mask */ 419 #define MXC_V_TPU_CRC_CTRL_HRST_RESET ((uint32_t)0x1UL) /**< CRC_CTRL_HRST_RESET Value */ 420 #define MXC_S_TPU_CRC_CTRL_HRST_RESET (MXC_V_TPU_CRC_CTRL_HRST_RESET << MXC_F_TPU_CRC_CTRL_HRST_POS) /**< CRC_CTRL_HRST_RESET Setting */ 421 422 /**@} end of group TPU_CRC_CTRL_Register */ 423 424 /** 425 * @ingroup tpu_registers 426 * @defgroup TPU_DMA_SRC TPU_DMA_SRC 427 * @brief Crypto DMA Source Address. 428 * @{ 429 */ 430 #define MXC_F_TPU_DMA_SRC_ADDR_POS 0 /**< DMA_SRC_ADDR Position */ 431 #define MXC_F_TPU_DMA_SRC_ADDR ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_DMA_SRC_ADDR_POS)) /**< DMA_SRC_ADDR Mask */ 432 433 /**@} end of group TPU_DMA_SRC_Register */ 434 435 /** 436 * @ingroup tpu_registers 437 * @defgroup TPU_DMA_DEST TPU_DMA_DEST 438 * @brief Crypto DMA Destination Address. 439 * @{ 440 */ 441 #define MXC_F_TPU_DMA_DEST_ADDR_POS 0 /**< DMA_DEST_ADDR Position */ 442 #define MXC_F_TPU_DMA_DEST_ADDR ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_DMA_DEST_ADDR_POS)) /**< DMA_DEST_ADDR Mask */ 443 444 /**@} end of group TPU_DMA_DEST_Register */ 445 446 /** 447 * @ingroup tpu_registers 448 * @defgroup TPU_DMA_CNT TPU_DMA_CNT 449 * @brief Crypto DMA Byte Count. 450 * @{ 451 */ 452 #define MXC_F_TPU_DMA_CNT_COUNT_POS 0 /**< DMA_CNT_COUNT Position */ 453 #define MXC_F_TPU_DMA_CNT_COUNT ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_DMA_CNT_COUNT_POS)) /**< DMA_CNT_COUNT Mask */ 454 455 /**@} end of group TPU_DMA_CNT_Register */ 456 457 /** 458 * @ingroup tpu_registers 459 * @defgroup TPU_MAA_CTRL TPU_MAA_CTRL 460 * @brief MAA Control Register. 461 * @{ 462 */ 463 #define MXC_F_TPU_MAA_CTRL_STC_POS 0 /**< MAA_CTRL_STC Position */ 464 #define MXC_F_TPU_MAA_CTRL_STC ((uint32_t)(0x1UL << MXC_F_TPU_MAA_CTRL_STC_POS)) /**< MAA_CTRL_STC Mask */ 465 #define MXC_V_TPU_MAA_CTRL_STC_NOP ((uint32_t)0x0UL) /**< MAA_CTRL_STC_NOP Value */ 466 #define MXC_S_TPU_MAA_CTRL_STC_NOP (MXC_V_TPU_MAA_CTRL_STC_NOP << MXC_F_TPU_MAA_CTRL_STC_POS) /**< MAA_CTRL_STC_NOP Setting */ 467 #define MXC_V_TPU_MAA_CTRL_STC_START ((uint32_t)0x1UL) /**< MAA_CTRL_STC_START Value */ 468 #define MXC_S_TPU_MAA_CTRL_STC_START (MXC_V_TPU_MAA_CTRL_STC_START << MXC_F_TPU_MAA_CTRL_STC_POS) /**< MAA_CTRL_STC_START Setting */ 469 470 #define MXC_F_TPU_MAA_CTRL_CLC_POS 1 /**< MAA_CTRL_CLC Position */ 471 #define MXC_F_TPU_MAA_CTRL_CLC ((uint32_t)(0x7UL << MXC_F_TPU_MAA_CTRL_CLC_POS)) /**< MAA_CTRL_CLC Mask */ 472 #define MXC_V_TPU_MAA_CTRL_CLC_EXP ((uint32_t)0x0UL) /**< MAA_CTRL_CLC_EXP Value */ 473 #define MXC_S_TPU_MAA_CTRL_CLC_EXP (MXC_V_TPU_MAA_CTRL_CLC_EXP << MXC_F_TPU_MAA_CTRL_CLC_POS) /**< MAA_CTRL_CLC_EXP Setting */ 474 #define MXC_V_TPU_MAA_CTRL_CLC_SQ ((uint32_t)0x1UL) /**< MAA_CTRL_CLC_SQ Value */ 475 #define MXC_S_TPU_MAA_CTRL_CLC_SQ (MXC_V_TPU_MAA_CTRL_CLC_SQ << MXC_F_TPU_MAA_CTRL_CLC_POS) /**< MAA_CTRL_CLC_SQ Setting */ 476 #define MXC_V_TPU_MAA_CTRL_CLC_MULT ((uint32_t)0x2UL) /**< MAA_CTRL_CLC_MULT Value */ 477 #define MXC_S_TPU_MAA_CTRL_CLC_MULT (MXC_V_TPU_MAA_CTRL_CLC_MULT << MXC_F_TPU_MAA_CTRL_CLC_POS) /**< MAA_CTRL_CLC_MULT Setting */ 478 #define MXC_V_TPU_MAA_CTRL_CLC_SQ_MULT ((uint32_t)0x3UL) /**< MAA_CTRL_CLC_SQ_MULT Value */ 479 #define MXC_S_TPU_MAA_CTRL_CLC_SQ_MULT (MXC_V_TPU_MAA_CTRL_CLC_SQ_MULT << MXC_F_TPU_MAA_CTRL_CLC_POS) /**< MAA_CTRL_CLC_SQ_MULT Setting */ 480 #define MXC_V_TPU_MAA_CTRL_CLC_ADD ((uint32_t)0x4UL) /**< MAA_CTRL_CLC_ADD Value */ 481 #define MXC_S_TPU_MAA_CTRL_CLC_ADD (MXC_V_TPU_MAA_CTRL_CLC_ADD << MXC_F_TPU_MAA_CTRL_CLC_POS) /**< MAA_CTRL_CLC_ADD Setting */ 482 #define MXC_V_TPU_MAA_CTRL_CLC_SUB ((uint32_t)0x5UL) /**< MAA_CTRL_CLC_SUB Value */ 483 #define MXC_S_TPU_MAA_CTRL_CLC_SUB (MXC_V_TPU_MAA_CTRL_CLC_SUB << MXC_F_TPU_MAA_CTRL_CLC_POS) /**< MAA_CTRL_CLC_SUB Setting */ 484 485 #define MXC_F_TPU_MAA_CTRL_OCALC_POS 4 /**< MAA_CTRL_OCALC Position */ 486 #define MXC_F_TPU_MAA_CTRL_OCALC ((uint32_t)(0x1UL << MXC_F_TPU_MAA_CTRL_OCALC_POS)) /**< MAA_CTRL_OCALC Mask */ 487 #define MXC_V_TPU_MAA_CTRL_OCALC_NONE ((uint32_t)0x0UL) /**< MAA_CTRL_OCALC_NONE Value */ 488 #define MXC_S_TPU_MAA_CTRL_OCALC_NONE (MXC_V_TPU_MAA_CTRL_OCALC_NONE << MXC_F_TPU_MAA_CTRL_OCALC_POS) /**< MAA_CTRL_OCALC_NONE Setting */ 489 #define MXC_V_TPU_MAA_CTRL_OCALC_OPTIMIZE ((uint32_t)0x1UL) /**< MAA_CTRL_OCALC_OPTIMIZE Value */ 490 #define MXC_S_TPU_MAA_CTRL_OCALC_OPTIMIZE (MXC_V_TPU_MAA_CTRL_OCALC_OPTIMIZE << MXC_F_TPU_MAA_CTRL_OCALC_POS) /**< MAA_CTRL_OCALC_OPTIMIZE Setting */ 491 492 #define MXC_F_TPU_MAA_CTRL_MAAER_POS 7 /**< MAA_CTRL_MAAER Position */ 493 #define MXC_F_TPU_MAA_CTRL_MAAER ((uint32_t)(0x1UL << MXC_F_TPU_MAA_CTRL_MAAER_POS)) /**< MAA_CTRL_MAAER Mask */ 494 #define MXC_V_TPU_MAA_CTRL_MAAER_NOERROR ((uint32_t)0x0UL) /**< MAA_CTRL_MAAER_NOERROR Value */ 495 #define MXC_S_TPU_MAA_CTRL_MAAER_NOERROR (MXC_V_TPU_MAA_CTRL_MAAER_NOERROR << MXC_F_TPU_MAA_CTRL_MAAER_POS) /**< MAA_CTRL_MAAER_NOERROR Setting */ 496 #define MXC_V_TPU_MAA_CTRL_MAAER_ERROR ((uint32_t)0x1UL) /**< MAA_CTRL_MAAER_ERROR Value */ 497 #define MXC_S_TPU_MAA_CTRL_MAAER_ERROR (MXC_V_TPU_MAA_CTRL_MAAER_ERROR << MXC_F_TPU_MAA_CTRL_MAAER_POS) /**< MAA_CTRL_MAAER_ERROR Setting */ 498 499 #define MXC_F_TPU_MAA_CTRL_AMS_POS 8 /**< MAA_CTRL_AMS Position */ 500 #define MXC_F_TPU_MAA_CTRL_AMS ((uint32_t)(0x3UL << MXC_F_TPU_MAA_CTRL_AMS_POS)) /**< MAA_CTRL_AMS Mask */ 501 502 #define MXC_F_TPU_MAA_CTRL_BMS_POS 10 /**< MAA_CTRL_BMS Position */ 503 #define MXC_F_TPU_MAA_CTRL_BMS ((uint32_t)(0x3UL << MXC_F_TPU_MAA_CTRL_BMS_POS)) /**< MAA_CTRL_BMS Mask */ 504 505 #define MXC_F_TPU_MAA_CTRL_EMS_POS 12 /**< MAA_CTRL_EMS Position */ 506 #define MXC_F_TPU_MAA_CTRL_EMS ((uint32_t)(0x3UL << MXC_F_TPU_MAA_CTRL_EMS_POS)) /**< MAA_CTRL_EMS Mask */ 507 508 #define MXC_F_TPU_MAA_CTRL_MMS_POS 14 /**< MAA_CTRL_MMS Position */ 509 #define MXC_F_TPU_MAA_CTRL_MMS ((uint32_t)(0x3UL << MXC_F_TPU_MAA_CTRL_MMS_POS)) /**< MAA_CTRL_MMS Mask */ 510 511 #define MXC_F_TPU_MAA_CTRL_AMA_POS 16 /**< MAA_CTRL_AMA Position */ 512 #define MXC_F_TPU_MAA_CTRL_AMA ((uint32_t)(0xFUL << MXC_F_TPU_MAA_CTRL_AMA_POS)) /**< MAA_CTRL_AMA Mask */ 513 514 #define MXC_F_TPU_MAA_CTRL_BMA_POS 20 /**< MAA_CTRL_BMA Position */ 515 #define MXC_F_TPU_MAA_CTRL_BMA ((uint32_t)(0xFUL << MXC_F_TPU_MAA_CTRL_BMA_POS)) /**< MAA_CTRL_BMA Mask */ 516 517 #define MXC_F_TPU_MAA_CTRL_RMA_POS 24 /**< MAA_CTRL_RMA Position */ 518 #define MXC_F_TPU_MAA_CTRL_RMA ((uint32_t)(0xFUL << MXC_F_TPU_MAA_CTRL_RMA_POS)) /**< MAA_CTRL_RMA Mask */ 519 520 #define MXC_F_TPU_MAA_CTRL_TMA_POS 28 /**< MAA_CTRL_TMA Position */ 521 #define MXC_F_TPU_MAA_CTRL_TMA ((uint32_t)(0xFUL << MXC_F_TPU_MAA_CTRL_TMA_POS)) /**< MAA_CTRL_TMA Mask */ 522 523 /**@} end of group TPU_MAA_CTRL_Register */ 524 525 /** 526 * @ingroup tpu_registers 527 * @defgroup TPU_CRYPTO_DIN TPU_CRYPTO_DIN 528 * @brief Crypto Data Input. Data input can be written to this register instead of using 529 * the DMA. This register writes to the FIFO. This register occupies four 530 * successive words to allow the use of multi-store instructions. Words can be 531 * written to any location, they will be placed in the FIFO in the order they are 532 * written. The endian swap input control bit affects this register. 533 * @{ 534 */ 535 #define MXC_F_TPU_CRYPTO_DIN_DATA_POS 0 /**< CRYPTO_DIN_DATA Position */ 536 #define MXC_F_TPU_CRYPTO_DIN_DATA ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_CRYPTO_DIN_DATA_POS)) /**< CRYPTO_DIN_DATA Mask */ 537 538 /**@} end of group TPU_CRYPTO_DIN_Register */ 539 540 /** 541 * @ingroup tpu_registers 542 * @defgroup TPU_CRYPTO_DOUT TPU_CRYPTO_DOUT 543 * @brief Crypto Data Output. Resulting data from cipher calculation. Data is placed in 544 * the lower words of these four registers depending on the algorithm. For block 545 * cipher modes, this register holds the result of most recent encryption or 546 * decryption operation. These registers are affected by the endian swap bits. 547 * @{ 548 */ 549 #define MXC_F_TPU_CRYPTO_DOUT_DATA_POS 0 /**< CRYPTO_DOUT_DATA Position */ 550 #define MXC_F_TPU_CRYPTO_DOUT_DATA ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_CRYPTO_DOUT_DATA_POS)) /**< CRYPTO_DOUT_DATA Mask */ 551 552 /**@} end of group TPU_CRYPTO_DOUT_Register */ 553 554 /** 555 * @ingroup tpu_registers 556 * @defgroup TPU_CRC_POLY TPU_CRC_POLY 557 * @brief CRC Polynomial. The polynomial to be used for Galois Field calculations (CRC or 558 * LFSR) should be written to this register. This register is affected by the MSB 559 * control bit. 560 * @{ 561 */ 562 #define MXC_F_TPU_CRC_POLY_POLY_POS 0 /**< CRC_POLY_POLY Position */ 563 #define MXC_F_TPU_CRC_POLY_POLY ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_CRC_POLY_POLY_POS)) /**< CRC_POLY_POLY Mask */ 564 565 /**@} end of group TPU_CRC_POLY_Register */ 566 567 /** 568 * @ingroup tpu_registers 569 * @defgroup TPU_CRC_VAL TPU_CRC_VAL 570 * @brief CRC Value. This is the state for the Galois Field. This register holds the 571 * result of a CRC calculation or the current state of the LFSR. This register is 572 * affected by the MSB control bit. 573 * @{ 574 */ 575 #define MXC_F_TPU_CRC_VAL_VAL_POS 0 /**< CRC_VAL_VAL Position */ 576 #define MXC_F_TPU_CRC_VAL_VAL ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_CRC_VAL_VAL_POS)) /**< CRC_VAL_VAL Mask */ 577 578 /**@} end of group TPU_CRC_VAL_Register */ 579 580 /** 581 * @ingroup tpu_registers 582 * @defgroup TPU_CRC_PRNG TPU_CRC_PRNG 583 * @brief Pseudo Random Value. Output of the Galois Field shift register. This holds the 584 * resulting pseudo-random number if entropy is disabled or true random number if 585 * entropy is enabled. 586 * @{ 587 */ 588 #define MXC_F_TPU_CRC_PRNG_PRNG_POS 0 /**< CRC_PRNG_PRNG Position */ 589 #define MXC_F_TPU_CRC_PRNG_PRNG ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_CRC_PRNG_PRNG_POS)) /**< CRC_PRNG_PRNG Mask */ 590 591 /**@} end of group TPU_CRC_PRNG_Register */ 592 593 /** 594 * @ingroup tpu_registers 595 * @defgroup TPU_HAM_ECC TPU_HAM_ECC 596 * @brief Hamming ECC Register. 597 * @{ 598 */ 599 #define MXC_F_TPU_HAM_ECC_ECC_POS 0 /**< HAM_ECC_ECC Position */ 600 #define MXC_F_TPU_HAM_ECC_ECC ((uint32_t)(0xFFFFUL << MXC_F_TPU_HAM_ECC_ECC_POS)) /**< HAM_ECC_ECC Mask */ 601 602 #define MXC_F_TPU_HAM_ECC_PAR_POS 16 /**< HAM_ECC_PAR Position */ 603 #define MXC_F_TPU_HAM_ECC_PAR ((uint32_t)(0x1UL << MXC_F_TPU_HAM_ECC_PAR_POS)) /**< HAM_ECC_PAR Mask */ 604 #define MXC_V_TPU_HAM_ECC_PAR_EVEN ((uint32_t)0x0UL) /**< HAM_ECC_PAR_EVEN Value */ 605 #define MXC_S_TPU_HAM_ECC_PAR_EVEN (MXC_V_TPU_HAM_ECC_PAR_EVEN << MXC_F_TPU_HAM_ECC_PAR_POS) /**< HAM_ECC_PAR_EVEN Setting */ 606 #define MXC_V_TPU_HAM_ECC_PAR_ODD ((uint32_t)0x1UL) /**< HAM_ECC_PAR_ODD Value */ 607 #define MXC_S_TPU_HAM_ECC_PAR_ODD (MXC_V_TPU_HAM_ECC_PAR_ODD << MXC_F_TPU_HAM_ECC_PAR_POS) /**< HAM_ECC_PAR_ODD Setting */ 608 609 /**@} end of group TPU_HAM_ECC_Register */ 610 611 /** 612 * @ingroup tpu_registers 613 * @defgroup TPU_CIPHER_INIT TPU_CIPHER_INIT 614 * @brief Initial Vector. For block cipher operations that use CBC, CFB, OFB, or CNTR 615 * modes, this register holds the initial value. This register is updated with each 616 * encryption or decryption operation. This register is affected by the endian swap 617 * bits. 618 * @{ 619 */ 620 #define MXC_F_TPU_CIPHER_INIT_IVEC_POS 0 /**< CIPHER_INIT_IVEC Position */ 621 #define MXC_F_TPU_CIPHER_INIT_IVEC ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_CIPHER_INIT_IVEC_POS)) /**< CIPHER_INIT_IVEC Mask */ 622 623 /**@} end of group TPU_CIPHER_INIT_Register */ 624 625 /** 626 * @ingroup tpu_registers 627 * @defgroup TPU_CIPHER_KEY TPU_CIPHER_KEY 628 * @brief Cipher Key. This register holds the key used for block cipher operations. The 629 * lower words are used for block ciphers that use shorter key lengths. This 630 * register is affected by the endian swap input control bits. 631 * @{ 632 */ 633 #define MXC_F_TPU_CIPHER_KEY_KEY_POS 0 /**< CIPHER_KEY_KEY Position */ 634 #define MXC_F_TPU_CIPHER_KEY_KEY ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_CIPHER_KEY_KEY_POS)) /**< CIPHER_KEY_KEY Mask */ 635 636 /**@} end of group TPU_CIPHER_KEY_Register */ 637 638 /** 639 * @ingroup tpu_registers 640 * @defgroup TPU_HASH_DIGEST TPU_HASH_DIGEST 641 * @brief This register holds the calculated hash value. This register is affected by the 642 * endian swap bits. 643 * @{ 644 */ 645 #define MXC_F_TPU_HASH_DIGEST_HASH_POS 0 /**< HASH_DIGEST_HASH Position */ 646 #define MXC_F_TPU_HASH_DIGEST_HASH ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_HASH_DIGEST_HASH_POS)) /**< HASH_DIGEST_HASH Mask */ 647 648 /**@} end of group TPU_HASH_DIGEST_Register */ 649 650 /** 651 * @ingroup tpu_registers 652 * @defgroup TPU_HASH_MSG_SZ TPU_HASH_MSG_SZ 653 * @brief Message Size. This register holds the lowest 32-bit of message size in bytes. 654 * @{ 655 */ 656 #define MXC_F_TPU_HASH_MSG_SZ_MSGSZ_POS 0 /**< HASH_MSG_SZ_MSGSZ Position */ 657 #define MXC_F_TPU_HASH_MSG_SZ_MSGSZ ((uint32_t)(0xFFFFFFFFUL << MXC_F_TPU_HASH_MSG_SZ_MSGSZ_POS)) /**< HASH_MSG_SZ_MSGSZ Mask */ 658 659 /**@} end of group TPU_HASH_MSG_SZ_Register */ 660 661 /** 662 * @ingroup tpu_registers 663 * @defgroup TPU_MAA_MAWS TPU_MAA_MAWS 664 * @brief MAA Word Size. This register defines the number of bits for a modular operation. 665 * This register must be set to a valid value prior to the MAA operation start. 666 * Valid values are from 1 to 2048. Invalid values are ignored and will not 667 * initiate a MAA operation. 668 * @{ 669 */ 670 #define MXC_F_TPU_MAA_MAWS_MSGSZ_POS 0 /**< MAA_MAWS_MSGSZ Position */ 671 #define MXC_F_TPU_MAA_MAWS_MSGSZ ((uint32_t)(0xFFFUL << MXC_F_TPU_MAA_MAWS_MSGSZ_POS)) /**< MAA_MAWS_MSGSZ Mask */ 672 673 /**@} end of group TPU_MAA_MAWS_Register */ 674 675 #ifdef __cplusplus 676 } 677 #endif 678 679 #endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32650_INCLUDE_TPU_REGS_H_ 680