RTEMS 6.3
Loading...
Searching...
No Matches

This source file contains the implementation of OCM ECC support. More...

#include <bsp.h>
#include <bsp/ecc_priv.h>
#include <bsp/irq.h>
#include <bsp/utility.h>
#include <libcpu/mmu-vmsav8-64.h>

Macros

#define OCM_ECC_CTRL   0x14
#define OCM_ECC_CTRL_FI_MODE   BSP_BIT32(2)
#define OCM_ECC_CTRL_DET_ONLY   BSP_BIT32(1)
#define OCM_ECC_CTRL_ECC_ON_OFF   BSP_BIT32(0)
#define OCM_IE   0xc
#define OCM_IE_UE_RMW   BSP_BIT32(10)
#define OCM_IE_UE   BSP_BIT32(7)
#define OCM_IE_CE   BSP_BIT32(6)
#define OCM_ERR_CTRL   0x0
#define OCM_ERR_CTRL_UE_RES   BSP_BIT32(3)
#define OCM_FI_D0   0x4c
#define OCM_FI_D1   0x50
#define OCM_FI_D2   0x54
#define OCM_FI_D3   0x58
#define OCM_FI_SY   0x5c
#define OCM_FI_SY_DATA(val)
#define OCM_FI_SY_DATA_GET(reg)
#define OCM_FI_SY_DATA_SET(reg, val)
#define OCM_FI_CNTR   0x74
#define OCM_FI_CNTR_COUNT(val)
#define OCM_FI_CNTR_COUNT_GET(reg)
#define OCM_FI_CNTR_COUNT_SET(reg, val)
#define OCM_IS   0x4
#define OCM_IS_UE_RMW   BSP_BIT32(10)
#define OCM_IS_UE   BSP_BIT32(7)
#define OCM_IS_CE   BSP_BIT32(6)
#define OCM_IM   0x8
#define OCM_IM_UE_RMW   BSP_BIT32(10)
#define OCM_IM_UE   BSP_BIT32(7)
#define OCM_IM_CE   BSP_BIT32(6)
#define OCM_CE_FFA   0x1c
#define OCM_CE_FFA_ADDR(val)
#define OCM_CE_FFA_ADDR_GET(reg)
#define OCM_CE_FFA_ADDR_SET(reg, val)
#define OCM_CE_FFD0   0x20
#define OCM_CE_FFD1   0x24
#define OCM_CE_FFD2   0x28
#define OCM_CE_FFD3   0x2c
#define OCM_CE_FFE   0x1c
#define OCM_CE_FFE_SYNDROME(val)
#define OCM_CE_FFE_SYNDROME_GET(reg)
#define OCM_CE_FFE_SYNDROME_SET(reg, val)
#define OCM_UE_FFA   0x34
#define OCM_UE_FFA_ADDR(val)
#define OCM_UE_FFA_ADDR_GET(reg)
#define OCM_UE_FFA_ADDR_SET(reg, val)
#define OCM_UE_FFD0   0x38
#define OCM_UE_FFD1   0x3c
#define OCM_UE_FFD2   0x40
#define OCM_UE_FFD3   0x44
#define OCM_UE_FFE   0x48
#define OCM_UE_FFE_SYNDROME(val)
#define OCM_UE_FFE_SYNDROME_GET(reg)
#define OCM_UE_FFE_SYNDROME_SET(reg, val)
#define OCM_RMW_UE_FFA   0x70
#define OCM_RMW_UE_FFA_ADDR(val)
#define OCM_RMW_UE_FFA_ADDR_GET(reg)
#define OCM_RMW_UE_FFA_ADDR_SET(reg, val)

Functions

void zynqmp_ocm_inject_fault (void)
 Injects an ECC fault in the On-Chip Memory (OCM).
rtems_status_code zynqmp_configure_ocm_ecc (void)
 Configure On-Chip Memory (OCM) ECC reporting.

Detailed Description

This source file contains the implementation of OCM ECC support.

