1 // Copyright 2020 Espressif Systems (Shanghai) PTE LTD 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 #ifndef _SOC_EXTMEM_REG_H_ 15 #define _SOC_EXTMEM_REG_H_ 16 17 18 #ifdef __cplusplus 19 extern "C" { 20 #endif 21 #include "soc.h" 22 #define EXTMEM_ICACHE_CTRL_REG (DR_REG_EXTMEM_BASE + 0x000) 23 /* EXTMEM_ICACHE_ENABLE : R/W ;bitpos:[0] ;default: 1'b0 ; */ 24 /*description: The bit is used to activate the data cache. 0: disable 1: enable*/ 25 #define EXTMEM_ICACHE_ENABLE (BIT(0)) 26 #define EXTMEM_ICACHE_ENABLE_M (BIT(0)) 27 #define EXTMEM_ICACHE_ENABLE_V 0x1 28 #define EXTMEM_ICACHE_ENABLE_S 0 29 30 #define EXTMEM_ICACHE_CTRL1_REG (DR_REG_EXTMEM_BASE + 0x004) 31 /* EXTMEM_ICACHE_SHUT_DBUS : R/W ;bitpos:[1] ;default: 1'b1 ; */ 32 /*description: The bit is used to disable core1 ibus 0: enable 1: disable*/ 33 #define EXTMEM_ICACHE_SHUT_DBUS (BIT(1)) 34 #define EXTMEM_ICACHE_SHUT_DBUS_M (BIT(1)) 35 #define EXTMEM_ICACHE_SHUT_DBUS_V 0x1 36 #define EXTMEM_ICACHE_SHUT_DBUS_S 1 37 /* EXTMEM_ICACHE_SHUT_IBUS : R/W ;bitpos:[0] ;default: 1'b1 ; */ 38 /*description: The bit is used to disable core0 ibus 0: enable 1: disable*/ 39 #define EXTMEM_ICACHE_SHUT_IBUS (BIT(0)) 40 #define EXTMEM_ICACHE_SHUT_IBUS_M (BIT(0)) 41 #define EXTMEM_ICACHE_SHUT_IBUS_V 0x1 42 #define EXTMEM_ICACHE_SHUT_IBUS_S 0 43 44 #define EXTMEM_ICACHE_TAG_POWER_CTRL_REG (DR_REG_EXTMEM_BASE + 0x008) 45 /* EXTMEM_ICACHE_TAG_MEM_FORCE_PU : R/W ;bitpos:[2] ;default: 1'b1 ; */ 46 /*description: The bit is used to power icache tag memory up 0: follow rtc_lslp 1: power up*/ 47 #define EXTMEM_ICACHE_TAG_MEM_FORCE_PU (BIT(2)) 48 #define EXTMEM_ICACHE_TAG_MEM_FORCE_PU_M (BIT(2)) 49 #define EXTMEM_ICACHE_TAG_MEM_FORCE_PU_V 0x1 50 #define EXTMEM_ICACHE_TAG_MEM_FORCE_PU_S 2 51 /* EXTMEM_ICACHE_TAG_MEM_FORCE_PD : R/W ;bitpos:[1] ;default: 1'b0 ; */ 52 /*description: The bit is used to power icache tag memory down 0: follow rtc_lslp 53 1: power down*/ 54 #define EXTMEM_ICACHE_TAG_MEM_FORCE_PD (BIT(1)) 55 #define EXTMEM_ICACHE_TAG_MEM_FORCE_PD_M (BIT(1)) 56 #define EXTMEM_ICACHE_TAG_MEM_FORCE_PD_V 0x1 57 #define EXTMEM_ICACHE_TAG_MEM_FORCE_PD_S 1 58 /* EXTMEM_ICACHE_TAG_MEM_FORCE_ON : R/W ;bitpos:[0] ;default: 1'b1 ; */ 59 /*description: The bit is used to close clock gating of icache tag memory. 60 1: close gating 0: open clock gating.*/ 61 #define EXTMEM_ICACHE_TAG_MEM_FORCE_ON (BIT(0)) 62 #define EXTMEM_ICACHE_TAG_MEM_FORCE_ON_M (BIT(0)) 63 #define EXTMEM_ICACHE_TAG_MEM_FORCE_ON_V 0x1 64 #define EXTMEM_ICACHE_TAG_MEM_FORCE_ON_S 0 65 66 #define EXTMEM_ICACHE_PRELOCK_CTRL_REG (DR_REG_EXTMEM_BASE + 0x00C) 67 /* EXTMEM_ICACHE_PRELOCK_SCT1_EN : R/W ;bitpos:[1] ;default: 1'h0 ; */ 68 /*description: The bit is used to enable the second section of prelock function.*/ 69 #define EXTMEM_ICACHE_PRELOCK_SCT1_EN (BIT(1)) 70 #define EXTMEM_ICACHE_PRELOCK_SCT1_EN_M (BIT(1)) 71 #define EXTMEM_ICACHE_PRELOCK_SCT1_EN_V 0x1 72 #define EXTMEM_ICACHE_PRELOCK_SCT1_EN_S 1 73 /* EXTMEM_ICACHE_PRELOCK_SCT0_EN : R/W ;bitpos:[0] ;default: 1'h0 ; */ 74 /*description: The bit is used to enable the first section of prelock function.*/ 75 #define EXTMEM_ICACHE_PRELOCK_SCT0_EN (BIT(0)) 76 #define EXTMEM_ICACHE_PRELOCK_SCT0_EN_M (BIT(0)) 77 #define EXTMEM_ICACHE_PRELOCK_SCT0_EN_V 0x1 78 #define EXTMEM_ICACHE_PRELOCK_SCT0_EN_S 0 79 80 #define EXTMEM_ICACHE_PRELOCK_SCT0_ADDR_REG (DR_REG_EXTMEM_BASE + 0x010) 81 /* EXTMEM_ICACHE_PRELOCK_SCT0_ADDR : R/W ;bitpos:[31:0] ;default: 32'h0 ; */ 82 /*description: The bits are used to configure the first start virtual address 83 of data prelock which is combined with ICACHE_PRELOCK_SCT0_SIZE_REG*/ 84 #define EXTMEM_ICACHE_PRELOCK_SCT0_ADDR 0xFFFFFFFF 85 #define EXTMEM_ICACHE_PRELOCK_SCT0_ADDR_M ((EXTMEM_ICACHE_PRELOCK_SCT0_ADDR_V)<<(EXTMEM_ICACHE_PRELOCK_SCT0_ADDR_S)) 86 #define EXTMEM_ICACHE_PRELOCK_SCT0_ADDR_V 0xFFFFFFFF 87 #define EXTMEM_ICACHE_PRELOCK_SCT0_ADDR_S 0 88 89 #define EXTMEM_ICACHE_PRELOCK_SCT1_ADDR_REG (DR_REG_EXTMEM_BASE + 0x014) 90 /* EXTMEM_ICACHE_PRELOCK_SCT1_ADDR : R/W ;bitpos:[31:0] ;default: 32'h0 ; */ 91 /*description: The bits are used to configure the second start virtual address 92 of data prelock which is combined with ICACHE_PRELOCK_SCT1_SIZE_REG*/ 93 #define EXTMEM_ICACHE_PRELOCK_SCT1_ADDR 0xFFFFFFFF 94 #define EXTMEM_ICACHE_PRELOCK_SCT1_ADDR_M ((EXTMEM_ICACHE_PRELOCK_SCT1_ADDR_V)<<(EXTMEM_ICACHE_PRELOCK_SCT1_ADDR_S)) 95 #define EXTMEM_ICACHE_PRELOCK_SCT1_ADDR_V 0xFFFFFFFF 96 #define EXTMEM_ICACHE_PRELOCK_SCT1_ADDR_S 0 97 98 #define EXTMEM_ICACHE_PRELOCK_SCT_SIZE_REG (DR_REG_EXTMEM_BASE + 0x018) 99 /* EXTMEM_ICACHE_PRELOCK_SCT0_SIZE : R/W ;bitpos:[31:16] ;default: 16'h0 ; */ 100 /*description: The bits are used to configure the first length of data locking 101 which is combined with ICACHE_PRELOCK_SCT0_ADDR_REG*/ 102 #define EXTMEM_ICACHE_PRELOCK_SCT0_SIZE 0x0000FFFF 103 #define EXTMEM_ICACHE_PRELOCK_SCT0_SIZE_M ((EXTMEM_ICACHE_PRELOCK_SCT0_SIZE_V)<<(EXTMEM_ICACHE_PRELOCK_SCT0_SIZE_S)) 104 #define EXTMEM_ICACHE_PRELOCK_SCT0_SIZE_V 0xFFFF 105 #define EXTMEM_ICACHE_PRELOCK_SCT0_SIZE_S 16 106 /* EXTMEM_ICACHE_PRELOCK_SCT1_SIZE : R/W ;bitpos:[15:0] ;default: 16'h0 ; */ 107 /*description: The bits are used to configure the second length of data locking 108 which is combined with ICACHE_PRELOCK_SCT1_ADDR_REG*/ 109 #define EXTMEM_ICACHE_PRELOCK_SCT1_SIZE 0x0000FFFF 110 #define EXTMEM_ICACHE_PRELOCK_SCT1_SIZE_M ((EXTMEM_ICACHE_PRELOCK_SCT1_SIZE_V)<<(EXTMEM_ICACHE_PRELOCK_SCT1_SIZE_S)) 111 #define EXTMEM_ICACHE_PRELOCK_SCT1_SIZE_V 0xFFFF 112 #define EXTMEM_ICACHE_PRELOCK_SCT1_SIZE_S 0 113 114 #define EXTMEM_ICACHE_LOCK_CTRL_REG (DR_REG_EXTMEM_BASE + 0x01C) 115 /* EXTMEM_ICACHE_LOCK_DONE : RO ;bitpos:[2] ;default: 1'b1 ; */ 116 /*description: The bit is used to indicate unlock/lock operation is finished.*/ 117 #define EXTMEM_ICACHE_LOCK_DONE (BIT(2)) 118 #define EXTMEM_ICACHE_LOCK_DONE_M (BIT(2)) 119 #define EXTMEM_ICACHE_LOCK_DONE_V 0x1 120 #define EXTMEM_ICACHE_LOCK_DONE_S 2 121 /* EXTMEM_ICACHE_UNLOCK_ENA : R/W ;bitpos:[1] ;default: 1'b0 ; */ 122 /*description: The bit is used to enable unlock operation. It will be cleared 123 by hardware after unlock operation done.*/ 124 #define EXTMEM_ICACHE_UNLOCK_ENA (BIT(1)) 125 #define EXTMEM_ICACHE_UNLOCK_ENA_M (BIT(1)) 126 #define EXTMEM_ICACHE_UNLOCK_ENA_V 0x1 127 #define EXTMEM_ICACHE_UNLOCK_ENA_S 1 128 /* EXTMEM_ICACHE_LOCK_ENA : R/W ;bitpos:[0] ;default: 1'b0 ; */ 129 /*description: The bit is used to enable lock operation. It will be cleared 130 by hardware after lock operation done.*/ 131 #define EXTMEM_ICACHE_LOCK_ENA (BIT(0)) 132 #define EXTMEM_ICACHE_LOCK_ENA_M (BIT(0)) 133 #define EXTMEM_ICACHE_LOCK_ENA_V 0x1 134 #define EXTMEM_ICACHE_LOCK_ENA_S 0 135 136 #define EXTMEM_ICACHE_LOCK_ADDR_REG (DR_REG_EXTMEM_BASE + 0x020) 137 /* EXTMEM_ICACHE_LOCK_ADDR : R/W ;bitpos:[31:0] ;default: 32'b0 ; */ 138 /*description: The bits are used to configure the start virtual address for 139 lock operations. It should be combined with ICACHE_LOCK_SIZE_REG.*/ 140 #define EXTMEM_ICACHE_LOCK_ADDR 0xFFFFFFFF 141 #define EXTMEM_ICACHE_LOCK_ADDR_M ((EXTMEM_ICACHE_LOCK_ADDR_V)<<(EXTMEM_ICACHE_LOCK_ADDR_S)) 142 #define EXTMEM_ICACHE_LOCK_ADDR_V 0xFFFFFFFF 143 #define EXTMEM_ICACHE_LOCK_ADDR_S 0 144 145 #define EXTMEM_ICACHE_LOCK_SIZE_REG (DR_REG_EXTMEM_BASE + 0x024) 146 /* EXTMEM_ICACHE_LOCK_SIZE : R/W ;bitpos:[15:0] ;default: 16'h0 ; */ 147 /*description: The bits are used to configure the length for lock operations. 148 The bits are the counts of cache block. It should be combined with ICACHE_LOCK_ADDR_REG.*/ 149 #define EXTMEM_ICACHE_LOCK_SIZE 0x0000FFFF 150 #define EXTMEM_ICACHE_LOCK_SIZE_M ((EXTMEM_ICACHE_LOCK_SIZE_V)<<(EXTMEM_ICACHE_LOCK_SIZE_S)) 151 #define EXTMEM_ICACHE_LOCK_SIZE_V 0xFFFF 152 #define EXTMEM_ICACHE_LOCK_SIZE_S 0 153 154 #define EXTMEM_ICACHE_SYNC_CTRL_REG (DR_REG_EXTMEM_BASE + 0x028) 155 /* EXTMEM_ICACHE_SYNC_DONE : RO ;bitpos:[1] ;default: 1'b0 ; */ 156 /*description: The bit is used to indicate invalidate operation is finished.*/ 157 #define EXTMEM_ICACHE_SYNC_DONE (BIT(1)) 158 #define EXTMEM_ICACHE_SYNC_DONE_M (BIT(1)) 159 #define EXTMEM_ICACHE_SYNC_DONE_V 0x1 160 #define EXTMEM_ICACHE_SYNC_DONE_S 1 161 /* EXTMEM_ICACHE_INVALIDATE_ENA : R/W ;bitpos:[0] ;default: 1'b1 ; */ 162 /*description: The bit is used to enable invalidate operation. It will be cleared 163 by hardware after invalidate operation done.*/ 164 #define EXTMEM_ICACHE_INVALIDATE_ENA (BIT(0)) 165 #define EXTMEM_ICACHE_INVALIDATE_ENA_M (BIT(0)) 166 #define EXTMEM_ICACHE_INVALIDATE_ENA_V 0x1 167 #define EXTMEM_ICACHE_INVALIDATE_ENA_S 0 168 169 #define EXTMEM_ICACHE_SYNC_ADDR_REG (DR_REG_EXTMEM_BASE + 0x02C) 170 /* EXTMEM_ICACHE_SYNC_ADDR : R/W ;bitpos:[31:0] ;default: 32'b0 ; */ 171 /*description: The bits are used to configure the start virtual address for 172 clean operations. It should be combined with ICACHE_SYNC_SIZE_REG.*/ 173 #define EXTMEM_ICACHE_SYNC_ADDR 0xFFFFFFFF 174 #define EXTMEM_ICACHE_SYNC_ADDR_M ((EXTMEM_ICACHE_SYNC_ADDR_V)<<(EXTMEM_ICACHE_SYNC_ADDR_S)) 175 #define EXTMEM_ICACHE_SYNC_ADDR_V 0xFFFFFFFF 176 #define EXTMEM_ICACHE_SYNC_ADDR_S 0 177 178 #define EXTMEM_ICACHE_SYNC_SIZE_REG (DR_REG_EXTMEM_BASE + 0x030) 179 /* EXTMEM_ICACHE_SYNC_SIZE : R/W ;bitpos:[22:0] ;default: 23'h0 ; */ 180 /*description: The bits are used to configure the length for sync operations. 181 The bits are the counts of cache block. It should be combined with ICACHE_SYNC_ADDR_REG.*/ 182 #define EXTMEM_ICACHE_SYNC_SIZE 0x007FFFFF 183 #define EXTMEM_ICACHE_SYNC_SIZE_M ((EXTMEM_ICACHE_SYNC_SIZE_V)<<(EXTMEM_ICACHE_SYNC_SIZE_S)) 184 #define EXTMEM_ICACHE_SYNC_SIZE_V 0x7FFFFF 185 #define EXTMEM_ICACHE_SYNC_SIZE_S 0 186 187 #define EXTMEM_ICACHE_PRELOAD_CTRL_REG (DR_REG_EXTMEM_BASE + 0x034) 188 /* EXTMEM_ICACHE_PRELOAD_ORDER : R/W ;bitpos:[2] ;default: 1'b0 ; */ 189 /*description: The bit is used to configure the direction of preload operation. 190 1: descending 0: ascending.*/ 191 #define EXTMEM_ICACHE_PRELOAD_ORDER (BIT(2)) 192 #define EXTMEM_ICACHE_PRELOAD_ORDER_M (BIT(2)) 193 #define EXTMEM_ICACHE_PRELOAD_ORDER_V 0x1 194 #define EXTMEM_ICACHE_PRELOAD_ORDER_S 2 195 /* EXTMEM_ICACHE_PRELOAD_DONE : RO ;bitpos:[1] ;default: 1'b1 ; */ 196 /*description: The bit is used to indicate preload operation is finished.*/ 197 #define EXTMEM_ICACHE_PRELOAD_DONE (BIT(1)) 198 #define EXTMEM_ICACHE_PRELOAD_DONE_M (BIT(1)) 199 #define EXTMEM_ICACHE_PRELOAD_DONE_V 0x1 200 #define EXTMEM_ICACHE_PRELOAD_DONE_S 1 201 /* EXTMEM_ICACHE_PRELOAD_ENA : R/W ;bitpos:[0] ;default: 1'b0 ; */ 202 /*description: The bit is used to enable preload operation. It will be cleared 203 by hardware after preload operation done.*/ 204 #define EXTMEM_ICACHE_PRELOAD_ENA (BIT(0)) 205 #define EXTMEM_ICACHE_PRELOAD_ENA_M (BIT(0)) 206 #define EXTMEM_ICACHE_PRELOAD_ENA_V 0x1 207 #define EXTMEM_ICACHE_PRELOAD_ENA_S 0 208 209 #define EXTMEM_ICACHE_PRELOAD_ADDR_REG (DR_REG_EXTMEM_BASE + 0x038) 210 /* EXTMEM_ICACHE_PRELOAD_ADDR : R/W ;bitpos:[31:0] ;default: 32'b0 ; */ 211 /*description: The bits are used to configure the start virtual address for 212 preload operation. It should be combined with ICACHE_PRELOAD_SIZE_REG.*/ 213 #define EXTMEM_ICACHE_PRELOAD_ADDR 0xFFFFFFFF 214 #define EXTMEM_ICACHE_PRELOAD_ADDR_M ((EXTMEM_ICACHE_PRELOAD_ADDR_V)<<(EXTMEM_ICACHE_PRELOAD_ADDR_S)) 215 #define EXTMEM_ICACHE_PRELOAD_ADDR_V 0xFFFFFFFF 216 #define EXTMEM_ICACHE_PRELOAD_ADDR_S 0 217 218 #define EXTMEM_ICACHE_PRELOAD_SIZE_REG (DR_REG_EXTMEM_BASE + 0x03C) 219 /* EXTMEM_ICACHE_PRELOAD_SIZE : R/W ;bitpos:[15:0] ;default: 16'h0 ; */ 220 /*description: The bits are used to configure the length for preload operation. 221 The bits are the counts of cache block. It should be combined with ICACHE_PRELOAD_ADDR_REG..*/ 222 #define EXTMEM_ICACHE_PRELOAD_SIZE 0x0000FFFF 223 #define EXTMEM_ICACHE_PRELOAD_SIZE_M ((EXTMEM_ICACHE_PRELOAD_SIZE_V)<<(EXTMEM_ICACHE_PRELOAD_SIZE_S)) 224 #define EXTMEM_ICACHE_PRELOAD_SIZE_V 0xFFFF 225 #define EXTMEM_ICACHE_PRELOAD_SIZE_S 0 226 227 #define EXTMEM_ICACHE_AUTOLOAD_CTRL_REG (DR_REG_EXTMEM_BASE + 0x040) 228 /* EXTMEM_ICACHE_AUTOLOAD_RQST : R/W ;bitpos:[6:5] ;default: 2'b0 ; */ 229 /*description: The bits are used to configure trigger conditions for autoload. 230 0/3: cache miss 1: cache hit 2: both cache miss and hit.*/ 231 #define EXTMEM_ICACHE_AUTOLOAD_RQST 0x00000003 232 #define EXTMEM_ICACHE_AUTOLOAD_RQST_M ((EXTMEM_ICACHE_AUTOLOAD_RQST_V)<<(EXTMEM_ICACHE_AUTOLOAD_RQST_S)) 233 #define EXTMEM_ICACHE_AUTOLOAD_RQST_V 0x3 234 #define EXTMEM_ICACHE_AUTOLOAD_RQST_S 5 235 /* EXTMEM_ICACHE_AUTOLOAD_ORDER : R/W ;bitpos:[4] ;default: 1'b0 ; */ 236 /*description: The bits are used to configure the direction of autoload. 1: 237 descending 0: ascending.*/ 238 #define EXTMEM_ICACHE_AUTOLOAD_ORDER (BIT(4)) 239 #define EXTMEM_ICACHE_AUTOLOAD_ORDER_M (BIT(4)) 240 #define EXTMEM_ICACHE_AUTOLOAD_ORDER_V 0x1 241 #define EXTMEM_ICACHE_AUTOLOAD_ORDER_S 4 242 /* EXTMEM_ICACHE_AUTOLOAD_DONE : RO ;bitpos:[3] ;default: 1'b1 ; */ 243 /*description: The bit is used to indicate autoload operation is finished.*/ 244 #define EXTMEM_ICACHE_AUTOLOAD_DONE (BIT(3)) 245 #define EXTMEM_ICACHE_AUTOLOAD_DONE_M (BIT(3)) 246 #define EXTMEM_ICACHE_AUTOLOAD_DONE_V 0x1 247 #define EXTMEM_ICACHE_AUTOLOAD_DONE_S 3 248 /* EXTMEM_ICACHE_AUTOLOAD_ENA : R/W ;bitpos:[2] ;default: 1'b0 ; */ 249 /*description: The bit is used to enable and disable autoload operation. It 250 is combined with icache_autoload_done. 1: enable 0: disable.*/ 251 #define EXTMEM_ICACHE_AUTOLOAD_ENA (BIT(2)) 252 #define EXTMEM_ICACHE_AUTOLOAD_ENA_M (BIT(2)) 253 #define EXTMEM_ICACHE_AUTOLOAD_ENA_V 0x1 254 #define EXTMEM_ICACHE_AUTOLOAD_ENA_S 2 255 /* EXTMEM_ICACHE_AUTOLOAD_SCT1_ENA : R/W ;bitpos:[1] ;default: 1'b0 ; */ 256 /*description: The bits are used to enable the second section for autoload operation.*/ 257 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_ENA (BIT(1)) 258 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_ENA_M (BIT(1)) 259 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_ENA_V 0x1 260 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_ENA_S 1 261 /* EXTMEM_ICACHE_AUTOLOAD_SCT0_ENA : R/W ;bitpos:[0] ;default: 1'b0 ; */ 262 /*description: The bits are used to enable the first section for autoload operation.*/ 263 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_ENA (BIT(0)) 264 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_ENA_M (BIT(0)) 265 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_ENA_V 0x1 266 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_ENA_S 0 267 268 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_ADDR_REG (DR_REG_EXTMEM_BASE + 0x044) 269 /* EXTMEM_ICACHE_AUTOLOAD_SCT0_ADDR : R/W ;bitpos:[31:0] ;default: 32'b0 ; */ 270 /*description: The bits are used to configure the start virtual address of the 271 first section for autoload operation. It should be combined with icache_autoload_sct0_ena.*/ 272 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_ADDR 0xFFFFFFFF 273 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_ADDR_M ((EXTMEM_ICACHE_AUTOLOAD_SCT0_ADDR_V)<<(EXTMEM_ICACHE_AUTOLOAD_SCT0_ADDR_S)) 274 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_ADDR_V 0xFFFFFFFF 275 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_ADDR_S 0 276 277 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_SIZE_REG (DR_REG_EXTMEM_BASE + 0x048) 278 /* EXTMEM_ICACHE_AUTOLOAD_SCT0_SIZE : R/W ;bitpos:[26:0] ;default: 27'h0 ; */ 279 /*description: The bits are used to configure the length of the first section 280 for autoload operation. It should be combined with icache_autoload_sct0_ena.*/ 281 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_SIZE 0x07FFFFFF 282 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_SIZE_M ((EXTMEM_ICACHE_AUTOLOAD_SCT0_SIZE_V)<<(EXTMEM_ICACHE_AUTOLOAD_SCT0_SIZE_S)) 283 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_SIZE_V 0x7FFFFFF 284 #define EXTMEM_ICACHE_AUTOLOAD_SCT0_SIZE_S 0 285 286 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_ADDR_REG (DR_REG_EXTMEM_BASE + 0x04C) 287 /* EXTMEM_ICACHE_AUTOLOAD_SCT1_ADDR : R/W ;bitpos:[31:0] ;default: 32'b0 ; */ 288 /*description: The bits are used to configure the start virtual address of the 289 second section for autoload operation. It should be combined with icache_autoload_sct1_ena.*/ 290 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_ADDR 0xFFFFFFFF 291 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_ADDR_M ((EXTMEM_ICACHE_AUTOLOAD_SCT1_ADDR_V)<<(EXTMEM_ICACHE_AUTOLOAD_SCT1_ADDR_S)) 292 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_ADDR_V 0xFFFFFFFF 293 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_ADDR_S 0 294 295 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_SIZE_REG (DR_REG_EXTMEM_BASE + 0x050) 296 /* EXTMEM_ICACHE_AUTOLOAD_SCT1_SIZE : R/W ;bitpos:[26:0] ;default: 27'h0 ; */ 297 /*description: The bits are used to configure the length of the second section 298 for autoload operation. It should be combined with icache_autoload_sct1_ena.*/ 299 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_SIZE 0x07FFFFFF 300 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_SIZE_M ((EXTMEM_ICACHE_AUTOLOAD_SCT1_SIZE_V)<<(EXTMEM_ICACHE_AUTOLOAD_SCT1_SIZE_S)) 301 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_SIZE_V 0x7FFFFFF 302 #define EXTMEM_ICACHE_AUTOLOAD_SCT1_SIZE_S 0 303 304 #define EXTMEM_IBUS_TO_FLASH_START_VADDR_REG (DR_REG_EXTMEM_BASE + 0x054) 305 /* EXTMEM_IBUS_TO_FLASH_START_VADDR : R/W ;bitpos:[31:0] ;default: 32'h42000000 ; */ 306 /*description: The bits are used to configure the start virtual address of ibus 307 to access flash. The register is used to give constraints to ibus access counter.*/ 308 #define EXTMEM_IBUS_TO_FLASH_START_VADDR 0xFFFFFFFF 309 #define EXTMEM_IBUS_TO_FLASH_START_VADDR_M ((EXTMEM_IBUS_TO_FLASH_START_VADDR_V)<<(EXTMEM_IBUS_TO_FLASH_START_VADDR_S)) 310 #define EXTMEM_IBUS_TO_FLASH_START_VADDR_V 0xFFFFFFFF 311 #define EXTMEM_IBUS_TO_FLASH_START_VADDR_S 0 312 313 #define EXTMEM_IBUS_TO_FLASH_END_VADDR_REG (DR_REG_EXTMEM_BASE + 0x058) 314 /* EXTMEM_IBUS_TO_FLASH_END_VADDR : R/W ;bitpos:[31:0] ;default: 32'h427FFFFF ; */ 315 /*description: The bits are used to configure the end virtual address of ibus 316 to access flash. The register is used to give constraints to ibus access counter.*/ 317 #define EXTMEM_IBUS_TO_FLASH_END_VADDR 0xFFFFFFFF 318 #define EXTMEM_IBUS_TO_FLASH_END_VADDR_M ((EXTMEM_IBUS_TO_FLASH_END_VADDR_V)<<(EXTMEM_IBUS_TO_FLASH_END_VADDR_S)) 319 #define EXTMEM_IBUS_TO_FLASH_END_VADDR_V 0xFFFFFFFF 320 #define EXTMEM_IBUS_TO_FLASH_END_VADDR_S 0 321 322 #define EXTMEM_DBUS_TO_FLASH_START_VADDR_REG (DR_REG_EXTMEM_BASE + 0x05C) 323 /* EXTMEM_DBUS_TO_FLASH_START_VADDR : R/W ;bitpos:[31:0] ;default: 32'h3C000000 ; */ 324 /*description: The bits are used to configure the start virtual address of dbus 325 to access flash. The register is used to give constraints to dbus access counter.*/ 326 #define EXTMEM_DBUS_TO_FLASH_START_VADDR 0xFFFFFFFF 327 #define EXTMEM_DBUS_TO_FLASH_START_VADDR_M ((EXTMEM_DBUS_TO_FLASH_START_VADDR_V)<<(EXTMEM_DBUS_TO_FLASH_START_VADDR_S)) 328 #define EXTMEM_DBUS_TO_FLASH_START_VADDR_V 0xFFFFFFFF 329 #define EXTMEM_DBUS_TO_FLASH_START_VADDR_S 0 330 331 #define EXTMEM_DBUS_TO_FLASH_END_VADDR_REG (DR_REG_EXTMEM_BASE + 0x060) 332 /* EXTMEM_DBUS_TO_FLASH_END_VADDR : R/W ;bitpos:[31:0] ;default: 32'h3C7FFFFF ; */ 333 /*description: The bits are used to configure the end virtual address of dbus 334 to access flash. The register is used to give constraints to dbus access counter.*/ 335 #define EXTMEM_DBUS_TO_FLASH_END_VADDR 0xFFFFFFFF 336 #define EXTMEM_DBUS_TO_FLASH_END_VADDR_M ((EXTMEM_DBUS_TO_FLASH_END_VADDR_V)<<(EXTMEM_DBUS_TO_FLASH_END_VADDR_S)) 337 #define EXTMEM_DBUS_TO_FLASH_END_VADDR_V 0xFFFFFFFF 338 #define EXTMEM_DBUS_TO_FLASH_END_VADDR_S 0 339 340 #define EXTMEM_CACHE_ACS_CNT_CLR_REG (DR_REG_EXTMEM_BASE + 0x064) 341 /* EXTMEM_DBUS_ACS_CNT_CLR : WOD ;bitpos:[1] ;default: 1'b0 ; */ 342 /*description: The bit is used to clear dbus counter.*/ 343 #define EXTMEM_DBUS_ACS_CNT_CLR (BIT(1)) 344 #define EXTMEM_DBUS_ACS_CNT_CLR_M (BIT(1)) 345 #define EXTMEM_DBUS_ACS_CNT_CLR_V 0x1 346 #define EXTMEM_DBUS_ACS_CNT_CLR_S 1 347 /* EXTMEM_IBUS_ACS_CNT_CLR : WOD ;bitpos:[0] ;default: 1'b0 ; */ 348 /*description: The bit is used to clear ibus counter.*/ 349 #define EXTMEM_IBUS_ACS_CNT_CLR (BIT(0)) 350 #define EXTMEM_IBUS_ACS_CNT_CLR_M (BIT(0)) 351 #define EXTMEM_IBUS_ACS_CNT_CLR_V 0x1 352 #define EXTMEM_IBUS_ACS_CNT_CLR_S 0 353 354 #define EXTMEM_IBUS_ACS_MISS_CNT_REG (DR_REG_EXTMEM_BASE + 0x068) 355 /* EXTMEM_IBUS_ACS_MISS_CNT : RO ;bitpos:[31:0] ;default: 32'h0 ; */ 356 /*description: The bits are used to count the number of the cache miss caused 357 by ibus access flash.*/ 358 #define EXTMEM_IBUS_ACS_MISS_CNT 0xFFFFFFFF 359 #define EXTMEM_IBUS_ACS_MISS_CNT_M ((EXTMEM_IBUS_ACS_MISS_CNT_V)<<(EXTMEM_IBUS_ACS_MISS_CNT_S)) 360 #define EXTMEM_IBUS_ACS_MISS_CNT_V 0xFFFFFFFF 361 #define EXTMEM_IBUS_ACS_MISS_CNT_S 0 362 363 #define EXTMEM_IBUS_ACS_CNT_REG (DR_REG_EXTMEM_BASE + 0x06C) 364 /* EXTMEM_IBUS_ACS_CNT : RO ;bitpos:[31:0] ;default: 32'h0 ; */ 365 /*description: The bits are used to count the number of ibus access flash through icache.*/ 366 #define EXTMEM_IBUS_ACS_CNT 0xFFFFFFFF 367 #define EXTMEM_IBUS_ACS_CNT_M ((EXTMEM_IBUS_ACS_CNT_V)<<(EXTMEM_IBUS_ACS_CNT_S)) 368 #define EXTMEM_IBUS_ACS_CNT_V 0xFFFFFFFF 369 #define EXTMEM_IBUS_ACS_CNT_S 0 370 371 #define EXTMEM_DBUS_ACS_FLASH_MISS_CNT_REG (DR_REG_EXTMEM_BASE + 0x070) 372 /* EXTMEM_DBUS_ACS_FLASH_MISS_CNT : RO ;bitpos:[31:0] ;default: 32'h0 ; */ 373 /*description: The bits are used to count the number of the cache miss caused 374 by dbus access flash.*/ 375 #define EXTMEM_DBUS_ACS_FLASH_MISS_CNT 0xFFFFFFFF 376 #define EXTMEM_DBUS_ACS_FLASH_MISS_CNT_M ((EXTMEM_DBUS_ACS_FLASH_MISS_CNT_V)<<(EXTMEM_DBUS_ACS_FLASH_MISS_CNT_S)) 377 #define EXTMEM_DBUS_ACS_FLASH_MISS_CNT_V 0xFFFFFFFF 378 #define EXTMEM_DBUS_ACS_FLASH_MISS_CNT_S 0 379 380 #define EXTMEM_DBUS_ACS_CNT_REG (DR_REG_EXTMEM_BASE + 0x074) 381 /* EXTMEM_DBUS_ACS_CNT : RO ;bitpos:[31:0] ;default: 32'h0 ; */ 382 /*description: The bits are used to count the number of dbus access flash through icache.*/ 383 #define EXTMEM_DBUS_ACS_CNT 0xFFFFFFFF 384 #define EXTMEM_DBUS_ACS_CNT_M ((EXTMEM_DBUS_ACS_CNT_V)<<(EXTMEM_DBUS_ACS_CNT_S)) 385 #define EXTMEM_DBUS_ACS_CNT_V 0xFFFFFFFF 386 #define EXTMEM_DBUS_ACS_CNT_S 0 387 388 #define EXTMEM_CACHE_ILG_INT_ENA_REG (DR_REG_EXTMEM_BASE + 0x078) 389 /* EXTMEM_DBUS_CNT_OVF_INT_ENA : R/W ;bitpos:[8] ;default: 1'b0 ; */ 390 /*description: The bit is used to enable interrupt by dbus counter overflow.*/ 391 #define EXTMEM_DBUS_CNT_OVF_INT_ENA (BIT(8)) 392 #define EXTMEM_DBUS_CNT_OVF_INT_ENA_M (BIT(8)) 393 #define EXTMEM_DBUS_CNT_OVF_INT_ENA_V 0x1 394 #define EXTMEM_DBUS_CNT_OVF_INT_ENA_S 8 395 /* EXTMEM_IBUS_CNT_OVF_INT_ENA : R/W ;bitpos:[7] ;default: 1'b0 ; */ 396 /*description: The bit is used to enable interrupt by ibus counter overflow.*/ 397 #define EXTMEM_IBUS_CNT_OVF_INT_ENA (BIT(7)) 398 #define EXTMEM_IBUS_CNT_OVF_INT_ENA_M (BIT(7)) 399 #define EXTMEM_IBUS_CNT_OVF_INT_ENA_V 0x1 400 #define EXTMEM_IBUS_CNT_OVF_INT_ENA_S 7 401 /* EXTMEM_MMU_ENTRY_FAULT_INT_ENA : R/W ;bitpos:[5] ;default: 1'b0 ; */ 402 /*description: The bit is used to enable interrupt by mmu entry fault.*/ 403 #define EXTMEM_MMU_ENTRY_FAULT_INT_ENA (BIT(5)) 404 #define EXTMEM_MMU_ENTRY_FAULT_INT_ENA_M (BIT(5)) 405 #define EXTMEM_MMU_ENTRY_FAULT_INT_ENA_V 0x1 406 #define EXTMEM_MMU_ENTRY_FAULT_INT_ENA_S 5 407 /* EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_ENA : R/W ;bitpos:[1] ;default: 1'b0 ; */ 408 /*description: The bit is used to enable interrupt by preload configurations fault.*/ 409 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_ENA (BIT(1)) 410 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_ENA_M (BIT(1)) 411 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_ENA_V 0x1 412 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_ENA_S 1 413 /* EXTMEM_ICACHE_SYNC_OP_FAULT_INT_ENA : R/W ;bitpos:[0] ;default: 1'b0 ; */ 414 /*description: The bit is used to enable interrupt by sync configurations fault.*/ 415 #define EXTMEM_ICACHE_SYNC_OP_FAULT_INT_ENA (BIT(0)) 416 #define EXTMEM_ICACHE_SYNC_OP_FAULT_INT_ENA_M (BIT(0)) 417 #define EXTMEM_ICACHE_SYNC_OP_FAULT_INT_ENA_V 0x1 418 #define EXTMEM_ICACHE_SYNC_OP_FAULT_INT_ENA_S 0 419 420 #define EXTMEM_CACHE_ILG_INT_CLR_REG (DR_REG_EXTMEM_BASE + 0x07C) 421 /* EXTMEM_DBUS_CNT_OVF_INT_CLR : WOD ;bitpos:[8] ;default: 1'b0 ; */ 422 /*description: The bit is used to clear interrupt by dbus counter overflow.*/ 423 #define EXTMEM_DBUS_CNT_OVF_INT_CLR (BIT(8)) 424 #define EXTMEM_DBUS_CNT_OVF_INT_CLR_M (BIT(8)) 425 #define EXTMEM_DBUS_CNT_OVF_INT_CLR_V 0x1 426 #define EXTMEM_DBUS_CNT_OVF_INT_CLR_S 8 427 /* EXTMEM_IBUS_CNT_OVF_INT_CLR : WOD ;bitpos:[7] ;default: 1'b0 ; */ 428 /*description: The bit is used to clear interrupt by ibus counter overflow.*/ 429 #define EXTMEM_IBUS_CNT_OVF_INT_CLR (BIT(7)) 430 #define EXTMEM_IBUS_CNT_OVF_INT_CLR_M (BIT(7)) 431 #define EXTMEM_IBUS_CNT_OVF_INT_CLR_V 0x1 432 #define EXTMEM_IBUS_CNT_OVF_INT_CLR_S 7 433 /* EXTMEM_MMU_ENTRY_FAULT_INT_CLR : WOD ;bitpos:[5] ;default: 1'b0 ; */ 434 /*description: The bit is used to clear interrupt by mmu entry fault.*/ 435 #define EXTMEM_MMU_ENTRY_FAULT_INT_CLR (BIT(5)) 436 #define EXTMEM_MMU_ENTRY_FAULT_INT_CLR_M (BIT(5)) 437 #define EXTMEM_MMU_ENTRY_FAULT_INT_CLR_V 0x1 438 #define EXTMEM_MMU_ENTRY_FAULT_INT_CLR_S 5 439 /* EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_CLR : WOD ;bitpos:[1] ;default: 1'b0 ; */ 440 /*description: The bit is used to clear interrupt by preload configurations fault.*/ 441 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_CLR (BIT(1)) 442 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_CLR_M (BIT(1)) 443 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_CLR_V 0x1 444 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_INT_CLR_S 1 445 /* EXTMEM_ICACHE_SYNC_OP_FAULT_INT_CLR : WOD ;bitpos:[0] ;default: 1'b0 ; */ 446 /*description: The bit is used to clear interrupt by sync configurations fault.*/ 447 #define EXTMEM_ICACHE_SYNC_OP_FAULT_INT_CLR (BIT(0)) 448 #define EXTMEM_ICACHE_SYNC_OP_FAULT_INT_CLR_M (BIT(0)) 449 #define EXTMEM_ICACHE_SYNC_OP_FAULT_INT_CLR_V 0x1 450 #define EXTMEM_ICACHE_SYNC_OP_FAULT_INT_CLR_S 0 451 452 #define EXTMEM_CACHE_ILG_INT_ST_REG (DR_REG_EXTMEM_BASE + 0x080) 453 /* EXTMEM_DBUS_ACS_FLASH_MISS_CNT_OVF_ST : RO ;bitpos:[10] ;default: 1'b0 ; */ 454 /*description: The bit is used to indicate interrupt by dbus access flash miss 455 counter overflow.*/ 456 #define EXTMEM_DBUS_ACS_FLASH_MISS_CNT_OVF_ST (BIT(10)) 457 #define EXTMEM_DBUS_ACS_FLASH_MISS_CNT_OVF_ST_M (BIT(10)) 458 #define EXTMEM_DBUS_ACS_FLASH_MISS_CNT_OVF_ST_V 0x1 459 #define EXTMEM_DBUS_ACS_FLASH_MISS_CNT_OVF_ST_S 10 460 /* EXTMEM_DBUS_ACS_CNT_OVF_ST : RO ;bitpos:[9] ;default: 1'b0 ; */ 461 /*description: The bit is used to indicate interrupt by dbus access flash/spiram 462 counter overflow.*/ 463 #define EXTMEM_DBUS_ACS_CNT_OVF_ST (BIT(9)) 464 #define EXTMEM_DBUS_ACS_CNT_OVF_ST_M (BIT(9)) 465 #define EXTMEM_DBUS_ACS_CNT_OVF_ST_V 0x1 466 #define EXTMEM_DBUS_ACS_CNT_OVF_ST_S 9 467 /* EXTMEM_IBUS_ACS_MISS_CNT_OVF_ST : RO ;bitpos:[8] ;default: 1'b0 ; */ 468 /*description: The bit is used to indicate interrupt by ibus access flash/spiram 469 miss counter overflow.*/ 470 #define EXTMEM_IBUS_ACS_MISS_CNT_OVF_ST (BIT(8)) 471 #define EXTMEM_IBUS_ACS_MISS_CNT_OVF_ST_M (BIT(8)) 472 #define EXTMEM_IBUS_ACS_MISS_CNT_OVF_ST_V 0x1 473 #define EXTMEM_IBUS_ACS_MISS_CNT_OVF_ST_S 8 474 /* EXTMEM_IBUS_ACS_CNT_OVF_ST : RO ;bitpos:[7] ;default: 1'b0 ; */ 475 /*description: The bit is used to indicate interrupt by ibus access flash/spiram 476 counter overflow.*/ 477 #define EXTMEM_IBUS_ACS_CNT_OVF_ST (BIT(7)) 478 #define EXTMEM_IBUS_ACS_CNT_OVF_ST_M (BIT(7)) 479 #define EXTMEM_IBUS_ACS_CNT_OVF_ST_V 0x1 480 #define EXTMEM_IBUS_ACS_CNT_OVF_ST_S 7 481 /* EXTMEM_MMU_ENTRY_FAULT_ST : RO ;bitpos:[5] ;default: 1'b0 ; */ 482 /*description: The bit is used to indicate interrupt by mmu entry fault.*/ 483 #define EXTMEM_MMU_ENTRY_FAULT_ST (BIT(5)) 484 #define EXTMEM_MMU_ENTRY_FAULT_ST_M (BIT(5)) 485 #define EXTMEM_MMU_ENTRY_FAULT_ST_V 0x1 486 #define EXTMEM_MMU_ENTRY_FAULT_ST_S 5 487 /* EXTMEM_ICACHE_PRELOAD_OP_FAULT_ST : RO ;bitpos:[1] ;default: 1'b0 ; */ 488 /*description: The bit is used to indicate interrupt by preload configurations fault.*/ 489 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_ST (BIT(1)) 490 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_ST_M (BIT(1)) 491 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_ST_V 0x1 492 #define EXTMEM_ICACHE_PRELOAD_OP_FAULT_ST_S 1 493 /* EXTMEM_ICACHE_SYNC_OP_FAULT_ST : RO ;bitpos:[0] ;default: 1'b0 ; */ 494 /*description: The bit is used to indicate interrupt by sync configurations fault.*/ 495 #define EXTMEM_ICACHE_SYNC_OP_FAULT_ST (BIT(0)) 496 #define EXTMEM_ICACHE_SYNC_OP_FAULT_ST_M (BIT(0)) 497 #define EXTMEM_ICACHE_SYNC_OP_FAULT_ST_V 0x1 498 #define EXTMEM_ICACHE_SYNC_OP_FAULT_ST_S 0 499 500 #define EXTMEM_CORE0_ACS_CACHE_INT_ENA_REG (DR_REG_EXTMEM_BASE + 0x084) 501 /* EXTMEM_CORE0_DBUS_WR_IC_INT_ENA : R/W ;bitpos:[5] ;default: 1'b0 ; */ 502 /*description: The bit is used to enable interrupt by dbus trying to write icache*/ 503 #define EXTMEM_CORE0_DBUS_WR_IC_INT_ENA (BIT(5)) 504 #define EXTMEM_CORE0_DBUS_WR_IC_INT_ENA_M (BIT(5)) 505 #define EXTMEM_CORE0_DBUS_WR_IC_INT_ENA_V 0x1 506 #define EXTMEM_CORE0_DBUS_WR_IC_INT_ENA_S 5 507 /* EXTMEM_CORE0_DBUS_REJECT_INT_ENA : R/W ;bitpos:[4] ;default: 1'b0 ; */ 508 /*description: The bit is used to enable interrupt by authentication fail.*/ 509 #define EXTMEM_CORE0_DBUS_REJECT_INT_ENA (BIT(4)) 510 #define EXTMEM_CORE0_DBUS_REJECT_INT_ENA_M (BIT(4)) 511 #define EXTMEM_CORE0_DBUS_REJECT_INT_ENA_V 0x1 512 #define EXTMEM_CORE0_DBUS_REJECT_INT_ENA_S 4 513 /* EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_ENA : R/W ;bitpos:[3] ;default: 1'b0 ; */ 514 /*description: The bit is used to enable interrupt by cpu access icache while 515 the corresponding dbus is disabled which include speculative access.*/ 516 #define EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_ENA (BIT(3)) 517 #define EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_ENA_M (BIT(3)) 518 #define EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_ENA_V 0x1 519 #define EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_ENA_S 3 520 /* EXTMEM_CORE0_IBUS_REJECT_INT_ENA : R/W ;bitpos:[2] ;default: 1'b0 ; */ 521 /*description: The bit is used to enable interrupt by authentication fail.*/ 522 #define EXTMEM_CORE0_IBUS_REJECT_INT_ENA (BIT(2)) 523 #define EXTMEM_CORE0_IBUS_REJECT_INT_ENA_M (BIT(2)) 524 #define EXTMEM_CORE0_IBUS_REJECT_INT_ENA_V 0x1 525 #define EXTMEM_CORE0_IBUS_REJECT_INT_ENA_S 2 526 /* EXTMEM_CORE0_IBUS_WR_IC_INT_ENA : R/W ;bitpos:[1] ;default: 1'b0 ; */ 527 /*description: The bit is used to enable interrupt by ibus trying to write icache*/ 528 #define EXTMEM_CORE0_IBUS_WR_IC_INT_ENA (BIT(1)) 529 #define EXTMEM_CORE0_IBUS_WR_IC_INT_ENA_M (BIT(1)) 530 #define EXTMEM_CORE0_IBUS_WR_IC_INT_ENA_V 0x1 531 #define EXTMEM_CORE0_IBUS_WR_IC_INT_ENA_S 1 532 /* EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_ENA : R/W ;bitpos:[0] ;default: 1'b0 ; */ 533 /*description: The bit is used to enable interrupt by cpu access icache while 534 the corresponding ibus is disabled which include speculative access.*/ 535 #define EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_ENA (BIT(0)) 536 #define EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_ENA_M (BIT(0)) 537 #define EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_ENA_V 0x1 538 #define EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_ENA_S 0 539 540 #define EXTMEM_CORE0_ACS_CACHE_INT_CLR_REG (DR_REG_EXTMEM_BASE + 0x088) 541 /* EXTMEM_CORE0_DBUS_WR_IC_INT_CLR : WOD ;bitpos:[5] ;default: 1'b0 ; */ 542 /*description: The bit is used to clear interrupt by dbus trying to write icache*/ 543 #define EXTMEM_CORE0_DBUS_WR_IC_INT_CLR (BIT(5)) 544 #define EXTMEM_CORE0_DBUS_WR_IC_INT_CLR_M (BIT(5)) 545 #define EXTMEM_CORE0_DBUS_WR_IC_INT_CLR_V 0x1 546 #define EXTMEM_CORE0_DBUS_WR_IC_INT_CLR_S 5 547 /* EXTMEM_CORE0_DBUS_REJECT_INT_CLR : WOD ;bitpos:[4] ;default: 1'b0 ; */ 548 /*description: The bit is used to clear interrupt by authentication fail.*/ 549 #define EXTMEM_CORE0_DBUS_REJECT_INT_CLR (BIT(4)) 550 #define EXTMEM_CORE0_DBUS_REJECT_INT_CLR_M (BIT(4)) 551 #define EXTMEM_CORE0_DBUS_REJECT_INT_CLR_V 0x1 552 #define EXTMEM_CORE0_DBUS_REJECT_INT_CLR_S 4 553 /* EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_CLR : WOD ;bitpos:[3] ;default: 1'b0 ; */ 554 /*description: The bit is used to clear interrupt by cpu access icache while 555 the corresponding dbus is disabled or icache is disabled which include speculative access.*/ 556 #define EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_CLR (BIT(3)) 557 #define EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_CLR_M (BIT(3)) 558 #define EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_CLR_V 0x1 559 #define EXTMEM_CORE0_DBUS_ACS_MSK_IC_INT_CLR_S 3 560 /* EXTMEM_CORE0_IBUS_REJECT_INT_CLR : WOD ;bitpos:[2] ;default: 1'b0 ; */ 561 /*description: The bit is used to clear interrupt by authentication fail.*/ 562 #define EXTMEM_CORE0_IBUS_REJECT_INT_CLR (BIT(2)) 563 #define EXTMEM_CORE0_IBUS_REJECT_INT_CLR_M (BIT(2)) 564 #define EXTMEM_CORE0_IBUS_REJECT_INT_CLR_V 0x1 565 #define EXTMEM_CORE0_IBUS_REJECT_INT_CLR_S 2 566 /* EXTMEM_CORE0_IBUS_WR_IC_INT_CLR : WOD ;bitpos:[1] ;default: 1'b0 ; */ 567 /*description: The bit is used to clear interrupt by ibus trying to write icache*/ 568 #define EXTMEM_CORE0_IBUS_WR_IC_INT_CLR (BIT(1)) 569 #define EXTMEM_CORE0_IBUS_WR_IC_INT_CLR_M (BIT(1)) 570 #define EXTMEM_CORE0_IBUS_WR_IC_INT_CLR_V 0x1 571 #define EXTMEM_CORE0_IBUS_WR_IC_INT_CLR_S 1 572 /* EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_CLR : WOD ;bitpos:[0] ;default: 1'b0 ; */ 573 /*description: The bit is used to clear interrupt by cpu access icache while 574 the corresponding ibus is disabled or icache is disabled which include speculative access.*/ 575 #define EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_CLR (BIT(0)) 576 #define EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_CLR_M (BIT(0)) 577 #define EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_CLR_V 0x1 578 #define EXTMEM_CORE0_IBUS_ACS_MSK_IC_INT_CLR_S 0 579 580 #define EXTMEM_CORE0_ACS_CACHE_INT_ST_REG (DR_REG_EXTMEM_BASE + 0x08C) 581 /* EXTMEM_CORE0_DBUS_WR_ICACHE_ST : RO ;bitpos:[5] ;default: 1'b0 ; */ 582 /*description: The bit is used to indicate interrupt by dbus trying to write icache*/ 583 #define EXTMEM_CORE0_DBUS_WR_ICACHE_ST (BIT(5)) 584 #define EXTMEM_CORE0_DBUS_WR_ICACHE_ST_M (BIT(5)) 585 #define EXTMEM_CORE0_DBUS_WR_ICACHE_ST_V 0x1 586 #define EXTMEM_CORE0_DBUS_WR_ICACHE_ST_S 5 587 /* EXTMEM_CORE0_DBUS_REJECT_ST : RO ;bitpos:[4] ;default: 1'b0 ; */ 588 /*description: The bit is used to indicate interrupt by authentication fail.*/ 589 #define EXTMEM_CORE0_DBUS_REJECT_ST (BIT(4)) 590 #define EXTMEM_CORE0_DBUS_REJECT_ST_M (BIT(4)) 591 #define EXTMEM_CORE0_DBUS_REJECT_ST_V 0x1 592 #define EXTMEM_CORE0_DBUS_REJECT_ST_S 4 593 /* EXTMEM_CORE0_DBUS_ACS_MSK_ICACHE_ST : RO ;bitpos:[3] ;default: 1'b0 ; */ 594 /*description: The bit is used to indicate interrupt by cpu access icache while 595 the core0_dbus is disabled or icache is disabled which include speculative access.*/ 596 #define EXTMEM_CORE0_DBUS_ACS_MSK_ICACHE_ST (BIT(3)) 597 #define EXTMEM_CORE0_DBUS_ACS_MSK_ICACHE_ST_M (BIT(3)) 598 #define EXTMEM_CORE0_DBUS_ACS_MSK_ICACHE_ST_V 0x1 599 #define EXTMEM_CORE0_DBUS_ACS_MSK_ICACHE_ST_S 3 600 /* EXTMEM_CORE0_IBUS_REJECT_ST : RO ;bitpos:[2] ;default: 1'b0 ; */ 601 /*description: The bit is used to indicate interrupt by authentication fail.*/ 602 #define EXTMEM_CORE0_IBUS_REJECT_ST (BIT(2)) 603 #define EXTMEM_CORE0_IBUS_REJECT_ST_M (BIT(2)) 604 #define EXTMEM_CORE0_IBUS_REJECT_ST_V 0x1 605 #define EXTMEM_CORE0_IBUS_REJECT_ST_S 2 606 /* EXTMEM_CORE0_IBUS_WR_ICACHE_ST : RO ;bitpos:[1] ;default: 1'b0 ; */ 607 /*description: The bit is used to indicate interrupt by ibus trying to write icache*/ 608 #define EXTMEM_CORE0_IBUS_WR_ICACHE_ST (BIT(1)) 609 #define EXTMEM_CORE0_IBUS_WR_ICACHE_ST_M (BIT(1)) 610 #define EXTMEM_CORE0_IBUS_WR_ICACHE_ST_V 0x1 611 #define EXTMEM_CORE0_IBUS_WR_ICACHE_ST_S 1 612 /* EXTMEM_CORE0_IBUS_ACS_MSK_ICACHE_ST : RO ;bitpos:[0] ;default: 1'b0 ; */ 613 /*description: The bit is used to indicate interrupt by cpu access icache while 614 the core0_ibus is disabled or icache is disabled which include speculative access.*/ 615 #define EXTMEM_CORE0_IBUS_ACS_MSK_ICACHE_ST (BIT(0)) 616 #define EXTMEM_CORE0_IBUS_ACS_MSK_ICACHE_ST_M (BIT(0)) 617 #define EXTMEM_CORE0_IBUS_ACS_MSK_ICACHE_ST_V 0x1 618 #define EXTMEM_CORE0_IBUS_ACS_MSK_ICACHE_ST_S 0 619 620 #define EXTMEM_CORE0_DBUS_REJECT_ST_REG (DR_REG_EXTMEM_BASE + 0x090) 621 /* EXTMEM_CORE0_DBUS_WORLD : RO ;bitpos:[3] ;default: 1'b0 ; */ 622 /*description: The bit is used to indicate the world of CPU access dbus when 623 authentication fail. 0: WORLD0 1: WORLD1*/ 624 #define EXTMEM_CORE0_DBUS_WORLD (BIT(3)) 625 #define EXTMEM_CORE0_DBUS_WORLD_M (BIT(3)) 626 #define EXTMEM_CORE0_DBUS_WORLD_V 0x1 627 #define EXTMEM_CORE0_DBUS_WORLD_S 3 628 /* EXTMEM_CORE0_DBUS_ATTR : RO ;bitpos:[2:0] ;default: 3'b0 ; */ 629 /*description: The bits are used to indicate the attribute of CPU access dbus 630 when authentication fail. 0: invalidate 1: execute-able 2: read-able 4: write-able.*/ 631 #define EXTMEM_CORE0_DBUS_ATTR 0x00000007 632 #define EXTMEM_CORE0_DBUS_ATTR_M ((EXTMEM_CORE0_DBUS_ATTR_V)<<(EXTMEM_CORE0_DBUS_ATTR_S)) 633 #define EXTMEM_CORE0_DBUS_ATTR_V 0x7 634 #define EXTMEM_CORE0_DBUS_ATTR_S 0 635 636 #define EXTMEM_CORE0_DBUS_REJECT_VADDR_REG (DR_REG_EXTMEM_BASE + 0x094) 637 /* EXTMEM_CORE0_DBUS_VADDR : RO ;bitpos:[31:0] ;default: 32'hffffffff ; */ 638 /*description: The bits are used to indicate the virtual address of CPU access 639 dbus when authentication fail.*/ 640 #define EXTMEM_CORE0_DBUS_VADDR 0xFFFFFFFF 641 #define EXTMEM_CORE0_DBUS_VADDR_M ((EXTMEM_CORE0_DBUS_VADDR_V)<<(EXTMEM_CORE0_DBUS_VADDR_S)) 642 #define EXTMEM_CORE0_DBUS_VADDR_V 0xFFFFFFFF 643 #define EXTMEM_CORE0_DBUS_VADDR_S 0 644 645 #define EXTMEM_CORE0_IBUS_REJECT_ST_REG (DR_REG_EXTMEM_BASE + 0x098) 646 /* EXTMEM_CORE0_IBUS_WORLD : RO ;bitpos:[3] ;default: 1'b0 ; */ 647 /*description: The bit is used to indicate the world of CPU access ibus when 648 authentication fail. 0: WORLD0 1: WORLD1*/ 649 #define EXTMEM_CORE0_IBUS_WORLD (BIT(3)) 650 #define EXTMEM_CORE0_IBUS_WORLD_M (BIT(3)) 651 #define EXTMEM_CORE0_IBUS_WORLD_V 0x1 652 #define EXTMEM_CORE0_IBUS_WORLD_S 3 653 /* EXTMEM_CORE0_IBUS_ATTR : RO ;bitpos:[2:0] ;default: 3'b0 ; */ 654 /*description: The bits are used to indicate the attribute of CPU access ibus 655 when authentication fail. 0: invalidate 1: execute-able 2: read-able*/ 656 #define EXTMEM_CORE0_IBUS_ATTR 0x00000007 657 #define EXTMEM_CORE0_IBUS_ATTR_M ((EXTMEM_CORE0_IBUS_ATTR_V)<<(EXTMEM_CORE0_IBUS_ATTR_S)) 658 #define EXTMEM_CORE0_IBUS_ATTR_V 0x7 659 #define EXTMEM_CORE0_IBUS_ATTR_S 0 660 661 #define EXTMEM_CORE0_IBUS_REJECT_VADDR_REG (DR_REG_EXTMEM_BASE + 0x09C) 662 /* EXTMEM_CORE0_IBUS_VADDR : RO ;bitpos:[31:0] ;default: 32'hffffffff ; */ 663 /*description: The bits are used to indicate the virtual address of CPU access 664 ibus when authentication fail.*/ 665 #define EXTMEM_CORE0_IBUS_VADDR 0xFFFFFFFF 666 #define EXTMEM_CORE0_IBUS_VADDR_M ((EXTMEM_CORE0_IBUS_VADDR_V)<<(EXTMEM_CORE0_IBUS_VADDR_S)) 667 #define EXTMEM_CORE0_IBUS_VADDR_V 0xFFFFFFFF 668 #define EXTMEM_CORE0_IBUS_VADDR_S 0 669 670 #define EXTMEM_CACHE_MMU_FAULT_CONTENT_REG (DR_REG_EXTMEM_BASE + 0x0A0) 671 /* EXTMEM_CACHE_MMU_FAULT_CODE : RO ;bitpos:[13:10] ;default: 4'h0 ; */ 672 /*description: The right-most 3 bits are used to indicate the operations which 673 cause mmu fault occurrence. 0: default 1: cpu miss 2: preload miss 3: writeback 4: cpu miss evict recovery address 5: load miss evict recovery address 6: external dma tx 7: external dma rx. The most significant bit is used to indicate this operation occurs in which one icache.*/ 674 #define EXTMEM_CACHE_MMU_FAULT_CODE 0x0000000F 675 #define EXTMEM_CACHE_MMU_FAULT_CODE_M ((EXTMEM_CACHE_MMU_FAULT_CODE_V)<<(EXTMEM_CACHE_MMU_FAULT_CODE_S)) 676 #define EXTMEM_CACHE_MMU_FAULT_CODE_V 0xF 677 #define EXTMEM_CACHE_MMU_FAULT_CODE_S 10 678 /* EXTMEM_CACHE_MMU_FAULT_CONTENT : RO ;bitpos:[9:0] ;default: 10'h0 ; */ 679 /*description: The bits are used to indicate the content of mmu entry which cause mmu fault..*/ 680 #define EXTMEM_CACHE_MMU_FAULT_CONTENT 0x000003FF 681 #define EXTMEM_CACHE_MMU_FAULT_CONTENT_M ((EXTMEM_CACHE_MMU_FAULT_CONTENT_V)<<(EXTMEM_CACHE_MMU_FAULT_CONTENT_S)) 682 #define EXTMEM_CACHE_MMU_FAULT_CONTENT_V 0x3FF 683 #define EXTMEM_CACHE_MMU_FAULT_CONTENT_S 0 684 685 #define EXTMEM_CACHE_MMU_FAULT_VADDR_REG (DR_REG_EXTMEM_BASE + 0x0A4) 686 /* EXTMEM_CACHE_MMU_FAULT_VADDR : RO ;bitpos:[31:0] ;default: 32'h0 ; */ 687 /*description: The bits are used to indicate the virtual address which cause mmu fault..*/ 688 #define EXTMEM_CACHE_MMU_FAULT_VADDR 0xFFFFFFFF 689 #define EXTMEM_CACHE_MMU_FAULT_VADDR_M ((EXTMEM_CACHE_MMU_FAULT_VADDR_V)<<(EXTMEM_CACHE_MMU_FAULT_VADDR_S)) 690 #define EXTMEM_CACHE_MMU_FAULT_VADDR_V 0xFFFFFFFF 691 #define EXTMEM_CACHE_MMU_FAULT_VADDR_S 0 692 693 #define EXTMEM_CACHE_WRAP_AROUND_CTRL_REG (DR_REG_EXTMEM_BASE + 0x0A8) 694 /* EXTMEM_CACHE_FLASH_WRAP_AROUND : R/W ;bitpos:[0] ;default: 1'b0 ; */ 695 /*description: The bit is used to enable wrap around mode when read data from flash.*/ 696 #define EXTMEM_CACHE_FLASH_WRAP_AROUND (BIT(0)) 697 #define EXTMEM_CACHE_FLASH_WRAP_AROUND_M (BIT(0)) 698 #define EXTMEM_CACHE_FLASH_WRAP_AROUND_V 0x1 699 #define EXTMEM_CACHE_FLASH_WRAP_AROUND_S 0 700 701 #define EXTMEM_CACHE_MMU_POWER_CTRL_REG (DR_REG_EXTMEM_BASE + 0x0AC) 702 /* EXTMEM_CACHE_MMU_MEM_FORCE_PU : R/W ;bitpos:[2] ;default: 1'b1 ; */ 703 /*description: The bit is used to power mmu memory down 0: follow_rtc_lslp_pd 1: power up*/ 704 #define EXTMEM_CACHE_MMU_MEM_FORCE_PU (BIT(2)) 705 #define EXTMEM_CACHE_MMU_MEM_FORCE_PU_M (BIT(2)) 706 #define EXTMEM_CACHE_MMU_MEM_FORCE_PU_V 0x1 707 #define EXTMEM_CACHE_MMU_MEM_FORCE_PU_S 2 708 /* EXTMEM_CACHE_MMU_MEM_FORCE_PD : R/W ;bitpos:[1] ;default: 1'b0 ; */ 709 /*description: The bit is used to power mmu memory down 0: follow_rtc_lslp_pd 1: power down*/ 710 #define EXTMEM_CACHE_MMU_MEM_FORCE_PD (BIT(1)) 711 #define EXTMEM_CACHE_MMU_MEM_FORCE_PD_M (BIT(1)) 712 #define EXTMEM_CACHE_MMU_MEM_FORCE_PD_V 0x1 713 #define EXTMEM_CACHE_MMU_MEM_FORCE_PD_S 1 714 /* EXTMEM_CACHE_MMU_MEM_FORCE_ON : R/W ;bitpos:[0] ;default: 1'b1 ; */ 715 /*description: The bit is used to enable clock gating to save power when access 716 mmu memory 0: enable 1: disable*/ 717 #define EXTMEM_CACHE_MMU_MEM_FORCE_ON (BIT(0)) 718 #define EXTMEM_CACHE_MMU_MEM_FORCE_ON_M (BIT(0)) 719 #define EXTMEM_CACHE_MMU_MEM_FORCE_ON_V 0x1 720 #define EXTMEM_CACHE_MMU_MEM_FORCE_ON_S 0 721 722 #define EXTMEM_CACHE_STATE_REG (DR_REG_EXTMEM_BASE + 0x0B0) 723 /* EXTMEM_ICACHE_STATE : RO ;bitpos:[11:0] ;default: 12'h1 ; */ 724 /*description: The bit is used to indicate whether icache main fsm is in idle 725 state or not. 1: in idle state 0: not in idle state*/ 726 #define EXTMEM_ICACHE_STATE 0x00000FFF 727 #define EXTMEM_ICACHE_STATE_M ((EXTMEM_ICACHE_STATE_V)<<(EXTMEM_ICACHE_STATE_S)) 728 #define EXTMEM_ICACHE_STATE_V 0xFFF 729 #define EXTMEM_ICACHE_STATE_S 0 730 731 #define EXTMEM_CACHE_ENCRYPT_DECRYPT_RECORD_DISABLE_REG (DR_REG_EXTMEM_BASE + 0x0B4) 732 /* EXTMEM_RECORD_DISABLE_G0CB_DECRYPT : R/W ;bitpos:[1] ;default: 1'b0 ; */ 733 /*description: Reserved.*/ 734 #define EXTMEM_RECORD_DISABLE_G0CB_DECRYPT (BIT(1)) 735 #define EXTMEM_RECORD_DISABLE_G0CB_DECRYPT_M (BIT(1)) 736 #define EXTMEM_RECORD_DISABLE_G0CB_DECRYPT_V 0x1 737 #define EXTMEM_RECORD_DISABLE_G0CB_DECRYPT_S 1 738 /* EXTMEM_RECORD_DISABLE_DB_ENCRYPT : R/W ;bitpos:[0] ;default: 1'b0 ; */ 739 /*description: Reserved.*/ 740 #define EXTMEM_RECORD_DISABLE_DB_ENCRYPT (BIT(0)) 741 #define EXTMEM_RECORD_DISABLE_DB_ENCRYPT_M (BIT(0)) 742 #define EXTMEM_RECORD_DISABLE_DB_ENCRYPT_V 0x1 743 #define EXTMEM_RECORD_DISABLE_DB_ENCRYPT_S 0 744 745 #define EXTMEM_CACHE_ENCRYPT_DECRYPT_CLK_FORCE_ON_REG (DR_REG_EXTMEM_BASE + 0x0B8) 746 /* EXTMEM_CLK_FORCE_ON_CRYPT : R/W ;bitpos:[2] ;default: 1'b1 ; */ 747 /*description: The bit is used to close clock gating of external memory encrypt 748 and decrypt clock. 1: close gating 0: open clock gating.*/ 749 #define EXTMEM_CLK_FORCE_ON_CRYPT (BIT(2)) 750 #define EXTMEM_CLK_FORCE_ON_CRYPT_M (BIT(2)) 751 #define EXTMEM_CLK_FORCE_ON_CRYPT_V 0x1 752 #define EXTMEM_CLK_FORCE_ON_CRYPT_S 2 753 /* EXTMEM_CLK_FORCE_ON_AUTO_CRYPT : R/W ;bitpos:[1] ;default: 1'b1 ; */ 754 /*description: The bit is used to close clock gating of automatic crypt clock. 755 1: close gating 0: open clock gating.*/ 756 #define EXTMEM_CLK_FORCE_ON_AUTO_CRYPT (BIT(1)) 757 #define EXTMEM_CLK_FORCE_ON_AUTO_CRYPT_M (BIT(1)) 758 #define EXTMEM_CLK_FORCE_ON_AUTO_CRYPT_V 0x1 759 #define EXTMEM_CLK_FORCE_ON_AUTO_CRYPT_S 1 760 /* EXTMEM_CLK_FORCE_ON_MANUAL_CRYPT : R/W ;bitpos:[0] ;default: 1'b1 ; */ 761 /*description: The bit is used to close clock gating of manual crypt clock. 762 1: close gating 0: open clock gating.*/ 763 #define EXTMEM_CLK_FORCE_ON_MANUAL_CRYPT (BIT(0)) 764 #define EXTMEM_CLK_FORCE_ON_MANUAL_CRYPT_M (BIT(0)) 765 #define EXTMEM_CLK_FORCE_ON_MANUAL_CRYPT_V 0x1 766 #define EXTMEM_CLK_FORCE_ON_MANUAL_CRYPT_S 0 767 768 #define EXTMEM_CACHE_PRELOAD_INT_CTRL_REG (DR_REG_EXTMEM_BASE + 0x0BC) 769 /* EXTMEM_ICACHE_PRELOAD_INT_CLR : WOD ;bitpos:[2] ;default: 1'b0 ; */ 770 /*description: The bit is used to clear the interrupt by icache pre-load done.*/ 771 #define EXTMEM_ICACHE_PRELOAD_INT_CLR (BIT(2)) 772 #define EXTMEM_ICACHE_PRELOAD_INT_CLR_M (BIT(2)) 773 #define EXTMEM_ICACHE_PRELOAD_INT_CLR_V 0x1 774 #define EXTMEM_ICACHE_PRELOAD_INT_CLR_S 2 775 /* EXTMEM_ICACHE_PRELOAD_INT_ENA : R/W ;bitpos:[1] ;default: 1'b0 ; */ 776 /*description: The bit is used to enable the interrupt by icache pre-load done.*/ 777 #define EXTMEM_ICACHE_PRELOAD_INT_ENA (BIT(1)) 778 #define EXTMEM_ICACHE_PRELOAD_INT_ENA_M (BIT(1)) 779 #define EXTMEM_ICACHE_PRELOAD_INT_ENA_V 0x1 780 #define EXTMEM_ICACHE_PRELOAD_INT_ENA_S 1 781 /* EXTMEM_ICACHE_PRELOAD_INT_ST : RO ;bitpos:[0] ;default: 1'b0 ; */ 782 /*description: The bit is used to indicate the interrupt by icache pre-load done.*/ 783 #define EXTMEM_ICACHE_PRELOAD_INT_ST (BIT(0)) 784 #define EXTMEM_ICACHE_PRELOAD_INT_ST_M (BIT(0)) 785 #define EXTMEM_ICACHE_PRELOAD_INT_ST_V 0x1 786 #define EXTMEM_ICACHE_PRELOAD_INT_ST_S 0 787 788 #define EXTMEM_CACHE_SYNC_INT_CTRL_REG (DR_REG_EXTMEM_BASE + 0x0C0) 789 /* EXTMEM_ICACHE_SYNC_INT_CLR : WOD ;bitpos:[2] ;default: 1'b0 ; */ 790 /*description: The bit is used to clear the interrupt by icache sync done.*/ 791 #define EXTMEM_ICACHE_SYNC_INT_CLR (BIT(2)) 792 #define EXTMEM_ICACHE_SYNC_INT_CLR_M (BIT(2)) 793 #define EXTMEM_ICACHE_SYNC_INT_CLR_V 0x1 794 #define EXTMEM_ICACHE_SYNC_INT_CLR_S 2 795 /* EXTMEM_ICACHE_SYNC_INT_ENA : R/W ;bitpos:[1] ;default: 1'b0 ; */ 796 /*description: The bit is used to enable the interrupt by icache sync done.*/ 797 #define EXTMEM_ICACHE_SYNC_INT_ENA (BIT(1)) 798 #define EXTMEM_ICACHE_SYNC_INT_ENA_M (BIT(1)) 799 #define EXTMEM_ICACHE_SYNC_INT_ENA_V 0x1 800 #define EXTMEM_ICACHE_SYNC_INT_ENA_S 1 801 /* EXTMEM_ICACHE_SYNC_INT_ST : RO ;bitpos:[0] ;default: 1'b0 ; */ 802 /*description: The bit is used to indicate the interrupt by icache sync done.*/ 803 #define EXTMEM_ICACHE_SYNC_INT_ST (BIT(0)) 804 #define EXTMEM_ICACHE_SYNC_INT_ST_M (BIT(0)) 805 #define EXTMEM_ICACHE_SYNC_INT_ST_V 0x1 806 #define EXTMEM_ICACHE_SYNC_INT_ST_S 0 807 808 #define EXTMEM_CACHE_MMU_OWNER_REG (DR_REG_EXTMEM_BASE + 0x0C4) 809 /* EXTMEM_CACHE_MMU_OWNER : R/W ;bitpos:[3:0] ;default: 4'h0 ; */ 810 /*description: The bits are used to specify the owner of MMU.bit0/bit2: ibus bit1/bit3: dbus*/ 811 #define EXTMEM_CACHE_MMU_OWNER 0x0000000F 812 #define EXTMEM_CACHE_MMU_OWNER_M ((EXTMEM_CACHE_MMU_OWNER_V)<<(EXTMEM_CACHE_MMU_OWNER_S)) 813 #define EXTMEM_CACHE_MMU_OWNER_V 0xF 814 #define EXTMEM_CACHE_MMU_OWNER_S 0 815 816 #define EXTMEM_CACHE_CONF_MISC_REG (DR_REG_EXTMEM_BASE + 0x0C8) 817 /* EXTMEM_CACHE_TRACE_ENA : R/W ;bitpos:[2] ;default: 1'b1 ; */ 818 /*description: The bit is used to enable cache trace function.*/ 819 #define EXTMEM_CACHE_TRACE_ENA (BIT(2)) 820 #define EXTMEM_CACHE_TRACE_ENA_M (BIT(2)) 821 #define EXTMEM_CACHE_TRACE_ENA_V 0x1 822 #define EXTMEM_CACHE_TRACE_ENA_S 2 823 /* EXTMEM_CACHE_IGNORE_SYNC_MMU_ENTRY_FAULT : R/W ;bitpos:[1] ;default: 1'b1 ; */ 824 /*description: The bit is used to disable checking mmu entry fault by sync operation.*/ 825 #define EXTMEM_CACHE_IGNORE_SYNC_MMU_ENTRY_FAULT (BIT(1)) 826 #define EXTMEM_CACHE_IGNORE_SYNC_MMU_ENTRY_FAULT_M (BIT(1)) 827 #define EXTMEM_CACHE_IGNORE_SYNC_MMU_ENTRY_FAULT_V 0x1 828 #define EXTMEM_CACHE_IGNORE_SYNC_MMU_ENTRY_FAULT_S 1 829 /* EXTMEM_CACHE_IGNORE_PRELOAD_MMU_ENTRY_FAULT : R/W ;bitpos:[0] ;default: 1'b1 ; */ 830 /*description: The bit is used to disable checking mmu entry fault by preload operation.*/ 831 #define EXTMEM_CACHE_IGNORE_PRELOAD_MMU_ENTRY_FAULT (BIT(0)) 832 #define EXTMEM_CACHE_IGNORE_PRELOAD_MMU_ENTRY_FAULT_M (BIT(0)) 833 #define EXTMEM_CACHE_IGNORE_PRELOAD_MMU_ENTRY_FAULT_V 0x1 834 #define EXTMEM_CACHE_IGNORE_PRELOAD_MMU_ENTRY_FAULT_S 0 835 836 #define EXTMEM_ICACHE_FREEZE_REG (DR_REG_EXTMEM_BASE + 0x0CC) 837 /* EXTMEM_ICACHE_FREEZE_DONE : RO ;bitpos:[2] ;default: 1'b0 ; */ 838 /*description: The bit is used to indicate icache freeze success*/ 839 #define EXTMEM_ICACHE_FREEZE_DONE (BIT(2)) 840 #define EXTMEM_ICACHE_FREEZE_DONE_M (BIT(2)) 841 #define EXTMEM_ICACHE_FREEZE_DONE_V 0x1 842 #define EXTMEM_ICACHE_FREEZE_DONE_S 2 843 /* EXTMEM_ICACHE_FREEZE_MODE : R/W ;bitpos:[1] ;default: 1'b0 ; */ 844 /*description: The bit is used to configure freeze mode 0: assert busy if 845 CPU miss 1: assert hit if CPU miss*/ 846 #define EXTMEM_ICACHE_FREEZE_MODE (BIT(1)) 847 #define EXTMEM_ICACHE_FREEZE_MODE_M (BIT(1)) 848 #define EXTMEM_ICACHE_FREEZE_MODE_V 0x1 849 #define EXTMEM_ICACHE_FREEZE_MODE_S 1 850 /* EXTMEM_ICACHE_FREEZE_ENA : R/W ;bitpos:[0] ;default: 1'b0 ; */ 851 /*description: The bit is used to enable icache freeze mode*/ 852 #define EXTMEM_ICACHE_FREEZE_ENA (BIT(0)) 853 #define EXTMEM_ICACHE_FREEZE_ENA_M (BIT(0)) 854 #define EXTMEM_ICACHE_FREEZE_ENA_V 0x1 855 #define EXTMEM_ICACHE_FREEZE_ENA_S 0 856 857 #define EXTMEM_ICACHE_ATOMIC_OPERATE_ENA_REG (DR_REG_EXTMEM_BASE + 0x0D0) 858 /* EXTMEM_ICACHE_ATOMIC_OPERATE_ENA : R/W ;bitpos:[0] ;default: 1'b1 ; */ 859 /*description: The bit is used to activate icache atomic operation protection. 860 In this case sync/lock operation can not interrupt miss-work. This feature does not work during invalidateAll operation.*/ 861 #define EXTMEM_ICACHE_ATOMIC_OPERATE_ENA (BIT(0)) 862 #define EXTMEM_ICACHE_ATOMIC_OPERATE_ENA_M (BIT(0)) 863 #define EXTMEM_ICACHE_ATOMIC_OPERATE_ENA_V 0x1 864 #define EXTMEM_ICACHE_ATOMIC_OPERATE_ENA_S 0 865 866 #define EXTMEM_CACHE_REQUEST_REG (DR_REG_EXTMEM_BASE + 0x0D4) 867 /* EXTMEM_CACHE_REQUEST_BYPASS : R/W ;bitpos:[0] ;default: 1'b0 ; */ 868 /*description: The bit is used to disable request recording which could cause performance issue*/ 869 #define EXTMEM_CACHE_REQUEST_BYPASS (BIT(0)) 870 #define EXTMEM_CACHE_REQUEST_BYPASS_M (BIT(0)) 871 #define EXTMEM_CACHE_REQUEST_BYPASS_V 0x1 872 #define EXTMEM_CACHE_REQUEST_BYPASS_S 0 873 874 #define EXTMEM_IBUS_PMS_TBL_LOCK_REG (DR_REG_EXTMEM_BASE + 0x0D8) 875 /* EXTMEM_IBUS_PMS_LOCK : R/W ;bitpos:[0] ;default: 1'b0 ; */ 876 /*description: The bit is used to configure the ibus permission control section boundary0*/ 877 #define EXTMEM_IBUS_PMS_LOCK (BIT(0)) 878 #define EXTMEM_IBUS_PMS_LOCK_M (BIT(0)) 879 #define EXTMEM_IBUS_PMS_LOCK_V 0x1 880 #define EXTMEM_IBUS_PMS_LOCK_S 0 881 882 #define EXTMEM_IBUS_PMS_TBL_BOUNDARY0_REG (DR_REG_EXTMEM_BASE + 0x0DC) 883 /* EXTMEM_IBUS_PMS_BOUNDARY0 : R/W ;bitpos:[11:0] ;default: 12'h0 ; */ 884 /*description: The bit is used to configure the ibus permission control section boundary0*/ 885 #define EXTMEM_IBUS_PMS_BOUNDARY0 0x00000FFF 886 #define EXTMEM_IBUS_PMS_BOUNDARY0_M ((EXTMEM_IBUS_PMS_BOUNDARY0_V)<<(EXTMEM_IBUS_PMS_BOUNDARY0_S)) 887 #define EXTMEM_IBUS_PMS_BOUNDARY0_V 0xFFF 888 #define EXTMEM_IBUS_PMS_BOUNDARY0_S 0 889 890 #define EXTMEM_IBUS_PMS_TBL_BOUNDARY1_REG (DR_REG_EXTMEM_BASE + 0x0E0) 891 /* EXTMEM_IBUS_PMS_BOUNDARY1 : R/W ;bitpos:[11:0] ;default: 12'h800 ; */ 892 /*description: The bit is used to configure the ibus permission control section boundary1*/ 893 #define EXTMEM_IBUS_PMS_BOUNDARY1 0x00000FFF 894 #define EXTMEM_IBUS_PMS_BOUNDARY1_M ((EXTMEM_IBUS_PMS_BOUNDARY1_V)<<(EXTMEM_IBUS_PMS_BOUNDARY1_S)) 895 #define EXTMEM_IBUS_PMS_BOUNDARY1_V 0xFFF 896 #define EXTMEM_IBUS_PMS_BOUNDARY1_S 0 897 898 #define EXTMEM_IBUS_PMS_TBL_BOUNDARY2_REG (DR_REG_EXTMEM_BASE + 0x0E4) 899 /* EXTMEM_IBUS_PMS_BOUNDARY2 : R/W ;bitpos:[11:0] ;default: 12'h800 ; */ 900 /*description: The bit is used to configure the ibus permission control section boundary2*/ 901 #define EXTMEM_IBUS_PMS_BOUNDARY2 0x00000FFF 902 #define EXTMEM_IBUS_PMS_BOUNDARY2_M ((EXTMEM_IBUS_PMS_BOUNDARY2_V)<<(EXTMEM_IBUS_PMS_BOUNDARY2_S)) 903 #define EXTMEM_IBUS_PMS_BOUNDARY2_V 0xFFF 904 #define EXTMEM_IBUS_PMS_BOUNDARY2_S 0 905 906 #define EXTMEM_IBUS_PMS_TBL_ATTR_REG (DR_REG_EXTMEM_BASE + 0x0E8) 907 /* EXTMEM_IBUS_PMS_SCT2_ATTR : R/W ;bitpos:[7:4] ;default: 4'hF ; */ 908 /*description: The bit is used to configure attribute of the ibus permission 909 control section2 bit0: fetch in world0 bit1: load in world0 bit2: fetch in world1 bit3: load in world1*/ 910 #define EXTMEM_IBUS_PMS_SCT2_ATTR 0x0000000F 911 #define EXTMEM_IBUS_PMS_SCT2_ATTR_M ((EXTMEM_IBUS_PMS_SCT2_ATTR_V)<<(EXTMEM_IBUS_PMS_SCT2_ATTR_S)) 912 #define EXTMEM_IBUS_PMS_SCT2_ATTR_V 0xF 913 #define EXTMEM_IBUS_PMS_SCT2_ATTR_S 4 914 /* EXTMEM_IBUS_PMS_SCT1_ATTR : R/W ;bitpos:[3:0] ;default: 4'hF ; */ 915 /*description: The bit is used to configure attribute of the ibus permission 916 control section1 bit0: fetch in world0 bit1: load in world0 bit2: fetch in world1 bit3: load in world1*/ 917 #define EXTMEM_IBUS_PMS_SCT1_ATTR 0x0000000F 918 #define EXTMEM_IBUS_PMS_SCT1_ATTR_M ((EXTMEM_IBUS_PMS_SCT1_ATTR_V)<<(EXTMEM_IBUS_PMS_SCT1_ATTR_S)) 919 #define EXTMEM_IBUS_PMS_SCT1_ATTR_V 0xF 920 #define EXTMEM_IBUS_PMS_SCT1_ATTR_S 0 921 922 #define EXTMEM_DBUS_PMS_TBL_LOCK_REG (DR_REG_EXTMEM_BASE + 0x0EC) 923 /* EXTMEM_DBUS_PMS_LOCK : R/W ;bitpos:[0] ;default: 1'b0 ; */ 924 /*description: The bit is used to configure the ibus permission control section boundary0*/ 925 #define EXTMEM_DBUS_PMS_LOCK (BIT(0)) 926 #define EXTMEM_DBUS_PMS_LOCK_M (BIT(0)) 927 #define EXTMEM_DBUS_PMS_LOCK_V 0x1 928 #define EXTMEM_DBUS_PMS_LOCK_S 0 929 930 #define EXTMEM_DBUS_PMS_TBL_BOUNDARY0_REG (DR_REG_EXTMEM_BASE + 0x0F0) 931 /* EXTMEM_DBUS_PMS_BOUNDARY0 : R/W ;bitpos:[11:0] ;default: 12'h0 ; */ 932 /*description: The bit is used to configure the dbus permission control section boundary0*/ 933 #define EXTMEM_DBUS_PMS_BOUNDARY0 0x00000FFF 934 #define EXTMEM_DBUS_PMS_BOUNDARY0_M ((EXTMEM_DBUS_PMS_BOUNDARY0_V)<<(EXTMEM_DBUS_PMS_BOUNDARY0_S)) 935 #define EXTMEM_DBUS_PMS_BOUNDARY0_V 0xFFF 936 #define EXTMEM_DBUS_PMS_BOUNDARY0_S 0 937 938 #define EXTMEM_DBUS_PMS_TBL_BOUNDARY1_REG (DR_REG_EXTMEM_BASE + 0x0F4) 939 /* EXTMEM_DBUS_PMS_BOUNDARY1 : R/W ;bitpos:[11:0] ;default: 12'h800 ; */ 940 /*description: The bit is used to configure the dbus permission control section boundary1*/ 941 #define EXTMEM_DBUS_PMS_BOUNDARY1 0x00000FFF 942 #define EXTMEM_DBUS_PMS_BOUNDARY1_M ((EXTMEM_DBUS_PMS_BOUNDARY1_V)<<(EXTMEM_DBUS_PMS_BOUNDARY1_S)) 943 #define EXTMEM_DBUS_PMS_BOUNDARY1_V 0xFFF 944 #define EXTMEM_DBUS_PMS_BOUNDARY1_S 0 945 946 #define EXTMEM_DBUS_PMS_TBL_BOUNDARY2_REG (DR_REG_EXTMEM_BASE + 0x0F8) 947 /* EXTMEM_DBUS_PMS_BOUNDARY2 : R/W ;bitpos:[11:0] ;default: 12'h800 ; */ 948 /*description: The bit is used to configure the dbus permission control section boundary2*/ 949 #define EXTMEM_DBUS_PMS_BOUNDARY2 0x00000FFF 950 #define EXTMEM_DBUS_PMS_BOUNDARY2_M ((EXTMEM_DBUS_PMS_BOUNDARY2_V)<<(EXTMEM_DBUS_PMS_BOUNDARY2_S)) 951 #define EXTMEM_DBUS_PMS_BOUNDARY2_V 0xFFF 952 #define EXTMEM_DBUS_PMS_BOUNDARY2_S 0 953 954 #define EXTMEM_DBUS_PMS_TBL_ATTR_REG (DR_REG_EXTMEM_BASE + 0x0FC) 955 /* EXTMEM_DBUS_PMS_SCT2_ATTR : R/W ;bitpos:[3:2] ;default: 2'd3 ; */ 956 /*description: The bit is used to configure attribute of the dbus permission 957 control section2 bit0: load in world0 bit2: load in world1*/ 958 #define EXTMEM_DBUS_PMS_SCT2_ATTR 0x00000003 959 #define EXTMEM_DBUS_PMS_SCT2_ATTR_M ((EXTMEM_DBUS_PMS_SCT2_ATTR_V)<<(EXTMEM_DBUS_PMS_SCT2_ATTR_S)) 960 #define EXTMEM_DBUS_PMS_SCT2_ATTR_V 0x3 961 #define EXTMEM_DBUS_PMS_SCT2_ATTR_S 2 962 /* EXTMEM_DBUS_PMS_SCT1_ATTR : R/W ;bitpos:[1:0] ;default: 2'd3 ; */ 963 /*description: The bit is used to configure attribute of the dbus permission 964 control section1 bit0: load in world0 bit2: load in world1*/ 965 #define EXTMEM_DBUS_PMS_SCT1_ATTR 0x00000003 966 #define EXTMEM_DBUS_PMS_SCT1_ATTR_M ((EXTMEM_DBUS_PMS_SCT1_ATTR_V)<<(EXTMEM_DBUS_PMS_SCT1_ATTR_S)) 967 #define EXTMEM_DBUS_PMS_SCT1_ATTR_V 0x3 968 #define EXTMEM_DBUS_PMS_SCT1_ATTR_S 0 969 970 #define EXTMEM_CLOCK_GATE_REG (DR_REG_EXTMEM_BASE + 0x100) 971 /* EXTMEM_CLK_EN : R/W ;bitpos:[0] ;default: 1'b1 ; */ 972 /*description: Reserved.*/ 973 #define EXTMEM_CLK_EN (BIT(0)) 974 #define EXTMEM_CLK_EN_M (BIT(0)) 975 #define EXTMEM_CLK_EN_V 0x1 976 #define EXTMEM_CLK_EN_S 0 977 978 #define EXTMEM_DATE_REG (DR_REG_EXTMEM_BASE + 0x3FC) 979 /* EXTMEM_DATE : R/W ;bitpos:[27:0] ;default: 28'h2007160 ; */ 980 /*description: Reserved.*/ 981 #define EXTMEM_DATE 0x0FFFFFFF 982 #define EXTMEM_DATE_M ((EXTMEM_DATE_V)<<(EXTMEM_DATE_S)) 983 #define EXTMEM_DATE_V 0xFFFFFFF 984 #define EXTMEM_DATE_S 0 985 986 #ifdef __cplusplus 987 } 988 #endif 989 990 991 992 #endif /*_SOC_EXTMEM_REG_H_ */ 993