47 #ifndef INCLUDE_SDL_ECC_H_ 48 #define INCLUDE_SDL_ECC_H_ 53 #include "sdl_common.h" 54 #include <src/ip/sdl_ip_ecc.h> 57 #if defined (SOC_J721E) 58 #define SDL_MCU_R5F0_SUB_MEMORY SDL_MCU_R5FSS0_CORE0_ECC_AGGR_KSBUS_VBUSM2AXI0_EDC_CTRL_RAM_ID 61 #if defined (SOC_J7200) 62 #define SDL_MCU_R5F0_SUB_MEMORY SDL_MCU_R5FSS0_PULSAR_SL_KSBUS_VBUSM2AXI0_EDC_CTRL_0_RAM_ID 163 #if defined (SOC_J721E) 165 #define SDL_ECC_MEMTYPE_MCU_R5F0_CORE (0u) 166 #define SDL_ECC_MEMTYPE_MCU_R5F1_CORE (1u) 167 #define SDL_ECC_MEMTYPE_MCU_ADC0 (2u) 168 #define SDL_ECC_MEMTYPE_MCU_ADC1 (3u) 169 #define SDL_ECC_MEMTYPE_MCU_CPSW0 (4u) 170 #define SDL_ECC_MEMTYPE_MCU_FSS0_HPB0 (5u) 171 #define SDL_ECC_MEMTYPE_MCU_FSS0_OSPI0 (6u) 172 #define SDL_ECC_MEMTYPE_MCU_FSS0_OSPI1 (7u) 173 #define SDL_ECC_MEMTYPE_MCU_MCAN0 (8u) 174 #define SDL_ECC_MEMTYPE_MCU_MCAN1 (9u) 175 #define SDL_ECC_MEMTYPE_MCU_MSRAM0 (10u) 176 #define SDL_ECC_MEMTYPE_MCU_NAVSS0 (11u) 177 #define SDL_ECC_MEMTYPE_MCU_PSRAM0 (12u) 178 #define SDL_ECC_MEMTYPE_MCU_CBASS_ECC_AGGR0 (13u) 179 #define SDL_MCAN0_MCANSS_MSGMEM_WRAP_ECC_AGGR (14u) 180 #define SDL_MCAN1_MCANSS_MSGMEM_WRAP_ECC_AGGR (15u) 181 #define SDL_MCAN2_MCANSS_MSGMEM_WRAP_ECC_AGGR (16u) 182 #define SDL_MCAN3_MCANSS_MSGMEM_WRAP_ECC_AGGR (17u) 183 #define SDL_MCAN4_MCANSS_MSGMEM_WRAP_ECC_AGGR (18u) 184 #define SDL_MCAN5_MCANSS_MSGMEM_WRAP_ECC_AGGR (19u) 185 #define SDL_MCAN6_MCANSS_MSGMEM_WRAP_ECC_AGGR (20u) 186 #define SDL_MCAN7_MCANSS_MSGMEM_WRAP_ECC_AGGR (21u) 187 #define SDL_MCAN8_MCANSS_MSGMEM_WRAP_ECC_AGGR (22u) 188 #define SDL_MCAN9_MCANSS_MSGMEM_WRAP_ECC_AGGR (23u) 189 #define SDL_MCAN10_MCANSS_MSGMEM_WRAP_ECC_AGGR (24u) 190 #define SDL_MCAN11_MCANSS_MSGMEM_WRAP_ECC_AGGR (25u) 191 #define SDL_MCAN12_MCANSS_MSGMEM_WRAP_ECC_AGGR (26u) 192 #define SDL_MCAN13_MCANSS_MSGMEM_WRAP_ECC_AGGR (27u) 193 #define SDL_MSRAM_512K0_MSRAM16KX256E_ECC_AGGR (28u) 194 #define SDL_PCIE0_PCIE_G4X2_CORE_AXI_ECC_AGGR (29u) 195 #define SDL_PCIE0_PCIE_G4X2_CORE_ECC_AGGR (30u) 196 #define SDL_PCIE1_PCIE_G4X2_CORE_AXI_ECC_AGGR (31u) 197 #define SDL_PCIE1_PCIE_G4X2_CORE_ECC_AGGR (32u) 198 #define SDL_PCIE2_PCIE_G4X2_CORE_AXI_ECC_AGGR (33u) 199 #define SDL_PCIE2_PCIE_G4X2_CORE_ECC_AGGR (34u) 200 #define SDL_PCIE3_PCIE_G4X2_CORE_AXI_ECC_AGGR (35u) 201 #define SDL_PCIE3_PCIE_G4X2_CORE_ECC_AGGR (36u) 202 #define SDL_I3C0_I3C_S_ECC_AGGR (37u) 203 #define SDL_I3C0_I3C_P_ECC_AGGR (38u) 204 #define SDL_MCU_I3C0_I3C_P_ECC_AGGR (39u) 205 #define SDL_MCU_I3C0_I3C_S_ECC_AGGR (40u) 206 #define SDL_MCU_I3C1_I3C_P_ECC_AGGR (41u) 207 #define SDL_MCU_I3C1_I3C_S_ECC_AGGR (42u) 208 #define SDL_PRU_ICSSG0_ICSS_G_CORE_BORG_ECC_AGGR (43u) 209 #define SDL_PRU_ICSSG1_ICSS_G_CORE_BORG_ECC_AGGR (44u) 210 #define SDL_CBASS_ECC_AGGR0_MAIN_INFRA_ECC_AGGR (45u) 211 #define SDL_MAIN_RC_ECC_AGGR0 (46u) 212 #define SDL_NAVSS_NBSS_ECC_AGGR0_NAVSS512L_NBSS_PHYS_ECC_AGGR (47u) 213 #define SDL_DMPAC0_ECC_AGGR (48u) 214 #define SDL_MAIN_HC_ECC_AGGR0 (49u) 215 #define SDL_VPAC0_ECC_AGGR (50u) 216 #define SDL_VPAC0_VISS_ECC_AGGR (51u) 217 #define SDL_VPAC0_LDC_ECC_AGGR (52u) 218 #define SDL_R5FSS0_CORE0_ECC_AGGR (53u) 219 #define SDL_R5FSS1_CORE0_ECC_AGGR (54u) 220 #define SDL_R5FSS0_CORE1_ECC_AGGR (55u) 221 #define SDL_R5FSS1_CORE1_ECC_AGGR (56u) 222 #define SDL_NAVSS_VIRTSS_ECC_AGGR0 (57u) 223 #define SDL_CPSW0_CPSW_9XUSS_CORE_ECC_CPSW_ECC_AGGR (58u) 224 #define SDL_MCU_SA2_UL0_SA2_UL_SA2_UL_ECC_AGGR (59u) 225 #define SDL_SA2_UL0_SA2_UL_SA2_UL_ECC_AGGR (60u) 226 #define SDL_MLB0_MLBSS2P0_MLBDIM_WRAP_ECC_AGGR (61u) 227 #define SDL_MAIN_AC_ECC_AGGR0 (62u) 228 #define SDL_WKUP_VTM0_K3VTM_NC_ECCAGGR (63u) 229 #define SDL_MMCSD0_EMMC8SSC_ECC_AGGR_RXMEM (64u) 230 #define SDL_MMCSD0_EMMC8SSC_ECC_AGGR_TXMEM (65u) 231 #define SDL_MMCSD1_EMMCSD4SS_ECC_AGGR_RXMEM (66u) 232 #define SDL_MMCSD1_EMMCSD4SS_ECC_AGGR_TXMEM (67u) 233 #define SDL_MMCSD2_EMMCSD4SS_ECC_AGGR_RXMEM (68u) 234 #define SDL_MMCSD2_EMMCSD4SS_ECC_AGGR_TXMEM (69u) 235 #define SDL_DSS_EDP0_K3_DSS_EDP_MHDPTX_WRAPPER_ECC_AGGR_CORE (70u) 236 #define SDL_DSS_EDP0_K3_DSS_EDP_MHDPTX_WRAPPER_ECC_AGGR_PHY (71u) 237 #define SDL_DSS_EDP0_K3_DSS_EDP_MHDPTX_WRAPPER_ECC_AGGR_DSC (72u) 238 #define SDL_UFS0_UFSHCI2P1SSC_HCLK_ECC_AGGR (73u) 239 #define SDL_CSI_RX_IF0_ECC_AGGR_0 (74u) 240 #define SDL_CSI_RX_IF1_ECC_AGGR_0 (75u) 241 #define SDL_NAVSS0_MODSS_ECC_AGGR0 (76u) 242 #define SDL_USB0_USB3P0SSC_USB3P0SS_CORE_A_ECC_AGGR (77u) 243 #define SDL_USB1_USB3P0SSC_USB3P0SS_CORE_A_ECC_AGGR (78u) 244 #define SDL_NAVSS0_VIRTSS_ECC_AGGR0 (79u) 245 #define SDL_NAVSS0_NBSS_ECC_AGGR0 (80u) 246 #define SDL_IDOM1_ECC_AGGR0 (81u) 247 #define SDL_IDOM1_ECC_AGGR1 (82u) 248 #define SDL_WKUP_DMSC0_ECC_AGGR (83u) 249 #define SDL_IDOM0_ECC_AGGR0_IDOM0_ECC_AGGR (84u) 250 #define SDL_IDOM0_ECC_AGGR1_IDOM0_ECC_AGGR (85u) 251 #define SDL_CSI_TX_IF0_CSI_TX_IF_ECC_AGGR (86u) 252 #define SDL_CSI_TX_IF0_CSI_TX_IF_ECC_AGGR_BYTE (87u) 253 #define SDL_WKUP_CBASS_ECC_AGGR0_WAKEUP_ECC_AGGR (88u) 254 #define SDL_DSS_DSI0_K3_DSS_DSI_TOP_ECC_AGGR_SYS (89u) 255 #define SDL_MCU_NAVSS0_UDMASS_ECC_AGGR0 (90u) 256 #define SDL_PDMA5_PDMA_MAIN_MCAN_ECCAGGR (91u) 257 #define SDL_PSRAMECC0_PSRAM256X32EC_ECC_AGGR (92u) 258 #define SDL_NAVSS0_UDMASS_ECC_AGGR0 (93u) 260 #define SDL_ECC_MEMTYPE_MAIN_MSMC_AGGR0 (94u) 261 #define SDL_ECC_MEMTYPE_MAIN_MSMC_AGGR1 (95u) 262 #define SDL_ECC_MEMTYPE_MAIN_MSMC_AGGR2 (96u) 263 #define SDL_COMPUTE_CLUSTER0_A72SS0_COMMON_ECC_AGGR (97u) 264 #define SDL_COMPUTE_CLUSTER0_A72SS0_CORE0_ECC_AGGR (98u) 265 #define SDL_COMPUTE_CLUSTER0_A72SS0_CORE1_ECC_AGGR (99u) 266 #define SDL_COMPUTE_CLUSTER0_DDR32SSC_EW_BRCTL_SC_ECC_AGGR_VBUS (100u) 267 #define SDL_COMPUTE_CLUSTER0_DDR32SSC_EW_BRCTL_SC_ECC_AGGR_CTL (101u) 268 #define SDL_COMPUTE_CLUSTER0_DDR32SSC_EW_BRCTL_SC_ECC_AGGR_CFG (102u) 269 #define SDL_COMPUTE_CLUSTER0_C71SS0_ECC_AGGR (103u) 270 #define SDL_COMPUTE_CLUSTER0_GIC_ECC_AGGR (104u) 272 #define SDL_ECC_MEMTYPE_MAX (SDL_COMPUTE_CLUSTER0_GIC_ECC_AGGR + 1U) 275 #define SDL_ECC_AGGREGATOR_MAX_LOW_ENTRIES (SDL_NAVSS0_UDMASS_ECC_AGGR0+1U) 277 #define SDL_ECC_AGGREGATOR_MAX_HIGH_ENTRIES (SDL_COMPUTE_CLUSTER0_GIC_ECC_AGGR - \ 278 SDL_ECC_MEMTYPE_MAIN_MSMC_AGGR0 + 1u) 282 #if defined (SOC_J7200) 284 #define SDL_ECC_MEMTYPE_MCU_R5F0_CORE (0u) 285 #define SDL_ECC_MEMTYPE_MCU_R5F1_CORE (1u) 286 #define SDL_ECC_PDMA10_ECC_AGGR (2u) 287 #define SDL_ECC_PCIE1_1_ECC_AGGR (3u) 288 #define SDL_ECC_MCU_NAVSS0_0_ECC_AGGR (4u) 289 #define SDL_ECC_MCU_NAVSS0_1_ECC_AGGR (5u) 290 #define SDL_ECC_PCIE1_0_ECC_AGGR (6u) 291 #define SDL_ECC_USB0_ECC_AGGR (7u) 292 #define SDL_ECC_CPSW0_ECC_AGGR (8u) 293 #define SDL_ECC_MMCSD0_1_ECC_AGGR (9u) 294 #define SDL_ECC_MMCSD0_0_ECC_AGGR (10u) 295 #define SDL_ECC_MMCSD1_0_ECC_AGGR (11u) 296 #define SDL_ECC_MMCSD1_1_ECC_AGGR (12u) 297 #define SDL_ECC_MSRAM_512K0_ECC_AGGR (13u) 298 #define SDL_ECC_MCAN8_ECC_AGGR (14u) 299 #define SDL_ECC_MCAN9_ECC_AGGR (15u) 300 #define SDL_ECC_MCAN10_ECC_AGGR (16u) 301 #define SDL_ECC_MCAN11_ECC_AGGR (17u) 302 #define SDL_ECC_MCAN12_ECC_AGGR (18u) 303 #define SDL_ECC_MCAN13_ECC_AGGR (19u) 304 #define SDL_ECC_MCAN14_ECC_AGGR (20u) 305 #define SDL_ECC_MCAN15_ECC_AGGR (21u) 306 #define SDL_ECC_MCAN16_ECC_AGGR (22u) 307 #define SDL_ECC_MCAN17_ECC_AGGR (23u) 308 #define SDL_R5FSS0_CORE0_ECC_AGGR (24u) 309 #define SDL_ECC_I3C0_1_ECC_AGGR (25u) 310 #define SDL_ECC_I3C0_0_ECC_AGGR (26u) 311 #define SDL_ECC_MCAN0_ECC_AGGR (27u) 312 #define SDL_ECC_MCAN1_ECC_AGGR (28u) 313 #define SDL_ECC_MCAN2_ECC_AGGR (29u) 314 #define SDL_ECC_MCAN3_ECC_AGGR (30u) 315 #define SDL_ECC_MCAN4_ECC_AGGR (31u) 316 #define SDL_ECC_MCAN5_ECC_AGGR (32u) 317 #define SDL_ECC_MCAN6_ECC_AGGR (33u) 318 #define SDL_ECC_MCAN7_ECC_AGGR (34u) 319 #define SDL_ECC_IDOM0_ECC_AGGR16 (35u) 320 #define SDL_ECC_IDOM1_ECC_AGGR17 (36u) 321 #define SDL_ECC_VC_MAIN_RC_ECC_AGGR4_ECC_AGGR (37u) 322 #define SDL_ECC_VC_MAIN_HC_ECC_AGGR5_ECC_AGGR (38u) 323 #define SDL_ECC_VC_MAIN_SPI_G0_MAIN_0_ECCAGGR6 (39u) 324 #define SDL_ECC_VCL_NAVSS256_VIRTSS_PHYS_ECC_AGGR10_ECC_AGGR (40u) 325 #define SDL_ECC_VC_NAVSS256_NBSS_PHYS_ECC_AGGR11_ECC_AGGR (41u) 326 #define SDL_ECC_NAVSS0_0_ECC_AGGR (42u) 327 #define SDL_ECC_NAVSS0_1_ECC_AGGR (43u) 328 #define SDL_ECC_NAVSS0_3_ECC_AGGR (44u) 329 #define SDL_ECC_NAVSS0_2_ECC_AGGR (45u) 330 #define SDL_ECC_PDMA5_ECC_AGGR (46u) 331 #define SDL_ECC_PDMA9_ECC_AGGR (47u) 332 #define SDL_ECC_MCU_MCAN0_ECC_AGGR (48u) 333 #define SDL_ECC_MCU_MCAN1_ECC_AGGR (49u) 334 #define SDL_ECC_MCU_ADC0_ECC_AGGR (50u) 335 #define SDL_ECC_MCU_ADC1_ECC_AGGR (51u) 336 #define SDL_ECC_MCU_CPSW0_ECC_AGGR (52u) 337 #define SDL_ECC_MCU_MSRAM_1MB0_ECC_AGGR (53u) 338 #define SDL_ECC_MCU_SA2_UL0_ECC_AGGR (54u) 339 #define SDL_ECC_MCU_I3C0_1_ECC_AGGR (55u) 340 #define SDL_ECC_MCU_I3C0_0_ECC_AGGR (56u) 341 #define SDL_ECC_MCU_I3C1_1_ECC_AGGR (57u) 342 #define SDL_ECC_MCU_I3C1_0_ECC_AGGR (58u) 343 #define SDL_ECC_WKUP_VTM0_ECC_AGGR (59u) 344 #define SDL_ECC_MCU_FSS0_0_ECC_AGGR (60u) 345 #define SDL_ECC_MCU_FSS0_1_ECC_AGGR (61u) 346 #define SDL_ECC_MCU_VC_MCU_ECC_AGGR0 (62u) 347 #define SDL_R5FSS0_CORE1_ECC_AGGR (63u) 348 #define SDL_ECC_PSRAMECC0_ECC_AGGR (64u) 349 #define SDL_ECC_PSRAM2KECC0_ECC_AGGR (65u) 350 #define SDL_ECC_VCL_MAIN_INFRA_ECC_AGGR0_0_ECC_AGGR (66u) 352 #define SDL_ECC_MEMTYPE_MAIN_MSMC_AGGR0 (67u) 353 #define SDL_ECC_COMPUTE_CLUSTER0_2_ECC_AGGR (68u) 354 #define SDL_ECC_COMPUTE_CLUSTER0_4_ECC_AGGR (69u) 355 #define SDL_ECC_COMPUTE_CLUSTER0_5_ECC_AGGR (70u) 356 #define SDL_ECC_COMPUTE_CLUSTER0_1_ECC_AGGR (71u) 357 #define SDL_ECC_COMPUTE_CLUSTER0_0_ECC_AGGR (72u) 358 #define SDL_DDR0_0_ECC_AGGR (73u) 359 #define SDL_DDR0_1_ECC_AGGR (74u) 360 #define SDL_DDR0_2_ECC_AGGR (75u) 361 #define SDL_ECC_COMPUTE_CLUSTER0_6_ECC_AGGR (76u) 364 #define SDL_ECC_MEMTYPE_MAX (SDL_ECC_COMPUTE_CLUSTER0_6_ECC_AGGR + 1U) 368 #define SDL_ECC_AGGREGATOR_MAX_LOW_ENTRIES (SDL_ECC_VCL_MAIN_INFRA_ECC_AGGR0_0_ECC_AGGR+1U) 370 #define SDL_ECC_AGGREGATOR_MAX_HIGH_ENTRIES (SDL_ECC_COMPUTE_CLUSTER0_6_ECC_AGGR - \ 371 SDL_ECC_MEMTYPE_MAIN_MSMC_AGGR0 + 1u) 381 #if defined (SOC_J721E) 388 #define SDL_ECC_R5F_MEM_SUBTYPE_ATCM0_BANK0_VECTOR_ID (SDL_MCU_R5FSS0_CORE0_ECC_AGGR_PULSAR_SL_ATCM0_BANK0_RAM_ID) 390 #define SDL_ECC_R5F_MEM_SUBTYPE_ATCM0_BANK1_VECTOR_ID (SDL_MCU_R5FSS0_CORE0_ECC_AGGR_PULSAR_SL_ATCM0_BANK1_RAM_ID) 392 #define SDL_ECC_R5F_MEM_SUBTYPE_B0TCM0_BANK0_VECTOR_ID (SDL_MCU_R5FSS0_CORE0_ECC_AGGR_PULSAR_SL_B0TCM0_BANK0_RAM_ID) 394 #define SDL_ECC_R5F_MEM_SUBTYPE_B0TCM0_BANK1_VECTOR_ID (SDL_MCU_R5FSS0_CORE0_ECC_AGGR_PULSAR_SL_B0TCM0_BANK1_RAM_ID) 396 #define SDL_ECC_R5F_MEM_SUBTYPE_B1TCM0_BANK0_VECTOR_ID (SDL_MCU_R5FSS0_CORE0_ECC_AGGR_PULSAR_SL_B1TCM0_BANK0_RAM_ID) 398 #define SDL_ECC_R5F_MEM_SUBTYPE_B1TCM0_BANK1_VECTOR_ID (SDL_MCU_R5FSS0_CORE0_ECC_AGGR_PULSAR_SL_B1TCM0_BANK1_RAM_ID) 400 #define SDL_ECC_R5F_MEM_SUBTYPE_KS_VIM_RAM_VECTOR_ID (SDL_MCU_R5FSS0_CORE0_ECC_AGGR_CPU0_KS_VIM_RAMECC_RAM_ID) 404 #if defined (SOC_J7200) 411 #define SDL_ECC_R5F_MEM_SUBTYPE_ATCM0_BANK0_VECTOR_ID (SDL_MCU_R5FSS0_PULSAR_SL_ATCM0_BANK0_RAM_ID) 413 #define SDL_ECC_R5F_MEM_SUBTYPE_ATCM0_BANK1_VECTOR_ID (SDL_MCU_R5FSS0_PULSAR_SL_ATCM0_BANK1_RAM_ID) 415 #define SDL_ECC_R5F_MEM_SUBTYPE_B0TCM0_BANK0_VECTOR_ID (SDL_MCU_R5FSS0_PULSAR_SL_B0TCM0_BANK0_RAM_ID) 417 #define SDL_ECC_R5F_MEM_SUBTYPE_B0TCM0_BANK1_VECTOR_ID (SDL_MCU_R5FSS0_PULSAR_SL_B0TCM0_BANK1_RAM_ID) 419 #define SDL_ECC_R5F_MEM_SUBTYPE_B1TCM0_BANK0_VECTOR_ID (SDL_MCU_R5FSS0_PULSAR_SL_B1TCM0_BANK0_RAM_ID) 421 #define SDL_ECC_R5F_MEM_SUBTYPE_B1TCM0_BANK1_VECTOR_ID (SDL_MCU_R5FSS0_PULSAR_SL_B1TCM0_BANK1_RAM_ID) 423 #define SDL_ECC_R5F_MEM_SUBTYPE_KS_VIM_RAM_VECTOR_ID (SDL_MCU_R5FSS0_CPU0_KS_VIM_RAMECC_RAM_ID) 444 typedef struct SDL_ECC_InitConfig_s
457 typedef struct SDL_ECC_InjectErrorConfig_s
471 typedef struct SDL_ECC_ErrorInfo_s
548 uint32_t selfTestTimeOut);
674 uint64_t bitErrorOffset,
675 uint32_t bitErrorGroup);
SDL_ECC_AggregatorType
This enumerator defines the different ECC aggregator types.
Definition: sdl_ecc.h:104
int32_t SDL_ECC_init(SDL_ECC_MemType eccMemType, const SDL_ECC_InitConfig_t *pECCInitConfig)
Initializes ECC module for ECC detection.
SDL_ESM_Inst
Defines the different ESM instance types
Definition: ip/sdl_esm.h:167
int32_t SDL_ECC_initMemory(SDL_ECC_MemType eccMemType, SDL_ECC_MemSubType memSubType)
Initializes Memory to be ready for ECC error detection. Assumes ECC is already enabled.
uint32_t SDL_Ecc_AggrEDCErrorSubType
This enumerator defines the types of possible EDC errors.
Definition: sdl_ip_ecc.h:187
Definition: sdl_ecc.h:126
Definition: sdl_ecc.h:120
int32_t SDL_ECC_getESMErrorInfo(SDL_ESM_Inst instance, uint32_t intSrc, SDL_ECC_MemType *eccMemType, SDL_Ecc_AggrIntrSrc *intrSrcType)
Retrieves the ECC error information for the specified ESM error. If it isn't an ECC error or the ECC ...
uint32_t bitErrorGroup
Definition: sdl_ecc.h:483
SDL_ECC_MemSubType memSubType
Definition: sdl_ecc.h:475
void SDL_ECC_applicationCallbackFunction(SDL_ECC_MemType eccMemType, uint32_t errorSrc, uint32_t address, uint32_t ramId, uint64_t bitErrorOffset, uint32_t bitErrorGroup)
Application provided external callback function for ECC handling Called inside the reference function...
uint32_t chkGrp
Definition: sdl_ecc.h:463
This structure defines the inject error configuration.
Definition: sdl_ecc.h:457
int32_t SDL_ECC_initEsm(const SDL_ESM_Inst esmInstType)
Initializes an module for usage with ECC module.
SDL_Ecc_AggrIntrSrc intrSrc
Definition: sdl_ecc.h:477
int32_t SDL_ECC_injectError(SDL_ECC_MemType eccMemType, SDL_ECC_MemSubType memSubType, SDL_ECC_InjectErrorType errorType, const SDL_ECC_InjectErrorConfig_t *pECCErrorConfig)
Injects ECC error at specified location Assumes ECC is already enabled.
Definition: sdl_ecc.h:107
This structure contains the static register group for Ecc aggregator used by the SDL_ecc_aggrReadStat...
Definition: sdl_ip_ecc.h:348
uint32_t numRams
Definition: sdl_ecc.h:446
This structure defines the error status information.
Definition: sdl_ecc.h:471
SDL_ECC_RamIdType
This enumerator defines the different ECC RAM ID types.
Definition: sdl_ecc.h:142
uint32_t SDL_ECC_MemType
This enumerator indicate ECC memory type.
Definition: sdl_ecc.h:161
int32_t SDL_ECC_getErrorInfo(SDL_ECC_MemType eccMemType, SDL_Ecc_AggrIntrSrc intrSrc, SDL_ECC_ErrorInfo_t *pErrorInfo)
Retrieves the ECC error information for the specified memtype and interrupt source.
SDL_ECC_MemSubType * pMemSubTypeList
Definition: sdl_ecc.h:449
uint64_t bitErrorOffset
Definition: sdl_ecc.h:485
void SDL_ECC_registerVIMDEDHandler(SDL_ECC_VIMDEDVector_t VIMDEDHandler)
Register Handler for VIM DED ECC error.
This structure defines the elements of ECC Init configuration.
Definition: sdl_ecc.h:444
int32_t SDL_ECC_ackIntr(SDL_ECC_MemType eccMemType, SDL_Ecc_AggrIntrSrc intrSrc)
Acknowledge the ECC interrupt.
Definition: sdl_ecc.h:124
Definition: sdl_ecc.h:143
uint32_t flipBitMask
Definition: sdl_ecc.h:461
int32_t SDL_ECC_selfTest(SDL_ECC_MemType eccMemType, SDL_ECC_MemSubType memSubType, SDL_ECC_InjectErrorType errorType, const SDL_ECC_InjectErrorConfig_t *pECCErrorConfig, uint32_t selfTestTimeOut)
Runs self test by injecting and error and monitor response Assumes ECC is already enabled...
void(* SDL_ECC_VIMDEDVector_t)(void)
Definition: sdl_ecc.h:431
Header file contains enumerations, structure definitions and function declarations for SDL Error Sign...
uint32_t * pErrMem
Definition: sdl_ecc.h:459
uint32_t SDL_ECC_MemSubType
This enumerator indicate ECC memory Sub Type.
Definition: sdl_ecc.h:379
SDL_ECC_MemType eccMemType
Definition: sdl_ecc.h:473
int32_t SDL_ECC_clearNIntrPending(SDL_ECC_MemType eccMemType, SDL_ECC_MemSubType memSubType, SDL_Ecc_AggrIntrSrc intrSrc, SDL_Ecc_AggrEDCErrorSubType subType, uint32_t numEvents)
Clears N pending interrupts for the specified memtype, subtype and interrupt source.
Definition: sdl_ecc.h:105
Definition: sdl_ecc.h:134
Definition: sdl_ecc.h:118
uint32_t SDL_Ecc_AggrIntrSrc
This enumerator defines the types of possible ECC errors.
Definition: sdl_ip_ecc.h:106
Definition: sdl_ecc.h:132
int32_t SDL_ECC_getStaticRegisters(SDL_ECC_MemType eccMemType, SDL_ECC_staticRegs *pStaticRegs)
Gets the static registers for the specified ECC instance.
Definition: sdl_ecc.h:122
Definition: sdl_ecc.h:130
uint32_t bitErrCnt
Definition: sdl_ecc.h:479
Definition: sdl_ecc.h:128
Definition: sdl_ecc.h:145
void(* SDL_ECC_ErrorCallback_t)(uint32_t errorSrc, uint32_t address)
Definition: sdl_ecc.h:428
SDL_ECC_InjectErrorType
ECC Inject error types.
Definition: sdl_ecc.h:116
uint32_t injectBitErrCnt
Definition: sdl_ecc.h:481