Macro Definition Documentation

◆ OCM_CE_FFA_ADDR

#define OCM_CE_FFA_ADDR ( val)
Value:
BSP_FLD32(val, 0, 17)

◆ OCM_CE_FFA_ADDR_GET

#define OCM_CE_FFA_ADDR_GET ( reg)
Value:
BSP_FLD32GET(reg, 0, 17)

◆ OCM_CE_FFA_ADDR_SET

#define OCM_CE_FFA_ADDR_SET ( reg,
val )
Value:
BSP_FLD32SET(reg, val, 0, 17)

◆ OCM_CE_FFE_SYNDROME

#define OCM_CE_FFE_SYNDROME ( val)
Value:
BSP_FLD32(val, 0, 15)

◆ OCM_CE_FFE_SYNDROME_GET

#define OCM_CE_FFE_SYNDROME_GET ( reg)
Value:
BSP_FLD32GET(reg, 0, 15)

◆ OCM_CE_FFE_SYNDROME_SET

#define OCM_CE_FFE_SYNDROME_SET ( reg,
val )
Value:
BSP_FLD32SET(reg, val, 0, 15)

◆ OCM_FI_CNTR_COUNT

#define OCM_FI_CNTR_COUNT ( val)
Value:
BSP_FLD32(val, 0, 23)

◆ OCM_FI_CNTR_COUNT_GET

#define OCM_FI_CNTR_COUNT_GET ( reg)
Value:
BSP_FLD32GET(reg, 0, 23)

◆ OCM_FI_CNTR_COUNT_SET

#define OCM_FI_CNTR_COUNT_SET ( reg,
val )
Value:
BSP_FLD32SET(reg, val, 0, 23)

◆ OCM_FI_SY_DATA

#define OCM_FI_SY_DATA ( val)
Value:
BSP_FLD32(val, 0, 15)

◆ OCM_FI_SY_DATA_GET

#define OCM_FI_SY_DATA_GET ( reg)
Value:
BSP_FLD32GET(reg, 0, 15)

◆ OCM_FI_SY_DATA_SET

#define OCM_FI_SY_DATA_SET ( reg,
val )
Value:
BSP_FLD32SET(reg, val, 0, 15)

◆ OCM_RMW_UE_FFA_ADDR

#define OCM_RMW_UE_FFA_ADDR ( val)
Value:
BSP_FLD32(val, 0, 17)

◆ OCM_RMW_UE_FFA_ADDR_GET

#define OCM_RMW_UE_FFA_ADDR_GET ( reg)
Value:
BSP_FLD32GET(reg, 0, 17)

◆ OCM_RMW_UE_FFA_ADDR_SET

#define OCM_RMW_UE_FFA_ADDR_SET ( reg,
val )
Value:
BSP_FLD32SET(reg, val, 0, 17)

◆ OCM_UE_FFA_ADDR

#define OCM_UE_FFA_ADDR ( val)
Value:
BSP_FLD32(val, 0, 17)

◆ OCM_UE_FFA_ADDR_GET

#define OCM_UE_FFA_ADDR_GET ( reg)
Value:
BSP_FLD32GET(reg, 0, 17)

◆ OCM_UE_FFA_ADDR_SET

#define OCM_UE_FFA_ADDR_SET ( reg,
val )
Value:
BSP_FLD32SET(reg, val, 0, 17)

◆ OCM_UE_FFE_SYNDROME

#define OCM_UE_FFE_SYNDROME ( val)
Value:
BSP_FLD32(val, 0, 15)

◆ OCM_UE_FFE_SYNDROME_GET

#define OCM_UE_FFE_SYNDROME_GET ( reg)
Value:
BSP_FLD32GET(reg, 0, 15)

◆ OCM_UE_FFE_SYNDROME_SET

#define OCM_UE_FFE_SYNDROME_SET ( reg,
val )
Value:
BSP_FLD32SET(reg, val, 0, 15)