1 /***************************************************************************//** 2 * \file cyip_crypto_v2.h 3 * 4 * \brief 5 * CRYPTO IP definitions 6 * 7 ******************************************************************************** 8 * \copyright 9 * (c) (2016-2023), Cypress Semiconductor Corporation (an Infineon company) or 10 * an affiliate of Cypress Semiconductor Corporation. 11 * 12 * SPDX-License-Identifier: Apache-2.0 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 #ifndef _CYIP_CRYPTO_V2_H_ 28 #define _CYIP_CRYPTO_V2_H_ 29 30 #include "cyip_headers.h" 31 32 /******************************************************************************* 33 * CRYPTO 34 *******************************************************************************/ 35 36 #define CRYPTO_V2_SECTION_SIZE 0x00010000UL 37 38 /** 39 * \brief Cryptography component (CRYPTO) 40 */ 41 typedef struct { 42 __IOM uint32_t CTL; /*!< 0x00000000 Control */ 43 __IM uint32_t RESERVED; 44 __IOM uint32_t RAM_PWR_CTL; /*!< 0x00000008 SRAM power control */ 45 __IOM uint32_t RAM_PWR_DELAY_CTL; /*!< 0x0000000C SRAM power delay control */ 46 __IOM uint32_t ECC_CTL; /*!< 0x00000010 ECC control */ 47 __IM uint32_t RESERVED1[3]; 48 __IM uint32_t ERROR_STATUS0; /*!< 0x00000020 Error status 0 */ 49 __IOM uint32_t ERROR_STATUS1; /*!< 0x00000024 Error status 1 */ 50 __IM uint32_t RESERVED2[54]; 51 __IOM uint32_t INTR; /*!< 0x00000100 Interrupt register */ 52 __IOM uint32_t INTR_SET; /*!< 0x00000104 Interrupt set register */ 53 __IOM uint32_t INTR_MASK; /*!< 0x00000108 Interrupt mask register */ 54 __IM uint32_t INTR_MASKED; /*!< 0x0000010C Interrupt masked register */ 55 __IM uint32_t RESERVED3[60]; 56 __IOM uint32_t PR_LFSR_CTL0; /*!< 0x00000200 Pseudo random LFSR control 0 */ 57 __IOM uint32_t PR_LFSR_CTL1; /*!< 0x00000204 Pseudo random LFSR control 1 */ 58 __IOM uint32_t PR_LFSR_CTL2; /*!< 0x00000208 Pseudo random LFSR control 2 */ 59 __IOM uint32_t PR_MAX_CTL; /*!< 0x0000020C Pseudo random maximum control */ 60 __IOM uint32_t PR_CMD; /*!< 0x00000210 Pseudo random command */ 61 __IM uint32_t RESERVED4; 62 __IOM uint32_t PR_RESULT; /*!< 0x00000218 Pseudo random result */ 63 __IM uint32_t RESERVED5[25]; 64 __IOM uint32_t TR_CTL0; /*!< 0x00000280 True random control 0 */ 65 __IOM uint32_t TR_CTL1; /*!< 0x00000284 True random control 1 */ 66 __IOM uint32_t TR_CTL2; /*!< 0x00000288 True random control 2 */ 67 __IM uint32_t TR_STATUS; /*!< 0x0000028C True random status */ 68 __IOM uint32_t TR_CMD; /*!< 0x00000290 True random command */ 69 __IM uint32_t RESERVED6; 70 __IOM uint32_t TR_RESULT; /*!< 0x00000298 True random result */ 71 __IM uint32_t RESERVED7; 72 __IOM uint32_t TR_GARO_CTL; /*!< 0x000002A0 True random GARO control */ 73 __IOM uint32_t TR_FIRO_CTL; /*!< 0x000002A4 True random FIRO control */ 74 __IM uint32_t RESERVED8[6]; 75 __IOM uint32_t TR_MON_CTL; /*!< 0x000002C0 True random monitor control */ 76 __IM uint32_t RESERVED9; 77 __IOM uint32_t TR_MON_CMD; /*!< 0x000002C8 True random monitor command */ 78 __IM uint32_t RESERVED10; 79 __IOM uint32_t TR_MON_RC_CTL; /*!< 0x000002D0 True random monitor RC control */ 80 __IM uint32_t RESERVED11; 81 __IM uint32_t TR_MON_RC_STATUS0; /*!< 0x000002D8 True random monitor RC status 0 */ 82 __IM uint32_t TR_MON_RC_STATUS1; /*!< 0x000002DC True random monitor RC status 1 */ 83 __IOM uint32_t TR_MON_AP_CTL; /*!< 0x000002E0 True random monitor AP control */ 84 __IM uint32_t RESERVED12; 85 __IM uint32_t TR_MON_AP_STATUS0; /*!< 0x000002E8 True random monitor AP status 0 */ 86 __IM uint32_t TR_MON_AP_STATUS1; /*!< 0x000002EC True random monitor AP status 1 */ 87 __IM uint32_t RESERVED13[837]; 88 __IM uint32_t STATUS; /*!< 0x00001004 Status */ 89 __IM uint32_t RESERVED14[14]; 90 __IOM uint32_t INSTR_FF_CTL; /*!< 0x00001040 Instruction FIFO control */ 91 __IM uint32_t INSTR_FF_STATUS; /*!< 0x00001044 Instruction FIFO status */ 92 __OM uint32_t INSTR_FF_WR; /*!< 0x00001048 Instruction FIFO write */ 93 __IM uint32_t RESERVED15[29]; 94 __IM uint32_t LOAD0_FF_STATUS; /*!< 0x000010C0 Load 0 FIFO status */ 95 __IM uint32_t RESERVED16[3]; 96 __IM uint32_t LOAD1_FF_STATUS; /*!< 0x000010D0 Load 1 FIFO status */ 97 __IM uint32_t RESERVED17[7]; 98 __IM uint32_t STORE_FF_STATUS; /*!< 0x000010F0 Store FIFO status */ 99 __IM uint32_t RESERVED18[3]; 100 __IOM uint32_t AES_CTL; /*!< 0x00001100 AES control */ 101 __IM uint32_t RESERVED19[31]; 102 __IOM uint32_t RESULT; /*!< 0x00001180 Result */ 103 __IM uint32_t RESERVED20[159]; 104 __IOM uint32_t CRC_CTL; /*!< 0x00001400 CRC control */ 105 __IM uint32_t RESERVED21[3]; 106 __IOM uint32_t CRC_DATA_CTL; /*!< 0x00001410 CRC data control */ 107 __IM uint32_t RESERVED22[3]; 108 __IOM uint32_t CRC_POL_CTL; /*!< 0x00001420 CRC polynomial control */ 109 __IM uint32_t RESERVED23[7]; 110 __IOM uint32_t CRC_REM_CTL; /*!< 0x00001440 CRC remainder control */ 111 __IM uint32_t RESERVED24; 112 __IM uint32_t CRC_REM_RESULT; /*!< 0x00001448 CRC remainder result */ 113 __IM uint32_t RESERVED25[13]; 114 __IOM uint32_t VU_CTL0; /*!< 0x00001480 Vector unit control 0 */ 115 __IOM uint32_t VU_CTL1; /*!< 0x00001484 Vector unit control 1 */ 116 __IOM uint32_t VU_CTL2; /*!< 0x00001488 Vector unit control 2 */ 117 __IM uint32_t RESERVED26; 118 __IM uint32_t VU_STATUS; /*!< 0x00001490 Vector unit status */ 119 __IM uint32_t RESERVED27[11]; 120 __IM uint32_t VU_RF_DATA[16]; /*!< 0x000014C0 Vector unit register-file */ 121 __IM uint32_t RESERVED28[704]; 122 __IOM uint32_t DEV_KEY_ADDR0_CTL; /*!< 0x00002000 Device key address 0 control */ 123 __IOM uint32_t DEV_KEY_ADDR0; /*!< 0x00002004 Device key address 0 */ 124 __IM uint32_t RESERVED29[6]; 125 __IOM uint32_t DEV_KEY_ADDR1_CTL; /*!< 0x00002020 Device key address 1 control */ 126 __IOM uint32_t DEV_KEY_ADDR1; /*!< 0x00002024 Device key address 1 control */ 127 __IM uint32_t RESERVED30[22]; 128 __IM uint32_t DEV_KEY_STATUS; /*!< 0x00002080 Device key status */ 129 __IM uint32_t RESERVED31[31]; 130 __IOM uint32_t DEV_KEY_CTL0; /*!< 0x00002100 Device key control 0 */ 131 __IM uint32_t RESERVED32[7]; 132 __IOM uint32_t DEV_KEY_CTL1; /*!< 0x00002120 Device key control 1 */ 133 __IM uint32_t RESERVED33[6071]; 134 __IOM uint32_t MEM_BUFF[8192]; /*!< 0x00008000 Memory buffer */ 135 } CRYPTO_V2_Type; /*!< Size = 65536 (0x10000) */ 136 137 138 /* CRYPTO.CTL */ 139 #define CRYPTO_V2_CTL_P_Pos 0UL 140 #define CRYPTO_V2_CTL_P_Msk 0x1UL 141 #define CRYPTO_V2_CTL_NS_Pos 1UL 142 #define CRYPTO_V2_CTL_NS_Msk 0x2UL 143 #define CRYPTO_V2_CTL_PC_Pos 4UL 144 #define CRYPTO_V2_CTL_PC_Msk 0xF0UL 145 #define CRYPTO_V2_CTL_ECC_EN_Pos 16UL 146 #define CRYPTO_V2_CTL_ECC_EN_Msk 0x10000UL 147 #define CRYPTO_V2_CTL_ECC_INJ_EN_Pos 17UL 148 #define CRYPTO_V2_CTL_ECC_INJ_EN_Msk 0x20000UL 149 #define CRYPTO_V2_CTL_ENABLED_Pos 31UL 150 #define CRYPTO_V2_CTL_ENABLED_Msk 0x80000000UL 151 /* CRYPTO.RAM_PWR_CTL */ 152 #define CRYPTO_V2_RAM_PWR_CTL_PWR_MODE_Pos 0UL 153 #define CRYPTO_V2_RAM_PWR_CTL_PWR_MODE_Msk 0x3UL 154 /* CRYPTO.RAM_PWR_DELAY_CTL */ 155 #define CRYPTO_V2_RAM_PWR_DELAY_CTL_UP_Pos 0UL 156 #define CRYPTO_V2_RAM_PWR_DELAY_CTL_UP_Msk 0x3FFUL 157 /* CRYPTO.ECC_CTL */ 158 #define CRYPTO_V2_ECC_CTL_WORD_ADDR_Pos 0UL 159 #define CRYPTO_V2_ECC_CTL_WORD_ADDR_Msk 0x1FFFUL 160 #define CRYPTO_V2_ECC_CTL_PARITY_Pos 25UL 161 #define CRYPTO_V2_ECC_CTL_PARITY_Msk 0xFE000000UL 162 /* CRYPTO.ERROR_STATUS0 */ 163 #define CRYPTO_V2_ERROR_STATUS0_DATA32_Pos 0UL 164 #define CRYPTO_V2_ERROR_STATUS0_DATA32_Msk 0xFFFFFFFFUL 165 /* CRYPTO.ERROR_STATUS1 */ 166 #define CRYPTO_V2_ERROR_STATUS1_DATA24_Pos 0UL 167 #define CRYPTO_V2_ERROR_STATUS1_DATA24_Msk 0xFFFFFFUL 168 #define CRYPTO_V2_ERROR_STATUS1_IDX_Pos 24UL 169 #define CRYPTO_V2_ERROR_STATUS1_IDX_Msk 0x7000000UL 170 #define CRYPTO_V2_ERROR_STATUS1_VALID_Pos 31UL 171 #define CRYPTO_V2_ERROR_STATUS1_VALID_Msk 0x80000000UL 172 /* CRYPTO.INTR */ 173 #define CRYPTO_V2_INTR_INSTR_FF_LEVEL_Pos 0UL 174 #define CRYPTO_V2_INTR_INSTR_FF_LEVEL_Msk 0x1UL 175 #define CRYPTO_V2_INTR_INSTR_FF_OVERFLOW_Pos 1UL 176 #define CRYPTO_V2_INTR_INSTR_FF_OVERFLOW_Msk 0x2UL 177 #define CRYPTO_V2_INTR_TR_INITIALIZED_Pos 2UL 178 #define CRYPTO_V2_INTR_TR_INITIALIZED_Msk 0x4UL 179 #define CRYPTO_V2_INTR_TR_DATA_AVAILABLE_Pos 3UL 180 #define CRYPTO_V2_INTR_TR_DATA_AVAILABLE_Msk 0x8UL 181 #define CRYPTO_V2_INTR_PR_DATA_AVAILABLE_Pos 4UL 182 #define CRYPTO_V2_INTR_PR_DATA_AVAILABLE_Msk 0x10UL 183 #define CRYPTO_V2_INTR_INSTR_OPC_ERROR_Pos 16UL 184 #define CRYPTO_V2_INTR_INSTR_OPC_ERROR_Msk 0x10000UL 185 #define CRYPTO_V2_INTR_INSTR_CC_ERROR_Pos 17UL 186 #define CRYPTO_V2_INTR_INSTR_CC_ERROR_Msk 0x20000UL 187 #define CRYPTO_V2_INTR_BUS_ERROR_Pos 18UL 188 #define CRYPTO_V2_INTR_BUS_ERROR_Msk 0x40000UL 189 #define CRYPTO_V2_INTR_TR_AP_DETECT_ERROR_Pos 19UL 190 #define CRYPTO_V2_INTR_TR_AP_DETECT_ERROR_Msk 0x80000UL 191 #define CRYPTO_V2_INTR_TR_RC_DETECT_ERROR_Pos 20UL 192 #define CRYPTO_V2_INTR_TR_RC_DETECT_ERROR_Msk 0x100000UL 193 #define CRYPTO_V2_INTR_INSTR_DEV_KEY_ERROR_Pos 21UL 194 #define CRYPTO_V2_INTR_INSTR_DEV_KEY_ERROR_Msk 0x200000UL 195 /* CRYPTO.INTR_SET */ 196 #define CRYPTO_V2_INTR_SET_INSTR_FF_LEVEL_Pos 0UL 197 #define CRYPTO_V2_INTR_SET_INSTR_FF_LEVEL_Msk 0x1UL 198 #define CRYPTO_V2_INTR_SET_INSTR_FF_OVERFLOW_Pos 1UL 199 #define CRYPTO_V2_INTR_SET_INSTR_FF_OVERFLOW_Msk 0x2UL 200 #define CRYPTO_V2_INTR_SET_TR_INITIALIZED_Pos 2UL 201 #define CRYPTO_V2_INTR_SET_TR_INITIALIZED_Msk 0x4UL 202 #define CRYPTO_V2_INTR_SET_TR_DATA_AVAILABLE_Pos 3UL 203 #define CRYPTO_V2_INTR_SET_TR_DATA_AVAILABLE_Msk 0x8UL 204 #define CRYPTO_V2_INTR_SET_PR_DATA_AVAILABLE_Pos 4UL 205 #define CRYPTO_V2_INTR_SET_PR_DATA_AVAILABLE_Msk 0x10UL 206 #define CRYPTO_V2_INTR_SET_INSTR_OPC_ERROR_Pos 16UL 207 #define CRYPTO_V2_INTR_SET_INSTR_OPC_ERROR_Msk 0x10000UL 208 #define CRYPTO_V2_INTR_SET_INSTR_CC_ERROR_Pos 17UL 209 #define CRYPTO_V2_INTR_SET_INSTR_CC_ERROR_Msk 0x20000UL 210 #define CRYPTO_V2_INTR_SET_BUS_ERROR_Pos 18UL 211 #define CRYPTO_V2_INTR_SET_BUS_ERROR_Msk 0x40000UL 212 #define CRYPTO_V2_INTR_SET_TR_AP_DETECT_ERROR_Pos 19UL 213 #define CRYPTO_V2_INTR_SET_TR_AP_DETECT_ERROR_Msk 0x80000UL 214 #define CRYPTO_V2_INTR_SET_TR_RC_DETECT_ERROR_Pos 20UL 215 #define CRYPTO_V2_INTR_SET_TR_RC_DETECT_ERROR_Msk 0x100000UL 216 #define CRYPTO_V2_INTR_SET_INSTR_DEV_KEY_ERROR_Pos 21UL 217 #define CRYPTO_V2_INTR_SET_INSTR_DEV_KEY_ERROR_Msk 0x200000UL 218 /* CRYPTO.INTR_MASK */ 219 #define CRYPTO_V2_INTR_MASK_INSTR_FF_LEVEL_Pos 0UL 220 #define CRYPTO_V2_INTR_MASK_INSTR_FF_LEVEL_Msk 0x1UL 221 #define CRYPTO_V2_INTR_MASK_INSTR_FF_OVERFLOW_Pos 1UL 222 #define CRYPTO_V2_INTR_MASK_INSTR_FF_OVERFLOW_Msk 0x2UL 223 #define CRYPTO_V2_INTR_MASK_TR_INITIALIZED_Pos 2UL 224 #define CRYPTO_V2_INTR_MASK_TR_INITIALIZED_Msk 0x4UL 225 #define CRYPTO_V2_INTR_MASK_TR_DATA_AVAILABLE_Pos 3UL 226 #define CRYPTO_V2_INTR_MASK_TR_DATA_AVAILABLE_Msk 0x8UL 227 #define CRYPTO_V2_INTR_MASK_PR_DATA_AVAILABLE_Pos 4UL 228 #define CRYPTO_V2_INTR_MASK_PR_DATA_AVAILABLE_Msk 0x10UL 229 #define CRYPTO_V2_INTR_MASK_INSTR_OPC_ERROR_Pos 16UL 230 #define CRYPTO_V2_INTR_MASK_INSTR_OPC_ERROR_Msk 0x10000UL 231 #define CRYPTO_V2_INTR_MASK_INSTR_CC_ERROR_Pos 17UL 232 #define CRYPTO_V2_INTR_MASK_INSTR_CC_ERROR_Msk 0x20000UL 233 #define CRYPTO_V2_INTR_MASK_BUS_ERROR_Pos 18UL 234 #define CRYPTO_V2_INTR_MASK_BUS_ERROR_Msk 0x40000UL 235 #define CRYPTO_V2_INTR_MASK_TR_AP_DETECT_ERROR_Pos 19UL 236 #define CRYPTO_V2_INTR_MASK_TR_AP_DETECT_ERROR_Msk 0x80000UL 237 #define CRYPTO_V2_INTR_MASK_TR_RC_DETECT_ERROR_Pos 20UL 238 #define CRYPTO_V2_INTR_MASK_TR_RC_DETECT_ERROR_Msk 0x100000UL 239 #define CRYPTO_V2_INTR_MASK_INSTR_DEV_KEY_ERROR_Pos 21UL 240 #define CRYPTO_V2_INTR_MASK_INSTR_DEV_KEY_ERROR_Msk 0x200000UL 241 /* CRYPTO.INTR_MASKED */ 242 #define CRYPTO_V2_INTR_MASKED_INSTR_FF_LEVEL_Pos 0UL 243 #define CRYPTO_V2_INTR_MASKED_INSTR_FF_LEVEL_Msk 0x1UL 244 #define CRYPTO_V2_INTR_MASKED_INSTR_FF_OVERFLOW_Pos 1UL 245 #define CRYPTO_V2_INTR_MASKED_INSTR_FF_OVERFLOW_Msk 0x2UL 246 #define CRYPTO_V2_INTR_MASKED_TR_INITIALIZED_Pos 2UL 247 #define CRYPTO_V2_INTR_MASKED_TR_INITIALIZED_Msk 0x4UL 248 #define CRYPTO_V2_INTR_MASKED_TR_DATA_AVAILABLE_Pos 3UL 249 #define CRYPTO_V2_INTR_MASKED_TR_DATA_AVAILABLE_Msk 0x8UL 250 #define CRYPTO_V2_INTR_MASKED_PR_DATA_AVAILABLE_Pos 4UL 251 #define CRYPTO_V2_INTR_MASKED_PR_DATA_AVAILABLE_Msk 0x10UL 252 #define CRYPTO_V2_INTR_MASKED_INSTR_OPC_ERROR_Pos 16UL 253 #define CRYPTO_V2_INTR_MASKED_INSTR_OPC_ERROR_Msk 0x10000UL 254 #define CRYPTO_V2_INTR_MASKED_INSTR_CC_ERROR_Pos 17UL 255 #define CRYPTO_V2_INTR_MASKED_INSTR_CC_ERROR_Msk 0x20000UL 256 #define CRYPTO_V2_INTR_MASKED_BUS_ERROR_Pos 18UL 257 #define CRYPTO_V2_INTR_MASKED_BUS_ERROR_Msk 0x40000UL 258 #define CRYPTO_V2_INTR_MASKED_TR_AP_DETECT_ERROR_Pos 19UL 259 #define CRYPTO_V2_INTR_MASKED_TR_AP_DETECT_ERROR_Msk 0x80000UL 260 #define CRYPTO_V2_INTR_MASKED_TR_RC_DETECT_ERROR_Pos 20UL 261 #define CRYPTO_V2_INTR_MASKED_TR_RC_DETECT_ERROR_Msk 0x100000UL 262 #define CRYPTO_V2_INTR_MASKED_INSTR_DEV_KEY_ERROR_Pos 21UL 263 #define CRYPTO_V2_INTR_MASKED_INSTR_DEV_KEY_ERROR_Msk 0x200000UL 264 /* CRYPTO.PR_LFSR_CTL0 */ 265 #define CRYPTO_V2_PR_LFSR_CTL0_LFSR32_Pos 0UL 266 #define CRYPTO_V2_PR_LFSR_CTL0_LFSR32_Msk 0xFFFFFFFFUL 267 /* CRYPTO.PR_LFSR_CTL1 */ 268 #define CRYPTO_V2_PR_LFSR_CTL1_LFSR31_Pos 0UL 269 #define CRYPTO_V2_PR_LFSR_CTL1_LFSR31_Msk 0x7FFFFFFFUL 270 /* CRYPTO.PR_LFSR_CTL2 */ 271 #define CRYPTO_V2_PR_LFSR_CTL2_LFSR29_Pos 0UL 272 #define CRYPTO_V2_PR_LFSR_CTL2_LFSR29_Msk 0x1FFFFFFFUL 273 /* CRYPTO.PR_MAX_CTL */ 274 #define CRYPTO_V2_PR_MAX_CTL_DATA32_Pos 0UL 275 #define CRYPTO_V2_PR_MAX_CTL_DATA32_Msk 0xFFFFFFFFUL 276 /* CRYPTO.PR_CMD */ 277 #define CRYPTO_V2_PR_CMD_START_Pos 0UL 278 #define CRYPTO_V2_PR_CMD_START_Msk 0x1UL 279 /* CRYPTO.PR_RESULT */ 280 #define CRYPTO_V2_PR_RESULT_DATA32_Pos 0UL 281 #define CRYPTO_V2_PR_RESULT_DATA32_Msk 0xFFFFFFFFUL 282 /* CRYPTO.TR_CTL0 */ 283 #define CRYPTO_V2_TR_CTL0_SAMPLE_CLOCK_DIV_Pos 0UL 284 #define CRYPTO_V2_TR_CTL0_SAMPLE_CLOCK_DIV_Msk 0xFFUL 285 #define CRYPTO_V2_TR_CTL0_RED_CLOCK_DIV_Pos 8UL 286 #define CRYPTO_V2_TR_CTL0_RED_CLOCK_DIV_Msk 0xFF00UL 287 #define CRYPTO_V2_TR_CTL0_INIT_DELAY_Pos 16UL 288 #define CRYPTO_V2_TR_CTL0_INIT_DELAY_Msk 0xFF0000UL 289 #define CRYPTO_V2_TR_CTL0_VON_NEUMANN_CORR_Pos 24UL 290 #define CRYPTO_V2_TR_CTL0_VON_NEUMANN_CORR_Msk 0x1000000UL 291 #define CRYPTO_V2_TR_CTL0_STOP_ON_AP_DETECT_Pos 28UL 292 #define CRYPTO_V2_TR_CTL0_STOP_ON_AP_DETECT_Msk 0x10000000UL 293 #define CRYPTO_V2_TR_CTL0_STOP_ON_RC_DETECT_Pos 29UL 294 #define CRYPTO_V2_TR_CTL0_STOP_ON_RC_DETECT_Msk 0x20000000UL 295 /* CRYPTO.TR_CTL1 */ 296 #define CRYPTO_V2_TR_CTL1_RO11_EN_Pos 0UL 297 #define CRYPTO_V2_TR_CTL1_RO11_EN_Msk 0x1UL 298 #define CRYPTO_V2_TR_CTL1_RO15_EN_Pos 1UL 299 #define CRYPTO_V2_TR_CTL1_RO15_EN_Msk 0x2UL 300 #define CRYPTO_V2_TR_CTL1_GARO15_EN_Pos 2UL 301 #define CRYPTO_V2_TR_CTL1_GARO15_EN_Msk 0x4UL 302 #define CRYPTO_V2_TR_CTL1_GARO31_EN_Pos 3UL 303 #define CRYPTO_V2_TR_CTL1_GARO31_EN_Msk 0x8UL 304 #define CRYPTO_V2_TR_CTL1_FIRO15_EN_Pos 4UL 305 #define CRYPTO_V2_TR_CTL1_FIRO15_EN_Msk 0x10UL 306 #define CRYPTO_V2_TR_CTL1_FIRO31_EN_Pos 5UL 307 #define CRYPTO_V2_TR_CTL1_FIRO31_EN_Msk 0x20UL 308 /* CRYPTO.TR_CTL2 */ 309 #define CRYPTO_V2_TR_CTL2_SIZE_Pos 0UL 310 #define CRYPTO_V2_TR_CTL2_SIZE_Msk 0x3FUL 311 /* CRYPTO.TR_STATUS */ 312 #define CRYPTO_V2_TR_STATUS_INITIALIZED_Pos 0UL 313 #define CRYPTO_V2_TR_STATUS_INITIALIZED_Msk 0x1UL 314 /* CRYPTO.TR_CMD */ 315 #define CRYPTO_V2_TR_CMD_START_Pos 0UL 316 #define CRYPTO_V2_TR_CMD_START_Msk 0x1UL 317 /* CRYPTO.TR_RESULT */ 318 #define CRYPTO_V2_TR_RESULT_DATA32_Pos 0UL 319 #define CRYPTO_V2_TR_RESULT_DATA32_Msk 0xFFFFFFFFUL 320 /* CRYPTO.TR_GARO_CTL */ 321 #define CRYPTO_V2_TR_GARO_CTL_POLYNOMIAL31_Pos 0UL 322 #define CRYPTO_V2_TR_GARO_CTL_POLYNOMIAL31_Msk 0x7FFFFFFFUL 323 /* CRYPTO.TR_FIRO_CTL */ 324 #define CRYPTO_V2_TR_FIRO_CTL_POLYNOMIAL31_Pos 0UL 325 #define CRYPTO_V2_TR_FIRO_CTL_POLYNOMIAL31_Msk 0x7FFFFFFFUL 326 /* CRYPTO.TR_MON_CTL */ 327 #define CRYPTO_V2_TR_MON_CTL_BITSTREAM_SEL_Pos 0UL 328 #define CRYPTO_V2_TR_MON_CTL_BITSTREAM_SEL_Msk 0x3UL 329 /* CRYPTO.TR_MON_CMD */ 330 #define CRYPTO_V2_TR_MON_CMD_START_AP_Pos 0UL 331 #define CRYPTO_V2_TR_MON_CMD_START_AP_Msk 0x1UL 332 #define CRYPTO_V2_TR_MON_CMD_START_RC_Pos 1UL 333 #define CRYPTO_V2_TR_MON_CMD_START_RC_Msk 0x2UL 334 /* CRYPTO.TR_MON_RC_CTL */ 335 #define CRYPTO_V2_TR_MON_RC_CTL_CUTOFF_COUNT8_Pos 0UL 336 #define CRYPTO_V2_TR_MON_RC_CTL_CUTOFF_COUNT8_Msk 0xFFUL 337 /* CRYPTO.TR_MON_RC_STATUS0 */ 338 #define CRYPTO_V2_TR_MON_RC_STATUS0_BIT_Pos 0UL 339 #define CRYPTO_V2_TR_MON_RC_STATUS0_BIT_Msk 0x1UL 340 /* CRYPTO.TR_MON_RC_STATUS1 */ 341 #define CRYPTO_V2_TR_MON_RC_STATUS1_REP_COUNT_Pos 0UL 342 #define CRYPTO_V2_TR_MON_RC_STATUS1_REP_COUNT_Msk 0xFFUL 343 /* CRYPTO.TR_MON_AP_CTL */ 344 #define CRYPTO_V2_TR_MON_AP_CTL_CUTOFF_COUNT16_Pos 0UL 345 #define CRYPTO_V2_TR_MON_AP_CTL_CUTOFF_COUNT16_Msk 0xFFFFUL 346 #define CRYPTO_V2_TR_MON_AP_CTL_WINDOW_SIZE_Pos 16UL 347 #define CRYPTO_V2_TR_MON_AP_CTL_WINDOW_SIZE_Msk 0xFFFF0000UL 348 /* CRYPTO.TR_MON_AP_STATUS0 */ 349 #define CRYPTO_V2_TR_MON_AP_STATUS0_BIT_Pos 0UL 350 #define CRYPTO_V2_TR_MON_AP_STATUS0_BIT_Msk 0x1UL 351 /* CRYPTO.TR_MON_AP_STATUS1 */ 352 #define CRYPTO_V2_TR_MON_AP_STATUS1_OCC_COUNT_Pos 0UL 353 #define CRYPTO_V2_TR_MON_AP_STATUS1_OCC_COUNT_Msk 0xFFFFUL 354 #define CRYPTO_V2_TR_MON_AP_STATUS1_WINDOW_INDEX_Pos 16UL 355 #define CRYPTO_V2_TR_MON_AP_STATUS1_WINDOW_INDEX_Msk 0xFFFF0000UL 356 /* CRYPTO.STATUS */ 357 #define CRYPTO_V2_STATUS_BUSY_Pos 31UL 358 #define CRYPTO_V2_STATUS_BUSY_Msk 0x80000000UL 359 /* CRYPTO.INSTR_FF_CTL */ 360 #define CRYPTO_V2_INSTR_FF_CTL_EVENT_LEVEL_Pos 0UL 361 #define CRYPTO_V2_INSTR_FF_CTL_EVENT_LEVEL_Msk 0x7UL 362 #define CRYPTO_V2_INSTR_FF_CTL_CLEAR_Pos 16UL 363 #define CRYPTO_V2_INSTR_FF_CTL_CLEAR_Msk 0x10000UL 364 #define CRYPTO_V2_INSTR_FF_CTL_BLOCK_Pos 17UL 365 #define CRYPTO_V2_INSTR_FF_CTL_BLOCK_Msk 0x20000UL 366 /* CRYPTO.INSTR_FF_STATUS */ 367 #define CRYPTO_V2_INSTR_FF_STATUS_USED_Pos 0UL 368 #define CRYPTO_V2_INSTR_FF_STATUS_USED_Msk 0xFUL 369 #define CRYPTO_V2_INSTR_FF_STATUS_EVENT_Pos 16UL 370 #define CRYPTO_V2_INSTR_FF_STATUS_EVENT_Msk 0x10000UL 371 /* CRYPTO.INSTR_FF_WR */ 372 #define CRYPTO_V2_INSTR_FF_WR_DATA32_Pos 0UL 373 #define CRYPTO_V2_INSTR_FF_WR_DATA32_Msk 0xFFFFFFFFUL 374 /* CRYPTO.LOAD0_FF_STATUS */ 375 #define CRYPTO_V2_LOAD0_FF_STATUS_USED5_Pos 0UL 376 #define CRYPTO_V2_LOAD0_FF_STATUS_USED5_Msk 0x1FUL 377 #define CRYPTO_V2_LOAD0_FF_STATUS_BUSY_Pos 31UL 378 #define CRYPTO_V2_LOAD0_FF_STATUS_BUSY_Msk 0x80000000UL 379 /* CRYPTO.LOAD1_FF_STATUS */ 380 #define CRYPTO_V2_LOAD1_FF_STATUS_USED5_Pos 0UL 381 #define CRYPTO_V2_LOAD1_FF_STATUS_USED5_Msk 0x1FUL 382 #define CRYPTO_V2_LOAD1_FF_STATUS_BUSY_Pos 31UL 383 #define CRYPTO_V2_LOAD1_FF_STATUS_BUSY_Msk 0x80000000UL 384 /* CRYPTO.STORE_FF_STATUS */ 385 #define CRYPTO_V2_STORE_FF_STATUS_USED5_Pos 0UL 386 #define CRYPTO_V2_STORE_FF_STATUS_USED5_Msk 0x1FUL 387 #define CRYPTO_V2_STORE_FF_STATUS_BUSY_Pos 31UL 388 #define CRYPTO_V2_STORE_FF_STATUS_BUSY_Msk 0x80000000UL 389 /* CRYPTO.AES_CTL */ 390 #define CRYPTO_V2_AES_CTL_KEY_SIZE_Pos 0UL 391 #define CRYPTO_V2_AES_CTL_KEY_SIZE_Msk 0x3UL 392 /* CRYPTO.RESULT */ 393 #define CRYPTO_V2_RESULT_DATA_Pos 0UL 394 #define CRYPTO_V2_RESULT_DATA_Msk 0xFFFFFFFFUL 395 /* CRYPTO.CRC_CTL */ 396 #define CRYPTO_V2_CRC_CTL_DATA_REVERSE_Pos 0UL 397 #define CRYPTO_V2_CRC_CTL_DATA_REVERSE_Msk 0x1UL 398 #define CRYPTO_V2_CRC_CTL_REM_REVERSE_Pos 8UL 399 #define CRYPTO_V2_CRC_CTL_REM_REVERSE_Msk 0x100UL 400 /* CRYPTO.CRC_DATA_CTL */ 401 #define CRYPTO_V2_CRC_DATA_CTL_DATA_XOR_Pos 0UL 402 #define CRYPTO_V2_CRC_DATA_CTL_DATA_XOR_Msk 0xFFUL 403 /* CRYPTO.CRC_POL_CTL */ 404 #define CRYPTO_V2_CRC_POL_CTL_POLYNOMIAL_Pos 0UL 405 #define CRYPTO_V2_CRC_POL_CTL_POLYNOMIAL_Msk 0xFFFFFFFFUL 406 /* CRYPTO.CRC_REM_CTL */ 407 #define CRYPTO_V2_CRC_REM_CTL_REM_XOR_Pos 0UL 408 #define CRYPTO_V2_CRC_REM_CTL_REM_XOR_Msk 0xFFFFFFFFUL 409 /* CRYPTO.CRC_REM_RESULT */ 410 #define CRYPTO_V2_CRC_REM_RESULT_REM_Pos 0UL 411 #define CRYPTO_V2_CRC_REM_RESULT_REM_Msk 0xFFFFFFFFUL 412 /* CRYPTO.VU_CTL0 */ 413 #define CRYPTO_V2_VU_CTL0_ALWAYS_EXECUTE_Pos 0UL 414 #define CRYPTO_V2_VU_CTL0_ALWAYS_EXECUTE_Msk 0x1UL 415 /* CRYPTO.VU_CTL1 */ 416 #define CRYPTO_V2_VU_CTL1_ADDR24_Pos 8UL 417 #define CRYPTO_V2_VU_CTL1_ADDR24_Msk 0xFFFFFF00UL 418 /* CRYPTO.VU_CTL2 */ 419 #define CRYPTO_V2_VU_CTL2_MASK_Pos 8UL 420 #define CRYPTO_V2_VU_CTL2_MASK_Msk 0x7F00UL 421 /* CRYPTO.VU_STATUS */ 422 #define CRYPTO_V2_VU_STATUS_CARRY_Pos 0UL 423 #define CRYPTO_V2_VU_STATUS_CARRY_Msk 0x1UL 424 #define CRYPTO_V2_VU_STATUS_EVEN_Pos 1UL 425 #define CRYPTO_V2_VU_STATUS_EVEN_Msk 0x2UL 426 #define CRYPTO_V2_VU_STATUS_ZERO_Pos 2UL 427 #define CRYPTO_V2_VU_STATUS_ZERO_Msk 0x4UL 428 #define CRYPTO_V2_VU_STATUS_ONE_Pos 3UL 429 #define CRYPTO_V2_VU_STATUS_ONE_Msk 0x8UL 430 /* CRYPTO.VU_RF_DATA */ 431 #define CRYPTO_V2_VU_RF_DATA_DATA32_Pos 0UL 432 #define CRYPTO_V2_VU_RF_DATA_DATA32_Msk 0xFFFFFFFFUL 433 /* CRYPTO.DEV_KEY_ADDR0_CTL */ 434 #define CRYPTO_V2_DEV_KEY_ADDR0_CTL_VALID_Pos 31UL 435 #define CRYPTO_V2_DEV_KEY_ADDR0_CTL_VALID_Msk 0x80000000UL 436 /* CRYPTO.DEV_KEY_ADDR0 */ 437 #define CRYPTO_V2_DEV_KEY_ADDR0_ADDR32_Pos 0UL 438 #define CRYPTO_V2_DEV_KEY_ADDR0_ADDR32_Msk 0xFFFFFFFFUL 439 /* CRYPTO.DEV_KEY_ADDR1_CTL */ 440 #define CRYPTO_V2_DEV_KEY_ADDR1_CTL_VALID_Pos 31UL 441 #define CRYPTO_V2_DEV_KEY_ADDR1_CTL_VALID_Msk 0x80000000UL 442 /* CRYPTO.DEV_KEY_ADDR1 */ 443 #define CRYPTO_V2_DEV_KEY_ADDR1_ADDR32_Pos 0UL 444 #define CRYPTO_V2_DEV_KEY_ADDR1_ADDR32_Msk 0xFFFFFFFFUL 445 /* CRYPTO.DEV_KEY_STATUS */ 446 #define CRYPTO_V2_DEV_KEY_STATUS_LOADED_Pos 0UL 447 #define CRYPTO_V2_DEV_KEY_STATUS_LOADED_Msk 0x1UL 448 /* CRYPTO.DEV_KEY_CTL0 */ 449 #define CRYPTO_V2_DEV_KEY_CTL0_ALLOWED_Pos 0UL 450 #define CRYPTO_V2_DEV_KEY_CTL0_ALLOWED_Msk 0x1UL 451 /* CRYPTO.DEV_KEY_CTL1 */ 452 #define CRYPTO_V2_DEV_KEY_CTL1_ALLOWED_Pos 0UL 453 #define CRYPTO_V2_DEV_KEY_CTL1_ALLOWED_Msk 0x1UL 454 /* CRYPTO.MEM_BUFF */ 455 #define CRYPTO_V2_MEM_BUFF_DATA32_Pos 0UL 456 #define CRYPTO_V2_MEM_BUFF_DATA32_Msk 0xFFFFFFFFUL 457 458 459 #endif /* _CYIP_CRYPTO_V2_H_ */ 460 461 462 /* [] END OF FILE */ 463