1 /** 2 ****************************************************************************** 3 * @file stm32n6xx_hal_rif.h 4 * @author MCD Application Team 5 * @brief Header file of RIF HAL module. 6 ****************************************************************************** 7 * @attention 8 * 9 * Copyright (c) 2023 STMicroelectronics. 10 * All rights reserved. 11 * 12 * This software is licensed under terms that can be found in the LICENSE file 13 * in the root directory of this software component. 14 * If no LICENSE file comes with this software, it is provided AS-IS. 15 * 16 ****************************************************************************** 17 */ 18 19 /* Define to prevent recursive inclusion -------------------------------------*/ 20 #ifndef STM32N6xx_HAL_RIF_H 21 #define STM32N6xx_HAL_RIF_H 22 23 #ifdef __cplusplus 24 extern "C" { 25 #endif 26 27 /* Includes ------------------------------------------------------------------*/ 28 #include "stm32n6xx_hal_def.h" 29 30 /** @addtogroup STM32N6xx_HAL_Driver 31 * @{ 32 */ 33 34 /** @addtogroup RIF 35 * @{ 36 */ 37 38 /* Exported constants --------------------------------------------------------*/ 39 /** @defgroup RIF_EXPORTED_CONSTANTS_COMMON RIF exported constants - Common 40 * @{ 41 */ 42 43 /** @defgroup RIF_COMPARTMENT_ID RIF CID number definition 44 * @{ 45 */ 46 #define RIF_CID_NONE 0x00000000U 47 #define RIF_CID_0 0x00000001U 48 #define RIF_CID_1 0x00000002U 49 #define RIF_CID_2 0x00000004U 50 #define RIF_CID_3 0x00000008U 51 #define RIF_CID_4 0x00000010U 52 #define RIF_CID_5 0x00000020U 53 #define RIF_CID_6 0x00000040U 54 #define RIF_CID_7 0x00000080U 55 /** 56 * @} 57 */ 58 59 /** @defgroup RIF_MASTER_INDEX RIF Master index 60 * @{ 61 */ 62 #define RIF_MASTER_INDEX_ETR 0U 63 #if defined(NPU_PRESENT) 64 #define RIF_MASTER_INDEX_NPU 1U 65 #endif /* defined(NPU_PRESENT) */ 66 #define RIF_MASTER_INDEX_SDMMC1 2U 67 #define RIF_MASTER_INDEX_SDMMC2 3U 68 #define RIF_MASTER_INDEX_OTG1 4U 69 #define RIF_MASTER_INDEX_OTG2 5U 70 #define RIF_MASTER_INDEX_ETH1 6U 71 #define RIF_MASTER_INDEX_GPU2D 7U 72 #define RIF_MASTER_INDEX_DMA2D 8U 73 #define RIF_MASTER_INDEX_DCMIPP 9U 74 #define RIF_MASTER_INDEX_LTDC1 10U 75 #define RIF_MASTER_INDEX_LTDC2 11U 76 #define RIF_MASTER_INDEX_VENC 12U 77 /** 78 * @} 79 */ 80 81 /** @defgroup RIF_PERIPHERAL_INDEX RIF RISUP Peripheral index 82 * @{ 83 */ 84 /** @defgroup RIF_PERIPH_PERIPHERAL_INDEX RIF RISUP Peripheral index 85 * @{ 86 */ 87 #define RIF_RISC_PERIPH_INDEX_SPI1 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC0_Pos) 88 #define RIF_RISC_PERIPH_INDEX_SPI2 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC1_Pos) 89 #define RIF_RISC_PERIPH_INDEX_SPI3 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC2_Pos) 90 #define RIF_RISC_PERIPH_INDEX_SPI4 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC3_Pos) 91 #define RIF_RISC_PERIPH_INDEX_SPI5 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC4_Pos) 92 #define RIF_RISC_PERIPH_INDEX_SPI6 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC5_Pos) 93 #define RIF_RISC_PERIPH_INDEX_SAI1 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC6_Pos) 94 #define RIF_RISC_PERIPH_INDEX_SAI2 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC8_Pos) 95 #define RIF_RISC_PERIPH_INDEX_I2C1 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC9_Pos) 96 #define RIF_RISC_PERIPH_INDEX_I2C2 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC10_Pos) 97 #define RIF_RISC_PERIPH_INDEX_I2C3 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC11_Pos) 98 #define RIF_RISC_PERIPH_INDEX_I2C4 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC12_Pos) 99 #define RIF_RISC_PERIPH_INDEX_I3C1 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC13_Pos) 100 #define RIF_RISC_PERIPH_INDEX_I3C2 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC14_Pos) 101 #define RIF_RISC_PERIPH_INDEX_USART1 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC15_Pos) 102 #define RIF_RISC_PERIPH_INDEX_USART2 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC16_Pos) 103 #define RIF_RISC_PERIPH_INDEX_USART3 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC17_Pos) 104 #define RIF_RISC_PERIPH_INDEX_UART4 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC18_Pos) 105 #define RIF_RISC_PERIPH_INDEX_UART5 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC19_Pos) 106 #define RIF_RISC_PERIPH_INDEX_USART6 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC20_Pos) 107 #define RIF_RISC_PERIPH_INDEX_UART7 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC21_Pos) 108 #define RIF_RISC_PERIPH_INDEX_UART8 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC22_Pos) 109 #define RIF_RISC_PERIPH_INDEX_UART9 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC23_Pos) 110 #define RIF_RISC_PERIPH_INDEX_USART10 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC24_Pos) 111 #define RIF_RISC_PERIPH_INDEX_LPUART1 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC25_Pos) 112 #define RIF_RISC_PERIPH_INDEX_FDCAN1 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC26_Pos) 113 #define RIF_RISC_PERIPH_INDEX_TIM1 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC27_Pos) 114 #define RIF_RISC_PERIPH_INDEX_TIM2 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC28_Pos) 115 #define RIF_RISC_PERIPH_INDEX_TIM3 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC29_Pos) 116 #define RIF_RISC_PERIPH_INDEX_TIM4 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC30_Pos) 117 #define RIF_RISC_PERIPH_INDEX_TIM5 (RIF_PERIPH_REG0 | RIFSC_RISC_SECCFGRx_SEC31_Pos) 118 #define RIF_RISC_PERIPH_INDEX_TIM6 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC0_Pos) 119 #define RIF_RISC_PERIPH_INDEX_TIM7 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC1_Pos) 120 #define RIF_RISC_PERIPH_INDEX_TIM8 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC2_Pos) 121 #define RIF_RISC_PERIPH_INDEX_TIM9 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC3_Pos) 122 #define RIF_RISC_PERIPH_INDEX_TIM10 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC4_Pos) 123 #define RIF_RISC_PERIPH_INDEX_TIM11 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC5_Pos) 124 #define RIF_RISC_PERIPH_INDEX_TIM12 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC6_Pos) 125 #define RIF_RISC_PERIPH_INDEX_TIM13 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC7_Pos) 126 #define RIF_RISC_PERIPH_INDEX_TIM14 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC8_Pos) 127 #define RIF_RISC_PERIPH_INDEX_TIM15 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC9_Pos) 128 #define RIF_RISC_PERIPH_INDEX_TIM16 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC10_Pos) 129 #define RIF_RISC_PERIPH_INDEX_TIM17 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC11_Pos) 130 #define RIF_RISC_PERIPH_INDEX_TIM18 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC12_Pos) 131 #define RIF_RISC_PERIPH_INDEX_GFXTIM (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC13_Pos) 132 #define RIF_RISC_PERIPH_INDEX_LPTIM1 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC14_Pos) 133 #define RIF_RISC_PERIPH_INDEX_LPTIM2 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC15_Pos) 134 #define RIF_RISC_PERIPH_INDEX_LPTIM3 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC16_Pos) 135 #define RIF_RISC_PERIPH_INDEX_LPTIM4 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC17_Pos) 136 #define RIF_RISC_PERIPH_INDEX_LPTIM5 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC18_Pos) 137 #define RIF_RISC_PERIPH_INDEX_ADF1 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC19_Pos) 138 #define RIF_RISC_PERIPH_INDEX_MDF1 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC20_Pos) 139 #define RIF_RISC_PERIPH_INDEX_SDMMC1 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC21_Pos) 140 #define RIF_RISC_PERIPH_INDEX_SDMMC2 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC22_Pos) 141 #define RIF_RISC_PERIPH_INDEX_MDIOS (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC23_Pos) 142 #define RIF_RISC_PERIPH_INDEX_OTG1HS (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC24_Pos) 143 #define RIF_RISC_PERIPH_INDEX_OTG2HS (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC25_Pos) 144 #define RIF_RISC_PERIPH_INDEX_UCPD1 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC26_Pos) 145 #define RIF_RISC_PERIPH_INDEX_ETH1 (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC28_Pos) 146 #define RIF_RISC_PERIPH_INDEX_SPDIFRX (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC29_Pos) 147 #define RIF_RISC_PERIPH_INDEX_SYSCFG (RIF_PERIPH_REG1 | RIFSC_RISC_SECCFGRx_SEC30_Pos) 148 #define RIF_RISC_PERIPH_INDEX_ADC12 (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC0_Pos) 149 #define RIF_RISC_PERIPH_INDEX_VREFBUF (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC1_Pos) 150 #define RIF_RISC_PERIPH_INDEX_CRC (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC3_Pos) 151 #define RIF_RISC_PERIPH_INDEX_IWDG (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC4_Pos) 152 #define RIF_RISC_PERIPH_INDEX_WWDG (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC5_Pos) 153 #define RIF_RISC_PERIPH_INDEX_RNG (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC12_Pos) 154 #define RIF_RISC_PERIPH_INDEX_PKA (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC13_Pos) 155 #if defined(CRYP) 156 #define RIF_RISC_PERIPH_INDEX_SAES (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC14_Pos) 157 #endif /* defined(CRYP) */ 158 #define RIF_RISC_PERIPH_INDEX_HASH (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC15_Pos) 159 #if defined(CRYP) 160 #define RIF_RISC_PERIPH_INDEX_CRYP (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC16_Pos) 161 #define RIF_RISC_PERIPH_INDEX_MCE1 (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC17_Pos) 162 #define RIF_RISC_PERIPH_INDEX_MCE2 (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC18_Pos) 163 #define RIF_RISC_PERIPH_INDEX_MCE3 (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC19_Pos) 164 #define RIF_RISC_PERIPH_INDEX_MCE4 (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC20_Pos) 165 #endif /* defined(CRYP) */ 166 #define RIF_RISC_PERIPH_INDEX_XSPI1 (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC22_Pos) 167 #define RIF_RISC_PERIPH_INDEX_XSPI2 (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC23_Pos) 168 #define RIF_RISC_PERIPH_INDEX_XSPI3 (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC24_Pos) 169 #define RIF_RISC_PERIPH_INDEX_XSPIM (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC25_Pos) 170 #define RIF_RISC_PERIPH_INDEX_FMC (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC26_Pos) 171 #define RIF_RISC_PERIPH_INDEX_CSI (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC28_Pos) 172 #define RIF_RISC_PERIPH_INDEX_DCMIPP (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC29_Pos) 173 #define RIF_RISC_PERIPH_INDEX_DCMI (RIF_PERIPH_REG2 | RIFSC_RISC_SECCFGRx_SEC30_Pos) 174 #define RIF_RISC_PERIPH_INDEX_JPEG (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC0_Pos) 175 #define RIF_RISC_PERIPH_INDEX_VENC (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC1_Pos) 176 #define RIF_RISC_PERIPH_INDEX_ICACHE (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC2_Pos) 177 #define RIF_RISC_PERIPH_INDEX_GPU2D (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC3_Pos) 178 #define RIF_RISC_PERIPH_INDEX_GFXMMU (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC4_Pos) 179 #define RIF_RISC_PERIPH_INDEX_DMA2D (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC5_Pos) 180 #define RIF_RISC_PERIPH_INDEX_LTDC (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC6_Pos) 181 #define RIF_RISC_PERIPH_INDEX_LTDCL1 (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC7_Pos) 182 #define RIF_RISC_PERIPH_INDEX_LTDCL2 (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC8_Pos) 183 #if defined(NPU_PRESENT) 184 #define RIF_RISC_PERIPH_INDEX_NPU (RIF_PERIPH_REG3 | RIFSC_RISC_SECCFGRx_SEC10_Pos) 185 #endif /* defined(NPU_PRESENT) */ 186 /** 187 * @} 188 */ 189 190 /** @defgroup RIF_RCC_PERIPHERAL_INDEX RIF RCC Security Control Peripheral index 191 * @{ 192 */ 193 #define RIF_RCC_PERIPH_INDEX_GPDMA1 (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC2_Pos) 194 #define RIF_RCC_PERIPH_INDEX_HPDMA1 (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC3_Pos) 195 #define RIF_RCC_PERIPH_INDEX_RTC (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC5_Pos) 196 #define RIF_RCC_PERIPH_INDEX_AXISRAM1 (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC12_Pos) 197 #define RIF_RCC_PERIPH_INDEX_AXISRAM2 (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC13_Pos) 198 #define RIF_RCC_PERIPH_INDEX_FLEXRAM (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC17_Pos) 199 #define RIF_RCC_PERIPH_INDEX_CACHEAXIRAM (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC18_Pos) 200 #define RIF_RCC_PERIPH_INDEX_VENCRAM (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC19_Pos) 201 #if defined(NPU_PRESENT) 202 #define RIF_RCC_PERIPH_INDEX_CACHECONFIG (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC25_Pos) 203 #endif /* defined(NPU_PRESENT) */ 204 #define RIF_RCC_PERIPH_INDEX_AHBRAM1 (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC27_Pos) 205 #define RIF_RCC_PERIPH_INDEX_AHBRAM2 (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC28_Pos) 206 #define RIF_RCC_PERIPH_INDEX_BKPRAM (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC29_Pos) 207 #define RIF_RCC_PERIPH_INDEX_GPIOA (RIF_PERIPH_REG4 | RIFSC_RISC_SECCFGRx_SEC31_Pos) 208 #define RIF_RCC_PERIPH_INDEX_GPIOB (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC0_Pos) 209 #define RIF_RCC_PERIPH_INDEX_GPIOC (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC1_Pos) 210 #define RIF_RCC_PERIPH_INDEX_GPIOD (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC2_Pos) 211 #define RIF_RCC_PERIPH_INDEX_GPIOE (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC3_Pos) 212 #define RIF_RCC_PERIPH_INDEX_GPIOF (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC4_Pos) 213 #define RIF_RCC_PERIPH_INDEX_GPIOG (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC5_Pos) 214 #define RIF_RCC_PERIPH_INDEX_GPIOH (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC6_Pos) 215 #define RIF_RCC_PERIPH_INDEX_GPION (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC8_Pos) 216 #define RIF_RCC_PERIPH_INDEX_GPIOO (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC9_Pos) 217 #define RIF_RCC_PERIPH_INDEX_GPIOP (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC10_Pos) 218 #define RIF_RCC_PERIPH_INDEX_GPIOQ (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC11_Pos) 219 #define RIF_RCC_PERIPH_INDEX_DTS (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC13_Pos) 220 #define RIF_RCC_PERIPH_INDEX_MCO1 (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC14_Pos) 221 #define RIF_RCC_PERIPH_INDEX_MCO2 (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC15_Pos) 222 #if defined(NPU_PRESENT) 223 #define RIF_RCC_PERIPH_INDEX_NPURAM0 (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC17_Pos) 224 #define RIF_RCC_PERIPH_INDEX_NPURAM1 (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC18_Pos) 225 #define RIF_RCC_PERIPH_INDEX_NPURAM2 (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC19_Pos) 226 #define RIF_RCC_PERIPH_INDEX_NPURAM3 (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC20_Pos) 227 #endif /* defined(NPU_PRESENT) */ 228 #define RIF_RCC_PERIPH_INDEX_XSPIPHYCOMP (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC22_Pos) 229 #define RIF_RCC_PERIPH_INDEX_XSPIPHY1 (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC23_Pos) 230 #define RIF_RCC_PERIPH_INDEX_XSPIPHY2 (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC24_Pos) 231 #define RIF_RCC_PERIPH_INDEX_HDP (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC27_Pos) 232 #define RIF_RCC_PERIPH_INDEX_RAMCFG (RIF_PERIPH_REG5 | RIFSC_RISC_SECCFGRx_SEC30_Pos) 233 /** 234 * @} 235 */ 236 237 /** @defgroup RIF_AWARE_PERIPHERAL_INDEX RIF-aware Peripheral index 238 * @{ 239 */ 240 #define RIF_AWARE_PERIPH_INDEX_CM55 (RIF_PERIPH_REG4 | IAC_IERx_IAIE0_Pos) 241 #define RIF_AWARE_PERIPH_INDEX_EXTI (RIF_PERIPH_REG4 | IAC_IERx_IAIE1_Pos) 242 #define RIF_AWARE_PERIPH_INDEX_GPDMA1 RIF_RCC_PERIPH_INDEX_GPDMA1 243 #define RIF_AWARE_PERIPH_INDEX_HPDMA1 RIF_RCC_PERIPH_INDEX_HPDMA1 244 #define RIF_AWARE_PERIPH_INDEX_RTC RIF_RCC_PERIPH_INDEX_RTC 245 #define RIF_AWARE_PERIPH_INDEX_TAMP (RIF_PERIPH_REG4 | IAC_IERx_IAIE6_Pos) 246 #define RIF_AWARE_PERIPH_INDEX_BSEC (RIF_PERIPH_REG4 | IAC_IERx_IAIE7_Pos) 247 #define RIF_AWARE_PERIPH_INDEX_RCC (RIF_PERIPH_REG4 | IAC_IERx_IAIE8_Pos) 248 #define RIF_AWARE_PERIPH_INDEX_PWR (RIF_PERIPH_REG4 | IAC_IERx_IAIE9_Pos) 249 #define RIF_AWARE_PERIPH_INDEX_IAC (RIF_PERIPH_REG4 | IAC_IERx_IAIE10_Pos) 250 #define RIF_AWARE_PERIPH_INDEX_RISAF1 (RIF_PERIPH_REG4 | IAC_IERx_IAIE11_Pos) 251 #define RIF_AWARE_PERIPH_INDEX_RISAF2 RIF_RCC_PERIPH_INDEX_AXISRAM1 252 #define RIF_AWARE_PERIPH_INDEX_RISAF3 RIF_RCC_PERIPH_INDEX_AXISRAM2 253 #if defined(NPU_PRESENT) 254 #define RIF_AWARE_PERIPH_INDEX_RISAF4 (RIF_PERIPH_REG4 | IAC_IERx_IAIE14_Pos) 255 #define RIF_AWARE_PERIPH_INDEX_RISAF5 (RIF_PERIPH_REG4 | IAC_IERx_IAIE15_Pos) 256 #endif /* if defined(NPU_PRESENT) */ 257 #define RIF_AWARE_PERIPH_INDEX_RISAF6 (RIF_PERIPH_REG4 | IAC_IERx_IAIE16_Pos) 258 #define RIF_AWARE_PERIPH_INDEX_RISAF7 RIF_RCC_PERIPH_INDEX_FLEXRAM 259 #define RIF_AWARE_PERIPH_INDEX_RISAF8 RIF_RCC_PERIPH_INDEX_CACHEAXIRAM 260 #define RIF_AWARE_PERIPH_INDEX_RISAF9 RIF_RCC_PERIPH_INDEX_VENCRAM 261 #define RIF_AWARE_PERIPH_INDEX_RISAF11 (RIF_PERIPH_REG4 | IAC_IERx_IAIE21_Pos) 262 #define RIF_AWARE_PERIPH_INDEX_RISAF12 (RIF_PERIPH_REG4 | IAC_IERx_IAIE22_Pos) 263 #define RIF_AWARE_PERIPH_INDEX_RISAF13 (RIF_PERIPH_REG4 | IAC_IERx_IAIE23_Pos) 264 #define RIF_AWARE_PERIPH_INDEX_RISAF14 (RIF_PERIPH_REG4 | IAC_IERx_IAIE24_Pos) 265 #if defined(NPU_PRESENT) 266 #define RIF_AWARE_PERIPH_INDEX_RISAF15 RIF_RCC_PERIPH_INDEX_CACHECONFIG 267 #endif /* if defined(NPU_PRESENT) */ 268 #define RIF_AWARE_PERIPH_INDEX_RISAF21 RIF_RCC_PERIPH_INDEX_AHBRAM1 269 #define RIF_AWARE_PERIPH_INDEX_RISAF22 RIF_RCC_PERIPH_INDEX_AHBRAM2 270 #define RIF_AWARE_PERIPH_INDEX_RISAF23 RIF_RCC_PERIPH_INDEX_BKPRAM 271 #define RIF_AWARE_PERIPH_INDEX_RIFSC (RIF_PERIPH_REG4 | IAC_IERx_IAIE30_Pos) 272 /** 273 * @} 274 */ 275 /** 276 * @} 277 */ 278 279 /** @defgroup RIF_SEC_PRIV RIF Secure Privileged attributes definitions 280 * @{ 281 */ 282 #define RIF_ATTRIBUTE_NSEC 0x00000000U 283 #define RIF_ATTRIBUTE_SEC 0x00000001U 284 #define RIF_ATTRIBUTE_NPRIV 0x00000000U 285 #define RIF_ATTRIBUTE_PRIV 0x00000002U 286 /** 287 * @} 288 */ 289 290 /** @defgroup RIF_ACCESS_TYPE RIF Access type definitions 291 * @{ 292 */ 293 #define RIF_ACCTYPE_READ_FETCH 0U 294 #define RIF_ACCTYPE_WRITE 1U 295 /** 296 * @} 297 */ 298 299 /** @defgroup RIF_LOCK_STATE RIF Lock states definitions 300 * @{ 301 */ 302 #define RIF_LOCK_DISABLE 0U 303 #define RIF_LOCK_ENABLE RIFSC_RIMC_CR_GLOCK 304 /** 305 * @} 306 */ 307 308 /** 309 * @} 310 */ 311 312 313 /** @defgroup RIF_EXPORTED_CONSTANTS_RISAF RIF Exported Constants - RISAF 314 * @{ 315 */ 316 317 /** @defgroup RIF_RISAF_REGION RISAF Base region definitions 318 * @{ 319 */ 320 #define RISAF_REGION_1 0U 321 #define RISAF_REGION_2 1U 322 #define RISAF_REGION_3 2U 323 #define RISAF_REGION_4 3U 324 #define RISAF_REGION_5 4U 325 #define RISAF_REGION_6 5U 326 #define RISAF_REGION_7 6U 327 #define RISAF_REGION_8 7U 328 #define RISAF_REGION_9 8U 329 #define RISAF_REGION_10 9U 330 #define RISAF_REGION_11 10U 331 #define RISAF_REGION_12 11U 332 #define RISAF_REGION_13 12U 333 #define RISAF_REGION_14 13U 334 #define RISAF_REGION_15 14U 335 /** 336 * @} 337 */ 338 339 /** @defgroup RIF_RISAF_GRANULARITY RISAF granularity definitions 340 * @{ 341 */ 342 #if !defined(NPU_PRESENT) 343 #define RISAF1_GRANULARITY 0x1000U 344 #define RISAF2_GRANULARITY 0x1000U 345 #define RISAF3_GRANULARITY 0x1000U 346 #define RISAF6_GRANULARITY 0x1000U 347 #define RISAF7_GRANULARITY 0x1000U 348 #define RISAF8_GRANULARITY 0x1000U 349 #define RISAF9_GRANULARITY 0x1000U 350 #define RISAF11_GRANULARITY 0x1000U 351 #define RISAF12_GRANULARITY 0x1000U 352 #define RISAF13_GRANULARITY 0x1000U 353 #define RISAF14_GRANULARITY 0x1000U 354 #define RISAF21_GRANULARITY 0x0200U 355 #define RISAF22_GRANULARITY 0x0200U 356 #define RISAF23_GRANULARITY 0x0200U 357 #else 358 #define RISAF1_GRANULARITY 0x1000U 359 #define RISAF2_GRANULARITY 0x1000U 360 #define RISAF3_GRANULARITY 0x1000U 361 #define RISAF4_GRANULARITY 0x1000U 362 #define RISAF5_GRANULARITY 0x1000U 363 #define RISAF6_GRANULARITY 0x1000U 364 #define RISAF7_GRANULARITY 0x1000U 365 #define RISAF8_GRANULARITY 0x1000U 366 #define RISAF9_GRANULARITY 0x1000U 367 #define RISAF11_GRANULARITY 0x1000U 368 #define RISAF12_GRANULARITY 0x1000U 369 #define RISAF13_GRANULARITY 0x1000U 370 #define RISAF14_GRANULARITY 0x1000U 371 #define RISAF15_GRANULARITY 0x0004U 372 #define RISAF21_GRANULARITY 0x0200U 373 #define RISAF22_GRANULARITY 0x0200U 374 #define RISAF23_GRANULARITY 0x0200U 375 #endif /* !defined(NPU_PRESENT) */ 376 /** 377 * @} 378 */ 379 380 /** @defgroup RIF_RISAF_ADDSPACE RISAF address space sizes definitions 381 * @{ 382 */ 383 #if !defined(NPU_PRESENT) 384 #define RISAF1_LIMIT_ADDRESS_SPACE_SIZE 0x3FFFFFFFU 385 #define RISAF2_LIMIT_ADDRESS_SPACE_SIZE 0x000FFFFFU 386 #define RISAF3_LIMIT_ADDRESS_SPACE_SIZE 0x000FFFFFU 387 #define RISAF6_LIMIT_ADDRESS_SPACE_SIZE 0xFFFFFFFFU 388 #define RISAF7_LIMIT_ADDRESS_SPACE_SIZE 0x0007FFFFU 389 #define RISAF8_LIMIT_ADDRESS_SPACE_SIZE 0x0003FFFFU 390 #define RISAF9_LIMIT_ADDRESS_SPACE_SIZE 0x0001FFFFU 391 #define RISAF11_LIMIT_ADDRESS_SPACE_SIZE 0x0FFFFFFFU 392 #define RISAF12_LIMIT_ADDRESS_SPACE_SIZE 0x0FFFFFFFU 393 #define RISAF13_LIMIT_ADDRESS_SPACE_SIZE 0x0FFFFFFFU 394 #define RISAF14_LIMIT_ADDRESS_SPACE_SIZE 0x0FFFFFFFU 395 #define RISAF21_LIMIT_ADDRESS_SPACE_SIZE 0x00001FFFU 396 #define RISAF22_LIMIT_ADDRESS_SPACE_SIZE 0x00001FFFU 397 #define RISAF23_LIMIT_ADDRESS_SPACE_SIZE 0x00000FFFU 398 #else 399 #define RISAF1_LIMIT_ADDRESS_SPACE_SIZE 0x3FFFFFFFU 400 #define RISAF2_LIMIT_ADDRESS_SPACE_SIZE 0x000FFFFFU 401 #define RISAF3_LIMIT_ADDRESS_SPACE_SIZE 0x000FFFFFU 402 #define RISAF4_LIMIT_ADDRESS_SPACE_SIZE 0xFFFFFFFFU 403 #define RISAF5_LIMIT_ADDRESS_SPACE_SIZE 0xFFFFFFFFU 404 #define RISAF6_LIMIT_ADDRESS_SPACE_SIZE 0xFFFFFFFFU 405 #define RISAF7_LIMIT_ADDRESS_SPACE_SIZE 0x0007FFFFU 406 #define RISAF8_LIMIT_ADDRESS_SPACE_SIZE 0x0003FFFFU 407 #define RISAF9_LIMIT_ADDRESS_SPACE_SIZE 0x0001FFFFU 408 #define RISAF11_LIMIT_ADDRESS_SPACE_SIZE 0x0FFFFFFFU 409 #define RISAF12_LIMIT_ADDRESS_SPACE_SIZE 0x0FFFFFFFU 410 #define RISAF13_LIMIT_ADDRESS_SPACE_SIZE 0x0FFFFFFFU 411 #define RISAF14_LIMIT_ADDRESS_SPACE_SIZE 0x0FFFFFFFU 412 #define RISAF15_LIMIT_ADDRESS_SPACE_SIZE 0x00000FFFU 413 #define RISAF21_LIMIT_ADDRESS_SPACE_SIZE 0x00001FFFU 414 #define RISAF22_LIMIT_ADDRESS_SPACE_SIZE 0x00001FFFU 415 #define RISAF23_LIMIT_ADDRESS_SPACE_SIZE 0x00000FFFU 416 #endif /* !defined(NPU_PRESENT) */ 417 /** 418 * @} 419 */ 420 421 /** @defgroup RIF_RISAF_SUBREGION RIF subregion definitions 422 * @{ 423 */ 424 #define RISAF_SUBREGION_A 0U 425 #define RISAF_SUBREGION_B 1U 426 /** 427 * @} 428 */ 429 430 /** @defgroup RIF_RISAF_FILTERING_MODE RISAF Filtering mode definitions 431 * @{ 432 */ 433 #define RISAF_FILTER_DISABLE 0U 434 #define RISAF_FILTER_ENABLE RISAF_REGx_CFGR_BREN 435 /** 436 * @} 437 */ 438 439 /** @defgroup RIF_RISAF_DELEGATION_MODE RISAF Delegation mode definitions 440 * @{ 441 */ 442 #define RISAF_DELEGATION_DISABLE 0U 443 #define RISAF_DELEGATION_ENABLE RISAF_REGx_zNESTR_DCEN 444 /** 445 * @} 446 */ 447 448 /** @defgroup RIF_RISAF_READ_WRITE RISAF Read/Write definitions 449 * @{ 450 */ 451 #define RISAF_READ_DISABLE 0U 452 #define RISAF_READ_ENABLE RISAF_REGx_zCFGR_RDEN 453 #define RISAF_WRITE_DISABLE 0U 454 #define RISAF_WRITE_ENABLE RISAF_REGx_zCFGR_WREN 455 /** 456 * @} 457 */ 458 459 /** @defgroup RIF_RISAF_ILLEGAL_ACCESS RISAF Illegal Access definitions 460 * @{ 461 */ 462 #define RISAF_ILLEGAL_ACCESS_NONE 0U 463 #define RISAF_ILLEGAL_CONFIGURATION_ACCESS RISAF_IASR_CAEF 464 #define RISAF_ILLEGAL_ACCESS RISAF_IASR_IAEF 465 /** 466 * @} 467 */ 468 469 /** 470 * @} 471 */ 472 473 /* Exported types ------------------------------------------------------------*/ 474 /** @defgroup RIF_Exported_Types RIF Exported Types 475 * @{ 476 */ 477 478 /** 479 * @brief RIFSC Master CID attributes configuration structure 480 */ 481 typedef struct 482 { 483 uint32_t MasterCID; /*!< One of @ref RIF_COMPARTMENT_ID */ 484 uint32_t SecPriv; /*!< A combination of @ref RIF_SEC_PRIV */ 485 } RIMC_MasterConfig_t; 486 487 /** 488 * @brief RISAF base region configuration structure 489 */ 490 typedef struct 491 { 492 uint32_t Filtering; /*!< One of @ref RIF_RISAF_FILTERING_MODE */ 493 uint32_t Secure; /*!< One of @ref RIF_SEC_PRIV */ 494 uint32_t PrivWhitelist; /*!< A combination of @ref RIF_COMPARTMENT_ID */ 495 uint32_t ReadWhitelist; /*!< A combination of @ref RIF_COMPARTMENT_ID */ 496 uint32_t WriteWhitelist; /*!< A combination of @ref RIF_COMPARTMENT_ID */ 497 uint32_t StartAddress; /*!< Base region start, address offset to the base address of the protected address space */ 498 uint32_t EndAddress; /*!< Base region end, address offset to the base address of the protected address space */ 499 } RISAF_BaseRegionConfig_t; 500 501 /** 502 * @brief RISAF subregion configuration structure 503 */ 504 typedef struct 505 { 506 uint32_t Filtering; /*!< One of @ref RIF_RISAF_FILTERING_MODE */ 507 uint32_t CID; /*!< One of @ref RIF_COMPARTMENT_ID */ 508 uint32_t SecPriv; /*!< A combination of @ref RIF_SEC_PRIV */ 509 uint32_t ReadWrite; /*!< A combination of @ref RIF_RISAF_READ_WRITE */ 510 uint32_t Lock; /*!< One of @ref RIF_LOCK_STATE */ 511 uint32_t StartAddress; /*!< Subregion start, address offset to the base address of the protected address space */ 512 uint32_t EndAddress; /*!< Subregion end, address offset to the base address of the protected address space */ 513 } RISAF_SubRegionConfig_t; 514 515 /** 516 * @brief RISAF delegation structure 517 */ 518 typedef struct 519 { 520 uint32_t Delegation; /*!< Enable or Disable */ 521 uint32_t DelegatedCID; /*!< One of @ref RIF_COMPARTMENT_ID */ 522 } RISAF_DelegationConfig_t; 523 524 /** 525 * @brief RISAF illegal access detection structure 526 */ 527 /** 528 * @brief RISAF illegal access detection data structure 529 */ 530 typedef struct 531 { 532 uint32_t CID; /*!< One of @ref RIF_COMPARTMENT_ID */ 533 uint32_t SecPriv; /*!< A combination of @ref RIF_SEC_PRIV */ 534 uint32_t AccessType; /*!< One of @ref RIF_ACCESS_TYPE */ 535 uint32_t Address; 536 } RISAF_IllegalAccessData_t; 537 538 typedef struct 539 { 540 uint32_t ErrorType; /*!< One of @ref RIF_RISAF_ILLEGAL_ACCESS */ 541 RISAF_IllegalAccessData_t Data; 542 } RISAF_IllegalAccess_t; 543 544 /** 545 * @} 546 */ 547 548 /* Private constants ---------------------------------------------------------*/ 549 /** @defgroup RCC_Private_Constants RCC Private Constants 550 * @{ 551 */ 552 553 /** @defgroup RIF_REG_INDEX RIF register index definition 554 * @{ 555 */ 556 /* Composition definition for Peripheral identifier parameter (PeriphId) used in 557 * RIF RISC and IAC related functions. 558 * Bitmap Definition 559 * bits[31:28] Field "register". Define the register index a peripheral belongs to. 560 * bits[4:0] Field "bit position". Define the bit position within the 561 * register dedicated to the peripheral, value from 0 to 31. 562 */ 563 #define RIF_PERIPH_REG_SHIFT 28U 564 #define RIF_PERIPH_REG 0xF0000000U 565 #define RIF_PERIPH_REG0 0x00000000U 566 #define RIF_PERIPH_REG1 0x10000000U 567 #define RIF_PERIPH_REG2 0x20000000U 568 #define RIF_PERIPH_REG3 0x30000000U 569 #define RIF_PERIPH_REG4 0x40000000U 570 #define RIF_PERIPH_REG5 0x50000000U 571 #define RIF_PERIPH_BIT_POSITION 0x0000001FU 572 /** 573 * @} 574 */ 575 576 /** @defgroup RIF_MASK RIF register masks 577 * @{ 578 */ 579 #define RIF_CID_MASK 0x000000FFU 580 #define RIF_ATTRIBUTE_MASK 0x00000003U 581 #define RISAF_READ_WRITE_MASK (RISAF_READ_ENABLE | RISAF_WRITE_ENABLE) 582 /** 583 * @} 584 */ 585 586 /** 587 * @} 588 */ 589 590 /* Private macros ------------------------------------------------------------*/ 591 /** @defgroup RIF_Private_Macros_Common RIF Private Macros - Common 592 * @{ 593 */ 594 #define IS_RIF_CID(__CID__) (((uint32_t)(__CID__) & ~RIF_CID_MASK) == 0x00U) 595 596 #define IS_RIF_SINGLE_CID(__CID__) (((__CID__) == RIF_CID_0) || \ 597 ((__CID__) == RIF_CID_1) || \ 598 ((__CID__) == RIF_CID_2) || \ 599 ((__CID__) == RIF_CID_3) || \ 600 ((__CID__) == RIF_CID_4) || \ 601 ((__CID__) == RIF_CID_5) || \ 602 ((__CID__) == RIF_CID_6) || \ 603 ((__CID__) == RIF_CID_7)) 604 605 #define IS_RIF_MASTER_CID(__CID__) (((uint32_t)(__CID__) != RIF_CID_7) && \ 606 (((uint32_t)(__CID__) & ~RIF_CID_MASK) == 0x00U)) 607 608 609 #if defined(NPU_PRESENT) 610 #define IS_RIF_MASTER_INDEX(__INDEX__) (((__INDEX__) == RIF_MASTER_INDEX_ETR) || \ 611 ((__INDEX__) == RIF_MASTER_INDEX_NPU) || \ 612 ((__INDEX__) == RIF_MASTER_INDEX_SDMMC1) || \ 613 ((__INDEX__) == RIF_MASTER_INDEX_SDMMC2) || \ 614 ((__INDEX__) == RIF_MASTER_INDEX_OTG1) || \ 615 ((__INDEX__) == RIF_MASTER_INDEX_OTG2) || \ 616 ((__INDEX__) == RIF_MASTER_INDEX_ETH1) || \ 617 ((__INDEX__) == RIF_MASTER_INDEX_GPU2D) || \ 618 ((__INDEX__) == RIF_MASTER_INDEX_DMA2D) || \ 619 ((__INDEX__) == RIF_MASTER_INDEX_DCMIPP) || \ 620 ((__INDEX__) == RIF_MASTER_INDEX_LTDC1) || \ 621 ((__INDEX__) == RIF_MASTER_INDEX_LTDC2) || \ 622 ((__INDEX__) == RIF_MASTER_INDEX_VENC)) 623 #else 624 #define IS_RIF_MASTER_INDEX(__INDEX__) (((__INDEX__) == RIF_MASTER_INDEX_ETR) || \ 625 ((__INDEX__) == RIF_MASTER_INDEX_SDMMC1) || \ 626 ((__INDEX__) == RIF_MASTER_INDEX_SDMMC2) || \ 627 ((__INDEX__) == RIF_MASTER_INDEX_OTG1) || \ 628 ((__INDEX__) == RIF_MASTER_INDEX_OTG2) || \ 629 ((__INDEX__) == RIF_MASTER_INDEX_ETH1) || \ 630 ((__INDEX__) == RIF_MASTER_INDEX_GPU2D) || \ 631 ((__INDEX__) == RIF_MASTER_INDEX_DMA2D) || \ 632 ((__INDEX__) == RIF_MASTER_INDEX_DCMIPP) || \ 633 ((__INDEX__) == RIF_MASTER_INDEX_LTDC1) || \ 634 ((__INDEX__) == RIF_MASTER_INDEX_LTDC2) || \ 635 ((__INDEX__) == RIF_MASTER_INDEX_VENC)) 636 #endif /* defined(NPU_PRESENT) */ 637 638 #if !defined(NPU_PRESENT) && !defined(CRYP) 639 #define IS_RIF_RISC_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI1) || \ 640 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI2) || \ 641 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI3) || \ 642 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI4) || \ 643 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI5) || \ 644 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI6) || \ 645 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAI1) || \ 646 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAI2) || \ 647 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C1) || \ 648 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C2) || \ 649 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C3) || \ 650 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C4) || \ 651 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I3C1) || \ 652 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I3C2) || \ 653 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART1) || \ 654 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART2) || \ 655 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART3) || \ 656 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART4) || \ 657 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART5) || \ 658 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART6) || \ 659 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART7) || \ 660 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART8) || \ 661 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART9) || \ 662 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART10) || \ 663 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPUART1) || \ 664 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_FDCAN1) || \ 665 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM1) || \ 666 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM2) || \ 667 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM3) || \ 668 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM4) || \ 669 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM5) || \ 670 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM6) || \ 671 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM7) || \ 672 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM8) || \ 673 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM9) || \ 674 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM10) || \ 675 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM11) || \ 676 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM12) || \ 677 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM13) || \ 678 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM14) || \ 679 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM15) || \ 680 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM16) || \ 681 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM17) || \ 682 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM18) || \ 683 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GFXTIM) || \ 684 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM1) || \ 685 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM2) || \ 686 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM3) || \ 687 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM4) || \ 688 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM5) || \ 689 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ADF1) || \ 690 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MDF1) || \ 691 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SDMMC1) || \ 692 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SDMMC2) || \ 693 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MDIOS) || \ 694 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_OTG1HS) || \ 695 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_OTG2HS) || \ 696 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UCPD1) || \ 697 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ETH1) || \ 698 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPDIFRX) || \ 699 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SYSCFG) || \ 700 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ADC12) || \ 701 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_VREFBUF) || \ 702 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CRC) || \ 703 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_IWDG) || \ 704 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_WWDG) || \ 705 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_RNG) || \ 706 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_PKA) || \ 707 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_HASH) || \ 708 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI1) || \ 709 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI2) || \ 710 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI3) || \ 711 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPIM) || \ 712 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_FMC) || \ 713 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CSI) || \ 714 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DCMIPP) || \ 715 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DCMI) || \ 716 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_JPEG) || \ 717 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_VENC) || \ 718 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ICACHE) || \ 719 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GPU2D) || \ 720 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GFXMMU) || \ 721 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DMA2D) || \ 722 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDC) || \ 723 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDCL1) || \ 724 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDCL2)) 725 726 #define IS_RIF_RCC_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPDMA1) || \ 727 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_HPDMA1) || \ 728 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_RTC) || \ 729 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AXISRAM1) || \ 730 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AXISRAM2) || \ 731 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_FLEXRAM) || \ 732 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_CACHEAXIRAM) || \ 733 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_VENCRAM) || \ 734 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AHBRAM1) || \ 735 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AHBRAM2) || \ 736 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_BKPRAM) || \ 737 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOA) || \ 738 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOB) || \ 739 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOC) || \ 740 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOD) || \ 741 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOE) || \ 742 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOF) || \ 743 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOG) || \ 744 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOH) || \ 745 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPION) || \ 746 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOO) || \ 747 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOP) || \ 748 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOQ) || \ 749 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_DTS) || \ 750 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_MCO1) || \ 751 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_MCO2) || \ 752 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHYCOMP) || \ 753 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHY1) || \ 754 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHY2) || \ 755 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_HDP) || \ 756 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_RAMCFG)) 757 758 #define IS_RIF_AWARE_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_AWARE_PERIPH_INDEX_CM55) || \ 759 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_EXTI) || \ 760 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_GPDMA1) || \ 761 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_HPDMA1) || \ 762 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RTC) || \ 763 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_TAMP) || \ 764 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_BSEC) || \ 765 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RCC) || \ 766 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_PWR) || \ 767 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_IAC) || \ 768 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF1) || \ 769 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF2) || \ 770 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF3) || \ 771 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF6) || \ 772 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF7) || \ 773 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF8) || \ 774 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF9) || \ 775 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF11) || \ 776 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF12) || \ 777 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF13) || \ 778 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF14) || \ 779 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF21) || \ 780 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF22) || \ 781 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF23) || \ 782 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RIFSC)) 783 #endif /* !defined(NPU_PRESENT) && !defined(CRYP) */ 784 785 #if defined(NPU_PRESENT) && !defined(CRYP) 786 #define IS_RIF_RISC_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI1) || \ 787 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI2) || \ 788 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI3) || \ 789 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI4) || \ 790 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI5) || \ 791 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI6) || \ 792 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAI1) || \ 793 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAI2) || \ 794 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C1) || \ 795 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C2) || \ 796 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C3) || \ 797 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C4) || \ 798 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I3C1) || \ 799 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I3C2) || \ 800 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART1) || \ 801 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART2) || \ 802 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART3) || \ 803 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART4) || \ 804 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART5) || \ 805 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART6) || \ 806 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART7) || \ 807 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART8) || \ 808 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART9) || \ 809 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART10) || \ 810 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPUART1) || \ 811 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_FDCAN1) || \ 812 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM1) || \ 813 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM2) || \ 814 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM3) || \ 815 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM4) || \ 816 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM5) || \ 817 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM6) || \ 818 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM7) || \ 819 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM8) || \ 820 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM9) || \ 821 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM10) || \ 822 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM11) || \ 823 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM12) || \ 824 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM13) || \ 825 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM14) || \ 826 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM15) || \ 827 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM16) || \ 828 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM17) || \ 829 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM18) || \ 830 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GFXTIM) || \ 831 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM1) || \ 832 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM2) || \ 833 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM3) || \ 834 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM4) || \ 835 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM5) || \ 836 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ADF1) || \ 837 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MDF1) || \ 838 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SDMMC1) || \ 839 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SDMMC2) || \ 840 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MDIOS) || \ 841 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_OTG1HS) || \ 842 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_OTG2HS) || \ 843 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UCPD1) || \ 844 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ETH1) || \ 845 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPDIFRX) || \ 846 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SYSCFG) || \ 847 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ADC12) || \ 848 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_VREFBUF) || \ 849 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CRC) || \ 850 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_IWDG) || \ 851 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_WWDG) || \ 852 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_RNG) || \ 853 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_PKA) || \ 854 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_HASH) || \ 855 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI1) || \ 856 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI2) || \ 857 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI3) || \ 858 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPIM) || \ 859 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_FMC) || \ 860 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CSI) || \ 861 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DCMIPP) || \ 862 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DCMI) || \ 863 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_JPEG) || \ 864 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_VENC) || \ 865 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ICACHE) || \ 866 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GPU2D) || \ 867 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GFXMMU) || \ 868 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DMA2D) || \ 869 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDC) || \ 870 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDCL1) || \ 871 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDCL2) || \ 872 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_NPU)) 873 874 #define IS_RIF_RCC_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPDMA1) || \ 875 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_HPDMA1) || \ 876 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_RTC) || \ 877 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AXISRAM1) || \ 878 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AXISRAM2) || \ 879 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_FLEXRAM) || \ 880 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_CACHEAXIRAM) || \ 881 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_VENCRAM) || \ 882 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_CACHECONFIG) || \ 883 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AHBRAM1) || \ 884 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AHBRAM2) || \ 885 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_BKPRAM) || \ 886 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOA) || \ 887 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOB) || \ 888 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOC) || \ 889 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOD) || \ 890 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOE) || \ 891 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOF) || \ 892 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOG) || \ 893 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOH) || \ 894 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPION) || \ 895 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOO) || \ 896 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOP) || \ 897 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOQ) || \ 898 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_DTS) || \ 899 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_MCO1) || \ 900 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_MCO2) || \ 901 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_NPURAM0) || \ 902 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_NPURAM1) || \ 903 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_NPURAM2) || \ 904 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_NPURAM3) || \ 905 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHYCOMP) || \ 906 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHY1) || \ 907 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHY2) || \ 908 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_HDP) || \ 909 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_RAMCFG)) 910 911 #define IS_RIF_AWARE_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_AWARE_PERIPH_INDEX_CM55) || \ 912 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_EXTI) || \ 913 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_GPDMA1) || \ 914 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_HPDMA1) || \ 915 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RTC) || \ 916 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_TAMP) || \ 917 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_BSEC) || \ 918 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RCC) || \ 919 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_PWR) || \ 920 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_IAC) || \ 921 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF1) || \ 922 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF2) || \ 923 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF3) || \ 924 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF4) || \ 925 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF5) || \ 926 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF6) || \ 927 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF7) || \ 928 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF8) || \ 929 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF9) || \ 930 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF11) || \ 931 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF12) || \ 932 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF13) || \ 933 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF14) || \ 934 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF15) || \ 935 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF21) || \ 936 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF22) || \ 937 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF23) || \ 938 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RIFSC)) 939 #endif /* defined(NPU_PRESENT) && !defined(CRYP) */ 940 941 #if !defined(NPU_PRESENT) && defined(CRYP) 942 #define IS_RIF_RISC_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI1) || \ 943 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI2) || \ 944 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI3) || \ 945 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI4) || \ 946 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI5) || \ 947 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI6) || \ 948 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAI1) || \ 949 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAI2) || \ 950 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C1) || \ 951 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C2) || \ 952 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C3) || \ 953 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C4) || \ 954 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I3C1) || \ 955 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I3C2) || \ 956 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART1) || \ 957 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART2) || \ 958 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART3) || \ 959 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART4) || \ 960 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART5) || \ 961 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART6) || \ 962 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART7) || \ 963 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART8) || \ 964 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART9) || \ 965 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART10) || \ 966 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPUART1) || \ 967 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_FDCAN1) || \ 968 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM1) || \ 969 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM2) || \ 970 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM3) || \ 971 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM4) || \ 972 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM5) || \ 973 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM6) || \ 974 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM7) || \ 975 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM8) || \ 976 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM9) || \ 977 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM10) || \ 978 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM11) || \ 979 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM12) || \ 980 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM13) || \ 981 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM14) || \ 982 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM15) || \ 983 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM16) || \ 984 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM17) || \ 985 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM18) || \ 986 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GFXTIM) || \ 987 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM1) || \ 988 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM2) || \ 989 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM3) || \ 990 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM4) || \ 991 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM5) || \ 992 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ADF1) || \ 993 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MDF1) || \ 994 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SDMMC1) || \ 995 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SDMMC2) || \ 996 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MDIOS) || \ 997 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_OTG1HS) || \ 998 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_OTG2HS) || \ 999 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UCPD1) || \ 1000 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ETH1) || \ 1001 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPDIFRX) || \ 1002 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SYSCFG) || \ 1003 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ADC12) || \ 1004 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_VREFBUF) || \ 1005 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CRC) || \ 1006 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_IWDG) || \ 1007 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_WWDG) || \ 1008 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_RNG) || \ 1009 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_PKA) || \ 1010 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAES) || \ 1011 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_HASH) || \ 1012 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CRYP) || \ 1013 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MCE1) || \ 1014 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MCE2) || \ 1015 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MCE3) || \ 1016 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MCE4) || \ 1017 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI1) || \ 1018 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI2) || \ 1019 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI3) || \ 1020 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPIM) || \ 1021 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_FMC) || \ 1022 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CSI) || \ 1023 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DCMIPP) || \ 1024 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DCMI) || \ 1025 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_JPEG) || \ 1026 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_VENC) || \ 1027 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ICACHE) || \ 1028 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GPU2D) || \ 1029 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GFXMMU) || \ 1030 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DMA2D) || \ 1031 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDC) || \ 1032 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDCL1) || \ 1033 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDCL2)) 1034 1035 #define IS_RIF_RCC_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPDMA1) || \ 1036 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_HPDMA1) || \ 1037 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_RTC) || \ 1038 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AXISRAM1) || \ 1039 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AXISRAM2) || \ 1040 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_FLEXRAM) || \ 1041 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_CACHEAXIRAM) || \ 1042 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_VENCRAM) || \ 1043 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AHBRAM1) || \ 1044 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AHBRAM2) || \ 1045 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_BKPRAM) || \ 1046 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOA) || \ 1047 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOB) || \ 1048 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOC) || \ 1049 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOD) || \ 1050 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOE) || \ 1051 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOF) || \ 1052 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOG) || \ 1053 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOH) || \ 1054 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPION) || \ 1055 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOO) || \ 1056 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOP) || \ 1057 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOQ) || \ 1058 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_DTS) || \ 1059 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_MCO1) || \ 1060 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_MCO2) || \ 1061 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHYCOMP) || \ 1062 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHY1) || \ 1063 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHY2) || \ 1064 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_HDP) || \ 1065 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_RAMCFG)) 1066 1067 #define IS_RIF_AWARE_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_AWARE_PERIPH_INDEX_CM55) || \ 1068 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_EXTI) || \ 1069 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_GPDMA1) || \ 1070 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_HPDMA1) || \ 1071 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RTC) || \ 1072 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_TAMP) || \ 1073 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_BSEC) || \ 1074 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RCC) || \ 1075 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_PWR) || \ 1076 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_IAC) || \ 1077 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF1) || \ 1078 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF2) || \ 1079 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF3) || \ 1080 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF6) || \ 1081 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF7) || \ 1082 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF8) || \ 1083 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF9) || \ 1084 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF11) || \ 1085 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF12) || \ 1086 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF13) || \ 1087 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF14) || \ 1088 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF21) || \ 1089 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF22) || \ 1090 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF23) || \ 1091 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RIFSC)) 1092 #endif /* !defined(NPU_PRESENT) && defined(CRYP) */ 1093 1094 #if defined(NPU_PRESENT) && defined(CRYP) 1095 #define IS_RIF_RISC_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI1) || \ 1096 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI2) || \ 1097 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI3) || \ 1098 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI4) || \ 1099 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI5) || \ 1100 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPI6) || \ 1101 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAI1) || \ 1102 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAI2) || \ 1103 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C1) || \ 1104 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C2) || \ 1105 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C3) || \ 1106 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I2C4) || \ 1107 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I3C1) || \ 1108 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_I3C2) || \ 1109 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART1) || \ 1110 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART2) || \ 1111 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART3) || \ 1112 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART4) || \ 1113 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART5) || \ 1114 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART6) || \ 1115 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART7) || \ 1116 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART8) || \ 1117 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UART9) || \ 1118 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_USART10) || \ 1119 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPUART1) || \ 1120 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_FDCAN1) || \ 1121 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM1) || \ 1122 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM2) || \ 1123 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM3) || \ 1124 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM4) || \ 1125 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM5) || \ 1126 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM6) || \ 1127 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM7) || \ 1128 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM8) || \ 1129 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM9) || \ 1130 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM10) || \ 1131 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM11) || \ 1132 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM12) || \ 1133 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM13) || \ 1134 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM14) || \ 1135 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM15) || \ 1136 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM16) || \ 1137 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM17) || \ 1138 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_TIM18) || \ 1139 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GFXTIM) || \ 1140 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM1) || \ 1141 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM2) || \ 1142 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM3) || \ 1143 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM4) || \ 1144 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LPTIM5) || \ 1145 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ADF1) || \ 1146 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MDF1) || \ 1147 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SDMMC1) || \ 1148 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SDMMC2) || \ 1149 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MDIOS) || \ 1150 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_OTG1HS) || \ 1151 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_OTG2HS) || \ 1152 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_UCPD1) || \ 1153 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ETH1) || \ 1154 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SPDIFRX) || \ 1155 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SYSCFG) || \ 1156 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ADC12) || \ 1157 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_VREFBUF) || \ 1158 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CRC) || \ 1159 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_IWDG) || \ 1160 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_WWDG) || \ 1161 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_RNG) || \ 1162 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_PKA) || \ 1163 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_SAES) || \ 1164 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_HASH) || \ 1165 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CRYP) || \ 1166 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MCE1) || \ 1167 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MCE2) || \ 1168 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MCE3) || \ 1169 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_MCE4) || \ 1170 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI1) || \ 1171 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI2) || \ 1172 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPI3) || \ 1173 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_XSPIM) || \ 1174 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_FMC) || \ 1175 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_CSI) || \ 1176 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DCMIPP) || \ 1177 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DCMI) || \ 1178 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_JPEG) || \ 1179 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_VENC) || \ 1180 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_ICACHE) || \ 1181 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GPU2D) || \ 1182 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_GFXMMU) || \ 1183 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_DMA2D) || \ 1184 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDC) || \ 1185 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDCL1) || \ 1186 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_LTDCL2) || \ 1187 ((__INDEX__) == RIF_RISC_PERIPH_INDEX_NPU)) 1188 1189 #define IS_RIF_RCC_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPDMA1) || \ 1190 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_HPDMA1) || \ 1191 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_RTC) || \ 1192 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AXISRAM1) || \ 1193 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AXISRAM2) || \ 1194 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_FLEXRAM) || \ 1195 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_CACHEAXIRAM) || \ 1196 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_VENCRAM) || \ 1197 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_CACHECONFIG) || \ 1198 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AHBRAM1) || \ 1199 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_AHBRAM2) || \ 1200 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_BKPRAM) || \ 1201 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOA) || \ 1202 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOB) || \ 1203 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOC) || \ 1204 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOD) || \ 1205 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOE) || \ 1206 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOF) || \ 1207 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOG) || \ 1208 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOH) || \ 1209 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPION) || \ 1210 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOO) || \ 1211 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOP) || \ 1212 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_GPIOQ) || \ 1213 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_DTS) || \ 1214 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_MCO1) || \ 1215 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_MCO2) || \ 1216 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_NPURAM0) || \ 1217 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_NPURAM1) || \ 1218 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_NPURAM2) || \ 1219 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_NPURAM3) || \ 1220 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHYCOMP) || \ 1221 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHY1) || \ 1222 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_XSPIPHY2) || \ 1223 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_HDP) || \ 1224 ((__INDEX__) == RIF_RCC_PERIPH_INDEX_RAMCFG)) 1225 1226 #define IS_RIF_AWARE_PERIPH_INDEX(__INDEX__) (((__INDEX__) == RIF_AWARE_PERIPH_INDEX_CM55) || \ 1227 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_EXTI) || \ 1228 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_GPDMA1) || \ 1229 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_HPDMA1) || \ 1230 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RTC) || \ 1231 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_TAMP) || \ 1232 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_BSEC) || \ 1233 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RCC) || \ 1234 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_PWR) || \ 1235 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_IAC) || \ 1236 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF1) || \ 1237 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF2) || \ 1238 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF3) || \ 1239 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF4) || \ 1240 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF5) || \ 1241 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF6) || \ 1242 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF7) || \ 1243 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF8) || \ 1244 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF9) || \ 1245 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF11) || \ 1246 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF12) || \ 1247 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF13) || \ 1248 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF14) || \ 1249 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF15) || \ 1250 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF21) || \ 1251 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF22) || \ 1252 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RISAF23) || \ 1253 ((__INDEX__) == RIF_AWARE_PERIPH_INDEX_RIFSC)) 1254 #endif /* defined(NPU_PRESENT) && defined(CRYP) */ 1255 1256 #define IS_RIF_SEC_PRIV_ATTRIBUTE(__ATTRIBUTE__) (((uint32_t)(__ATTRIBUTE__) & ~RIF_ATTRIBUTE_MASK) == 0x00U) 1257 1258 #define IS_RIF_ACCESS_TYPE(__ACCTYPE__) (((__ACCTYPE__) == RIF_ACCTYPE_READ_FETCH) || \ 1259 ((__ACCTYPE__) == RIF_ACCTYPE_WRITE)) 1260 1261 #define IS_RIF_LOCK_STATE(__LOCK__) (((__LOCK__) == RIF_LOCK_DISABLE) || \ 1262 ((__LOCK__) == RIF_LOCK_ENABLE)) 1263 /** 1264 * @} 1265 */ 1266 1267 /** @defgroup RIF_Private_Macros_RISAF RIF Private Macros - RISAF 1268 * @{ 1269 */ 1270 1271 #if !defined(NPU_PRESENT) 1272 #define IS_RISAF_INSTANCE(__INSTANCE__) (((__INSTANCE__) == RISAF1) || \ 1273 ((__INSTANCE__) == RISAF2) || \ 1274 ((__INSTANCE__) == RISAF3) || \ 1275 ((__INSTANCE__) == RISAF6) || \ 1276 ((__INSTANCE__) == RISAF7) || \ 1277 ((__INSTANCE__) == RISAF8) || \ 1278 ((__INSTANCE__) == RISAF9) || \ 1279 ((__INSTANCE__) == RISAF11) || \ 1280 ((__INSTANCE__) == RISAF12) || \ 1281 ((__INSTANCE__) == RISAF13) || \ 1282 ((__INSTANCE__) == RISAF14) || \ 1283 ((__INSTANCE__) == RISAF21) || \ 1284 ((__INSTANCE__) == RISAF22) || \ 1285 ((__INSTANCE__) == RISAF23)) 1286 #else 1287 #define IS_RISAF_INSTANCE(__INSTANCE__) (((__INSTANCE__) == RISAF1) || \ 1288 ((__INSTANCE__) == RISAF2) || \ 1289 ((__INSTANCE__) == RISAF3) || \ 1290 ((__INSTANCE__) == RISAF4) || \ 1291 ((__INSTANCE__) == RISAF5) || \ 1292 ((__INSTANCE__) == RISAF6) || \ 1293 ((__INSTANCE__) == RISAF7) || \ 1294 ((__INSTANCE__) == RISAF8) || \ 1295 ((__INSTANCE__) == RISAF9) || \ 1296 ((__INSTANCE__) == RISAF11) || \ 1297 ((__INSTANCE__) == RISAF12) || \ 1298 ((__INSTANCE__) == RISAF13) || \ 1299 ((__INSTANCE__) == RISAF14) || \ 1300 ((__INSTANCE__) == RISAF15) || \ 1301 ((__INSTANCE__) == RISAF21) || \ 1302 ((__INSTANCE__) == RISAF22) || \ 1303 ((__INSTANCE__) == RISAF23)) 1304 #endif /* !defined(NPU_PRESENT) */ 1305 1306 #define IS_RISAF_REGION(__REGION__) (((__REGION__) == RISAF_REGION_1) || \ 1307 ((__REGION__) == RISAF_REGION_2) || \ 1308 ((__REGION__) == RISAF_REGION_3) || \ 1309 ((__REGION__) == RISAF_REGION_4) || \ 1310 ((__REGION__) == RISAF_REGION_5) || \ 1311 ((__REGION__) == RISAF_REGION_6) || \ 1312 ((__REGION__) == RISAF_REGION_7) || \ 1313 ((__REGION__) == RISAF_REGION_8) || \ 1314 ((__REGION__) == RISAF_REGION_9) || \ 1315 ((__REGION__) == RISAF_REGION_10) || \ 1316 ((__REGION__) == RISAF_REGION_11) || \ 1317 ((__REGION__) == RISAF_REGION_12) || \ 1318 ((__REGION__) == RISAF_REGION_13) || \ 1319 ((__REGION__) == RISAF_REGION_14) || \ 1320 ((__REGION__) == RISAF_REGION_15)) 1321 1322 #if !defined(NPU_PRESENT) 1323 #define IS_RISAF_MAX_REGION(__INSTANCE__, __REGION__) (((__INSTANCE__) == RISAF1) ? ((__REGION__) <= RISAF_REGION_7) : \ 1324 ((__INSTANCE__) == RISAF2) ? ((__REGION__) <= RISAF_REGION_7) : \ 1325 ((__INSTANCE__) == RISAF3) ? ((__REGION__) <= RISAF_REGION_7) : \ 1326 ((__INSTANCE__) == RISAF6) ? ((__REGION__) <= RISAF_REGION_11) : \ 1327 ((__INSTANCE__) == RISAF7) ? ((__REGION__) <= RISAF_REGION_7) : \ 1328 ((__INSTANCE__) == RISAF8) ? ((__REGION__) <= RISAF_REGION_7) : \ 1329 ((__INSTANCE__) == RISAF9) ? ((__REGION__) <= RISAF_REGION_7) : \ 1330 ((__INSTANCE__) == RISAF11) ? ((__REGION__) <= RISAF_REGION_7) : \ 1331 ((__INSTANCE__) == RISAF12) ? ((__REGION__) <= RISAF_REGION_7) : \ 1332 ((__INSTANCE__) == RISAF13) ? ((__REGION__) <= RISAF_REGION_7) : \ 1333 ((__INSTANCE__) == RISAF14) ? ((__REGION__) <= RISAF_REGION_7) : \ 1334 ((__INSTANCE__) == RISAF21) ? ((__REGION__) <= RISAF_REGION_7) : \ 1335 ((__INSTANCE__) == RISAF22) ? ((__REGION__) <= RISAF_REGION_7) : \ 1336 ((__REGION__) <= RISAF_REGION_3)) 1337 #else 1338 #define IS_RISAF_MAX_REGION(__INSTANCE__, __REGION__) (((__INSTANCE__) == RISAF1) ? ((__REGION__) <= RISAF_REGION_7) : \ 1339 ((__INSTANCE__) == RISAF2) ? ((__REGION__) <= RISAF_REGION_7) : \ 1340 ((__INSTANCE__) == RISAF3) ? ((__REGION__) <= RISAF_REGION_7) : \ 1341 ((__INSTANCE__) == RISAF4) ? ((__REGION__) <= RISAF_REGION_11) : \ 1342 ((__INSTANCE__) == RISAF5) ? ((__REGION__) <= RISAF_REGION_11) : \ 1343 ((__INSTANCE__) == RISAF6) ? ((__REGION__) <= RISAF_REGION_11) : \ 1344 ((__INSTANCE__) == RISAF7) ? ((__REGION__) <= RISAF_REGION_7) : \ 1345 ((__INSTANCE__) == RISAF8) ? ((__REGION__) <= RISAF_REGION_7) : \ 1346 ((__INSTANCE__) == RISAF9) ? ((__REGION__) <= RISAF_REGION_7) : \ 1347 ((__INSTANCE__) == RISAF11) ? ((__REGION__) <= RISAF_REGION_7) : \ 1348 ((__INSTANCE__) == RISAF12) ? ((__REGION__) <= RISAF_REGION_7) : \ 1349 ((__INSTANCE__) == RISAF13) ? ((__REGION__) <= RISAF_REGION_7) : \ 1350 ((__INSTANCE__) == RISAF14) ? ((__REGION__) <= RISAF_REGION_7) : \ 1351 ((__INSTANCE__) == RISAF15) ? ((__REGION__) <= RISAF_REGION_2) : \ 1352 ((__INSTANCE__) == RISAF21) ? ((__REGION__) <= RISAF_REGION_7) : \ 1353 ((__INSTANCE__) == RISAF22) ? ((__REGION__) <= RISAF_REGION_7) : \ 1354 ((__REGION__) <= RISAF_REGION_3)) 1355 #endif /* !defined(NPU_PRESENT) */ 1356 1357 #if !defined(NPU_PRESENT) 1358 #define IS_RISAF_GRANULARITY(__INSTANCE__, __ADDRESS__) ((((__INSTANCE__) == RISAF1) ? ((__ADDRESS__) % RISAF1_GRANULARITY) : \ 1359 ((__INSTANCE__) == RISAF2) ? ((__ADDRESS__) % RISAF2_GRANULARITY) : \ 1360 ((__INSTANCE__) == RISAF3) ? ((__ADDRESS__) % RISAF3_GRANULARITY) : \ 1361 ((__INSTANCE__) == RISAF6) ? ((__ADDRESS__) % RISAF6_GRANULARITY) : \ 1362 ((__INSTANCE__) == RISAF7) ? ((__ADDRESS__) % RISAF7_GRANULARITY) : \ 1363 ((__INSTANCE__) == RISAF8) ? ((__ADDRESS__) % RISAF8_GRANULARITY) : \ 1364 ((__INSTANCE__) == RISAF9) ? ((__ADDRESS__) % RISAF9_GRANULARITY) : \ 1365 ((__INSTANCE__) == RISAF11) ? ((__ADDRESS__) % RISAF11_GRANULARITY) : \ 1366 ((__INSTANCE__) == RISAF12) ? ((__ADDRESS__) % RISAF12_GRANULARITY) : \ 1367 ((__INSTANCE__) == RISAF13) ? ((__ADDRESS__) % RISAF13_GRANULARITY) : \ 1368 ((__INSTANCE__) == RISAF14) ? ((__ADDRESS__) % RISAF14_GRANULARITY) : \ 1369 ((__INSTANCE__) == RISAF21) ? ((__ADDRESS__) % RISAF21_GRANULARITY) : \ 1370 ((__INSTANCE__) == RISAF22) ? ((__ADDRESS__) % RISAF22_GRANULARITY) : \ 1371 ((__ADDRESS__) % RISAF23_GRANULARITY)) == 0x00U) 1372 #else 1373 #define IS_RISAF_GRANULARITY(__INSTANCE__, __ADDRESS__) ((((__INSTANCE__) == RISAF1) ? ((__ADDRESS__) % RISAF1_GRANULARITY) : \ 1374 ((__INSTANCE__) == RISAF2) ? ((__ADDRESS__) % RISAF2_GRANULARITY) : \ 1375 ((__INSTANCE__) == RISAF3) ? ((__ADDRESS__) % RISAF3_GRANULARITY) : \ 1376 ((__INSTANCE__) == RISAF4) ? ((__ADDRESS__) % RISAF4_GRANULARITY) : \ 1377 ((__INSTANCE__) == RISAF5) ? ((__ADDRESS__) % RISAF5_GRANULARITY) : \ 1378 ((__INSTANCE__) == RISAF6) ? ((__ADDRESS__) % RISAF6_GRANULARITY) : \ 1379 ((__INSTANCE__) == RISAF7) ? ((__ADDRESS__) % RISAF7_GRANULARITY) : \ 1380 ((__INSTANCE__) == RISAF8) ? ((__ADDRESS__) % RISAF8_GRANULARITY) : \ 1381 ((__INSTANCE__) == RISAF9) ? ((__ADDRESS__) % RISAF9_GRANULARITY) : \ 1382 ((__INSTANCE__) == RISAF11) ? ((__ADDRESS__) % RISAF11_GRANULARITY) : \ 1383 ((__INSTANCE__) == RISAF12) ? ((__ADDRESS__) % RISAF12_GRANULARITY) : \ 1384 ((__INSTANCE__) == RISAF13) ? ((__ADDRESS__) % RISAF13_GRANULARITY) : \ 1385 ((__INSTANCE__) == RISAF14) ? ((__ADDRESS__) % RISAF14_GRANULARITY) : \ 1386 ((__INSTANCE__) == RISAF15) ? ((__ADDRESS__) % RISAF15_GRANULARITY) : \ 1387 ((__INSTANCE__) == RISAF21) ? ((__ADDRESS__) % RISAF21_GRANULARITY) : \ 1388 ((__INSTANCE__) == RISAF22) ? ((__ADDRESS__) % RISAF22_GRANULARITY) : \ 1389 ((__ADDRESS__) % RISAF23_GRANULARITY)) == 0x00U) 1390 #endif /* !defined(NPU_PRESENT) */ 1391 1392 #if !defined(NPU_PRESENT) 1393 #define IS_RISAF_LIMIT_ADDRESS_SPACE_SIZE(__INSTANCE__, __ADDRESS__) ((((__INSTANCE__) == RISAF1) && ((__ADDRESS__) < (RISAF1_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1394 (((__INSTANCE__) == RISAF2) && ((__ADDRESS__) < (RISAF2_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1395 (((__INSTANCE__) == RISAF3) && ((__ADDRESS__) < (RISAF3_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1396 ((__INSTANCE__) == RISAF6) || \ 1397 (((__INSTANCE__) == RISAF7) && ((__ADDRESS__) < (RISAF7_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1398 (((__INSTANCE__) == RISAF8) && ((__ADDRESS__) < (RISAF8_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1399 (((__INSTANCE__) == RISAF9) && ((__ADDRESS__) < (RISAF9_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1400 (((__INSTANCE__) == RISAF11) && ((__ADDRESS__) < (RISAF11_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1401 (((__INSTANCE__) == RISAF12) && ((__ADDRESS__) < (RISAF12_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1402 (((__INSTANCE__) == RISAF13) && ((__ADDRESS__) < (RISAF13_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1403 (((__INSTANCE__) == RISAF14) && ((__ADDRESS__) < (RISAF14_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1404 (((__INSTANCE__) == RISAF21) && ((__ADDRESS__) < (RISAF21_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1405 (((__INSTANCE__) == RISAF22) && ((__ADDRESS__) < (RISAF22_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1406 (((__INSTANCE__) == RISAF23) && ((__ADDRESS__) < (RISAF23_LIMIT_ADDRESS_SPACE_SIZE + 1U)))) 1407 #else 1408 #define IS_RISAF_LIMIT_ADDRESS_SPACE_SIZE(__INSTANCE__, __ADDRESS__) ((((__INSTANCE__) == RISAF1) && ((__ADDRESS__) < (RISAF1_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1409 (((__INSTANCE__) == RISAF2) && ((__ADDRESS__) < (RISAF2_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1410 (((__INSTANCE__) == RISAF3) && ((__ADDRESS__) < (RISAF3_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1411 ((__INSTANCE__) == RISAF4) || \ 1412 ((__INSTANCE__) == RISAF5) || \ 1413 ((__INSTANCE__) == RISAF6) || \ 1414 (((__INSTANCE__) == RISAF7) && ((__ADDRESS__) < (RISAF7_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1415 (((__INSTANCE__) == RISAF8) && ((__ADDRESS__) < (RISAF8_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1416 (((__INSTANCE__) == RISAF9) && ((__ADDRESS__) < (RISAF9_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1417 (((__INSTANCE__) == RISAF11) && ((__ADDRESS__) < (RISAF11_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1418 (((__INSTANCE__) == RISAF12) && ((__ADDRESS__) < (RISAF12_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1419 (((__INSTANCE__) == RISAF13) && ((__ADDRESS__) < (RISAF13_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1420 (((__INSTANCE__) == RISAF14) && ((__ADDRESS__) < (RISAF14_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1421 (((__INSTANCE__) == RISAF15) && ((__ADDRESS__) < (RISAF15_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1422 (((__INSTANCE__) == RISAF21) && ((__ADDRESS__) < (RISAF21_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1423 (((__INSTANCE__) == RISAF22) && ((__ADDRESS__) < (RISAF22_LIMIT_ADDRESS_SPACE_SIZE + 1U))) || \ 1424 (((__INSTANCE__) == RISAF23) && ((__ADDRESS__) < (RISAF23_LIMIT_ADDRESS_SPACE_SIZE + 1U)))) 1425 #endif /* !defined(NPU_PRESENT) */ 1426 1427 #define IS_RISAF_SUBREGION(__SUBREGION__) (((__SUBREGION__) == RISAF_SUBREGION_A) || \ 1428 ((__SUBREGION__) == RISAF_SUBREGION_B)) 1429 1430 #define IS_RISAF_FILTERING(__FILTERING__) (((__FILTERING__) == RISAF_FILTER_DISABLE) || \ 1431 ((__FILTERING__) == RISAF_FILTER_ENABLE)) 1432 1433 #define IS_RISAF_DELEGATION(__DELEGATION__) (((__DELEGATION__) == RISAF_DELEGATION_DISABLE) || \ 1434 ((__DELEGATION__) == RISAF_DELEGATION_ENABLE)) 1435 1436 1437 #define IS_RISAF_READ_WRITE(__RW__) (((uint32_t)(__RW__) == RISAF_READ_DISABLE) || \ 1438 (((uint32_t)(__RW__) & ~RISAF_READ_WRITE_MASK) == 0x00U)) 1439 /** 1440 * @} 1441 */ 1442 1443 /* Exported functions --------------------------------------------------------*/ 1444 /** @defgroup RIF_Exported_Functions RIF Exported Functions 1445 * @{ 1446 */ 1447 /** @defgroup RIF_Exported_Functions_Group1 RIMC Configuration functions 1448 * @{ 1449 */ 1450 #if defined(CPU_AS_TRUSTED_DOMAIN) 1451 void HAL_RIF_RIMC_Lock(void); 1452 #endif /* CPU_AS_TRUSTED_DOMAIN */ 1453 uint32_t HAL_RIF_RIMC_GetLock(void); 1454 #if defined(CPU_AS_TRUSTED_DOMAIN) 1455 void HAL_RIF_RIMC_SetDebugAccessPortCID(uint32_t CID); 1456 #endif /* CPU_AS_TRUSTED_DOMAIN */ 1457 uint32_t HAL_RIF_RIMC_GetDebugAccessPortCID(void); 1458 #if defined(CPU_AS_TRUSTED_DOMAIN) 1459 void HAL_RIF_RIMC_ConfigMasterAttributes(uint32_t MasterId, const RIMC_MasterConfig_t *pConfig); 1460 void HAL_RIF_RIMC_GetConfigMasterAttributes(uint32_t MasterId, RIMC_MasterConfig_t *pConfig); 1461 #endif /* CPU_AS_TRUSTED_DOMAIN */ 1462 /** 1463 * @} 1464 */ 1465 1466 /** @defgroup RIF_Exported_Functions_Group2 RIFSC Configuration functions 1467 * @{ 1468 */ 1469 #if defined(CPU_AS_TRUSTED_DOMAIN) 1470 void HAL_RIF_RISC_Lock(void); 1471 #endif /* CPU_AS_TRUSTED_DOMAIN */ 1472 uint32_t HAL_RIF_RISC_GetLock(void); 1473 void HAL_RIF_RISC_SetSlaveSecureAttributes(uint32_t PeriphId, uint32_t SecPriv); 1474 uint32_t HAL_RIF_RISC_GetSlaveSecureAttributes(uint32_t PeriphId); 1475 void HAL_RIF_RISC_SlaveConfigLock(uint32_t PeriphId); 1476 uint32_t HAL_RIF_RISC_GetSlaveConfigLock(uint32_t PeriphId); 1477 /** 1478 * @} 1479 */ 1480 1481 /** @defgroup RIF_Exported_Functions_Group4 RISAF Configuration functions 1482 * @{ 1483 */ 1484 #if defined(CPU_AS_TRUSTED_DOMAIN) 1485 void HAL_RIF_RISAF_Lock(RISAF_TypeDef *RISAFx); 1486 #endif /* CPU_AS_TRUSTED_DOMAIN */ 1487 uint32_t HAL_RIF_RISAF_GetLock(const RISAF_TypeDef *RISAFx); 1488 #if defined(CPU_AS_TRUSTED_DOMAIN) 1489 void HAL_RIF_RISAF_ConfigBaseRegion(RISAF_TypeDef *RISAFx, uint32_t Region, 1490 const RISAF_BaseRegionConfig_t *pConfig); 1491 #endif /* CPU_AS_TRUSTED_DOMAIN */ 1492 void HAL_RIF_RISAF_GetConfigBaseRegion(const RISAF_TypeDef *RISAFx, uint32_t Region, 1493 RISAF_BaseRegionConfig_t *pConfig); 1494 #if defined(CPU_AS_TRUSTED_DOMAIN) 1495 void HAL_RIF_RISAF_ConfigSubRegionDelegation(RISAF_TypeDef *RISAFx, uint32_t Region, uint32_t SubRegion, 1496 const RISAF_DelegationConfig_t *pConfig); 1497 #endif /* CPU_AS_TRUSTED_DOMAIN */ 1498 void HAL_RIF_RISAF_GetConfigSubRegionDelegation(const RISAF_TypeDef *RISAFx, uint32_t Region, uint32_t SubRegion, 1499 RISAF_DelegationConfig_t *pConfig); 1500 #if defined(CPU_AS_TRUSTED_DOMAIN) 1501 void HAL_RIF_RISAF_ConfigSubRegion(RISAF_TypeDef *RISAFx, uint32_t Region, uint32_t SubRegion, 1502 const RISAF_SubRegionConfig_t *pConfig); 1503 #endif /* CPU_AS_TRUSTED_DOMAIN */ 1504 void HAL_RIF_RISAF_GetConfigSubRegion(const RISAF_TypeDef *RISAFx, uint32_t Region, uint32_t SubRegion, 1505 RISAF_SubRegionConfig_t *pConfig); 1506 #if defined(CPU_AS_TRUSTED_DOMAIN) 1507 void HAL_RIF_RISAF_GetIllegalAccess(RISAF_TypeDef *RISAFx, RISAF_IllegalAccess_t *IllegalAccess); 1508 #endif /* CPU_AS_TRUSTED_DOMAIN */ 1509 /** 1510 * @} 1511 */ 1512 1513 /** @defgroup RIF_Exported_Functions_Group6 IAC Configuration functions 1514 * @{ 1515 */ 1516 #if defined(CPU_AS_TRUSTED_DOMAIN) && defined(CPU_IN_SECURE_STATE) 1517 void HAL_RIF_IAC_EnableIT(uint32_t PeriphId); 1518 void HAL_RIF_IAC_DisableIT(uint32_t PeriphId); 1519 uint32_t HAL_RIF_IAC_GetFlag(uint32_t PeriphId); 1520 void HAL_RIF_IAC_ClearFlag(uint32_t PeriphId); 1521 void HAL_RIF_IRQHandler(void); 1522 void HAL_RIF_ILA_Callback(uint32_t PeriphId); 1523 #endif /* CPU_AS_TRUSTED_DOMAIN && CPU_IN_SECURE_STATE */ 1524 /** 1525 * @} 1526 */ 1527 1528 /** 1529 * @} 1530 */ 1531 1532 /** 1533 * @} 1534 */ 1535 1536 /** 1537 * @} 1538 */ 1539 1540 #ifdef __cplusplus 1541 } 1542 #endif 1543 1544 #endif /* STM32N6xx_HAL_RIF_H */ 1545 1546