1 /** 2 * @file aes_regs.h 3 * @brief Registers, Bit Masks and Bit Positions for the AES Peripheral Module. 4 * @note This file is @deprecated. 5 */ 6 7 /****************************************************************************** 8 * 9 * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by 10 * Analog Devices, Inc.), 11 * Copyright (C) 2023-2024 Analog Devices, Inc. 12 * 13 * Licensed under the Apache License, Version 2.0 (the "License"); 14 * you may not use this file except in compliance with the License. 15 * You may obtain a copy of the License at 16 * 17 * http://www.apache.org/licenses/LICENSE-2.0 18 * 19 * Unless required by applicable law or agreed to in writing, software 20 * distributed under the License is distributed on an "AS IS" BASIS, 21 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 22 * See the License for the specific language governing permissions and 23 * limitations under the License. 24 * 25 ******************************************************************************/ 26 27 #ifndef LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32520_INCLUDE_AES_REGS_H_ 28 #define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32520_INCLUDE_AES_REGS_H_ 29 30 #warning "DEPRECATED(1-10-2023): aes_regs.h - Scheduled for removal. Please use aeskeys_regs.h." 31 32 /* **** Includes **** */ 33 #include <stdint.h> 34 35 #ifdef __cplusplus 36 extern "C" { 37 #endif 38 39 #if defined (__ICCARM__) 40 #pragma system_include 41 #endif 42 43 #if defined (__CC_ARM) 44 #pragma anon_unions 45 #endif 46 /// @cond 47 /* 48 If types are not defined elsewhere (CMSIS) define them here 49 */ 50 #ifndef __IO 51 #define __IO volatile 52 #endif 53 #ifndef __I 54 #define __I volatile const 55 #endif 56 #ifndef __O 57 #define __O volatile 58 #endif 59 #ifndef __R 60 #define __R volatile const 61 #endif 62 /// @endcond 63 64 /* **** Definitions **** */ 65 66 /** 67 * @ingroup aes 68 * @defgroup aes_registers AES_Registers 69 * @brief Registers, Bit Masks and Bit Positions for the AES Peripheral Module. 70 * @details AES Keys. 71 */ 72 73 /** 74 * @ingroup aes_registers 75 * Structure type to access the AES Registers. 76 */ 77 #if defined(__GNUC__) 78 __attribute__((deprecated("mxc_aes_regs_t struct and aes_regs.h no longer supported. Use aeskeys_regs.h and MXC_AESKEYS (mxc_aeskeys_regs_t) for AES Key Access. 1-10-2023"))) 79 #else 80 #warning "mxc_aes_regs_t struct and aes_regs.h no longer supported. Use aeskeys_regs.h and MXC_AESKEYS (mxc_aeskeys_regs_t) for AES Key Access. 1-10-2023" 81 #endif 82 typedef struct { 83 __IO uint32_t aes_sram_key; /**< <tt>\b 0x000:</tt> AES AES_SRAM_KEY Register */ 84 __R uint32_t rsv_0x4_0x7f[31]; 85 __IO uint32_t aes_code_key; /**< <tt>\b 0x080:</tt> AES AES_CODE_KEY Register */ 86 __R uint32_t rsv_0x84_0xff[31]; 87 __IO uint32_t aes_data_key; /**< <tt>\b 0x100:</tt> AES AES_DATA_KEY Register */ 88 } mxc_aes_regs_t; 89 90 /* Register offsets for module AES */ 91 /** 92 * @ingroup aes_registers 93 * @defgroup AES_Register_Offsets Register Offsets 94 * @brief AES Peripheral Register Offsets from the AES Base Peripheral Address. 95 * @{ 96 */ 97 #define MXC_R_AES_AES_SRAM_KEY ((uint32_t)0x00000000UL) /**< Offset from AES Base Address: <tt> 0x0000</tt> */ 98 #define MXC_R_AES_AES_CODE_KEY ((uint32_t)0x00000080UL) /**< Offset from AES Base Address: <tt> 0x0080</tt> */ 99 #define MXC_R_AES_AES_DATA_KEY ((uint32_t)0x00000100UL) /**< Offset from AES Base Address: <tt> 0x0100</tt> */ 100 /**@} end of group aes_registers */ 101 102 #ifdef __cplusplus 103 } 104 #endif 105 106 #endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32520_INCLUDE_AES_REGS_H_ 107