AM243x MCU+ SDK  10.00.00
sdl_ip_rti.h File Reference

Go to the source code of this file.

RTI DWD possible Window Size Values

#define RTI_DWWD_WINDOWSIZE_100_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_100_PERCENT)
 
#define RTI_DWWD_WINDOWSIZE_50_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_50_PERCENT)
 
#define RTI_DWWD_WINDOWSIZE_25_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_25_PERCENT)
 
#define RTI_DWWD_WINDOWSIZE_12_5_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_12_5_PERCENT)
 
#define RTI_DWWD_WINDOWSIZE_6_25_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_6_25_PERCENT)
 
#define RTI_DWWD_WINDOWSIZE_3_125_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_3_125_PERCENT)
 
typedef uint32_t RTI_WindowSize_t
 type to select the DWWD window size. More...
 

SDL DWD possible Status Values

#define RTI_DWWD_STATUS_KEY_SEQ_VIOLATION   (RTI_RTIWDSTATUS_KEYST_MASK)
 
#define RTI_DWWD_STATUS_TIME_WINDOW_VIOLATION   (RTI_RTIWDSTATUS_DWWD_ST_MASK)
 
#define RTI_DWWD_STATUS_ENDTIME_WINDOW_VIOLATION   (RTI_RTIWDSTATUS_END_TIME_VIOL_MASK)
 
#define RTI_DWWD_STATUS_STARTTIME_WINDOW_VIOLATION   (RTI_RTIWDSTATUS_START_TIME_VIOL_MASK)
 
#define RTI_DWWD_STATUS_LAST_RESET   (RTI_RTIWDSTATUS_DWDST_MASK)
 
#define RTI_RTIDWDCTRL   (0x90U)
 
#define RTI_RTIDWDPRLD   (0x94U)
 
#define RTI_RTIWDSTATUS   (0x98U)
 
#define RTI_RTIWDKEY   (0x9cU)
 
#define RTI_RTIDWWDRXNCTRL   (0xa4U)
 
#define RTI_RTIDWWDSIZECTRL   (0xa8U)
 
#define RTI_RTIDWDCNTR   (0xa0U)
 
#define RTI_COMP0   (0x50U)
 
#define STATUS_VLD   (1U)
 
#define RTI_RTIDWDCTRL_DWDCTRL_ENABLE   (0xA98559DAU)
 
#define RTI_DWWDPRLD_MULTIPLIER_SHIFT   (13U)
 
#define RTI_DWD_MIN_PRELOAD_VAL   (0x1FFFU)
 
#define RTI_RTIDWDPRLD_INVALID   (0xFFFFFFU)
 
#define RTI_RTIDWDPRLD_DWDPRLD_SHIFT   (0U)
 
#define RTI_RTIDWDPRLD_DWDPRLD_MASK   (0x00000fffU)
 
#define RTI_RTIDWDPRLD_DWDPRLD_MAX   (0x0FFFU)
 
#define RTI_RTIDWDCNTR_DWDCNTR_15_0_SHIFT   (0U)
 
#define RTI_RTIDWDCNTR_DWDCNTR_15_0_MASK   (0x0000ffffU)
 
#define RTI_RTIDWDCNTR_DWDCNTR_24_16_SHIFT   (16U)
 
#define RTI_RTIDWDCNTR_DWDCNTR_24_16_MASK   (0x01ff0000U)
 
#define RTI_RTIWDSTATUS_DWDST_SHIFT   (1U)
 
#define RTI_RTIWDSTATUS_DWDST_MASK   (0x00000002U)
 
#define RTI_RTIWDSTATUS_DWWD_ST_SHIFT   (5U)
 
#define RTI_RTIWDSTATUS_DWWD_ST_MASK   (0x00000020U)
 
#define RTI_RTIWDKEY_WDKEY_SHIFT   (0U)
 
#define RTI_RTIWDKEY_WDKEY_MASK   (0x0000ffffU)
 
#define RTI_RTIWDKEY_WDKEY_FIRST_WRITE   (0x0000E51AU)
 
#define RTI_RTIWDKEY_WDKEY_SECOND_WRITE   (0x0000A35CU)
 
#define RTI_RTIDWWDRXNCTRL_DWWDRXN_SHIFT   (0U)
 
#define RTI_RTIDWWDRXNCTRL_DWWDRXN_MASK   (0x0000000fU)
 
#define RTI_RTIDWWDRXNCTRL_DWWDRXN_RESET   (0x5U)
 
#define RTI_RTIDWWDRXNCTRL_DWWDRXN_INTERRUPT   (0xAU)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_INVALID   (0U)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_SHIFT   (0U)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_MASK   (0x00ffffffU)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_100_PERCENT   (0x00000005U)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_100_PERCENT_SHIFT   (0x0)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_50_PERCENT   (0x00000050U)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_50_PERCENT_SHIFT   (0x1)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_25_PERCENT   (0x00000500U)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_25_PERCENT_SHIFT   (0x2)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_12_5_PERCENT   (0x00005000U)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_12_5_PERCENT_SHIFT   (0x3)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_6_25_PERCENT   (0x00050000U)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_6_25_PERCENT_SHIFT   (0x4)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_3_125_PERCENT   (0x00500000U)
 
#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_3_125_PERCENT_SHIFT   (0x5)
 
typedef uint32_t RTI_Status_t
 type to report the DWWD status. More...
 
static int32_t SDL_RTI_writeWinSz (uint32_t baseAddr, uint32_t dwwdWindowSize)
 
static int32_t SDL_RTI_writeReaction (uint32_t baseAddr, uint32_t dwwdReaction)
 
static uint32_t SDL_RTI_readReaction (uint32_t baseAddr)
 

Data Structures

struct  SDL_RTI_staticRegs
 List of Static Registers for RTI DWWD. More...
 
struct  SDL_RTI_configParms
 List of Config Parameters for RTI DWWD. More...
 

Macros

RTI DWD possible Reaction Values

#define RTI_DWWD_REACTION_GENERATE_RESET   (RTI_RTIDWWDRXNCTRL_DWWDRXN_RESET)
 macro to select the DWWD reaction after violation or expiration of DWWD timer. More...
 
#define RTI_DWWD_REACTION_GENERATE_NMI   (RTI_RTIDWWDRXNCTRL_DWWDRXN_INTERRUPT)
 
#define RTI_DWWD_REACTION_INVALID   (0x46U)
 

Functions

int32_t SDL_RTI_chkWindowSize (uint32_t dwwdWindowSize)
 This API will check the Window Size for DWWD. More...
 
int32_t SDL_RTI_chkReaction (uint32_t dwwdReaction)
 This API will check the reaction to perform when error is detected from DWWD. More...
 
int32_t SDL_RTI_getWindowSize (uint32_t baseAddr, uint32_t *pWinSize)
 This API will return current configured Window Size. More...
 
int32_t SDL_RTI_setPreload (uint32_t baseAddr, uint32_t dwwdPreloadVal)
 Set DWWD preload value. From this value down counter starts down counting. More...
 
int32_t SDL_RTI_getPreload (uint32_t baseAddr, uint32_t *pPreloadVal)
 This API will return current configured Preload value. More...
 

Macro Definition Documentation

◆ RTI_DWWD_WINDOWSIZE_100_PERCENT

#define RTI_DWWD_WINDOWSIZE_100_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_100_PERCENT)

Configure DWWD window size to 100%

◆ RTI_DWWD_WINDOWSIZE_50_PERCENT

#define RTI_DWWD_WINDOWSIZE_50_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_50_PERCENT)

Configure DWWD window size to 50%

◆ RTI_DWWD_WINDOWSIZE_25_PERCENT

#define RTI_DWWD_WINDOWSIZE_25_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_25_PERCENT)

Configure DWWD window size to 25%

◆ RTI_DWWD_WINDOWSIZE_12_5_PERCENT

#define RTI_DWWD_WINDOWSIZE_12_5_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_12_5_PERCENT)

Configure DWWD window size to 12.5%

◆ RTI_DWWD_WINDOWSIZE_6_25_PERCENT

#define RTI_DWWD_WINDOWSIZE_6_25_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_6_25_PERCENT)

Configure DWWD window size to 6.25%

◆ RTI_DWWD_WINDOWSIZE_3_125_PERCENT

#define RTI_DWWD_WINDOWSIZE_3_125_PERCENT   (RTI_RTIDWWDSIZECTRL_DWWDSIZE_3_125_PERCENT)

Configure DWWD window size to 3.125%

◆ RTI_DWWD_REACTION_GENERATE_RESET

#define RTI_DWWD_REACTION_GENERATE_RESET   (RTI_RTIDWWDRXNCTRL_DWWDRXN_RESET)

macro to select the DWWD reaction after violation or expiration of DWWD timer.

DWWD can either generate reset or interrupt. Configure DWWD reaction to generate reset

◆ RTI_DWWD_REACTION_GENERATE_NMI

#define RTI_DWWD_REACTION_GENERATE_NMI   (RTI_RTIDWWDRXNCTRL_DWWDRXN_INTERRUPT)

Configure DWWD reaction to generate interrupt. The actual interrupt used depends on the SOC and cross bar mapping.

◆ RTI_DWWD_REACTION_INVALID

#define RTI_DWWD_REACTION_INVALID   (0x46U)

◆ RTI_DWWD_STATUS_KEY_SEQ_VIOLATION

#define RTI_DWWD_STATUS_KEY_SEQ_VIOLATION   (RTI_RTIWDSTATUS_KEYST_MASK)

Key sequence violation mask

◆ RTI_DWWD_STATUS_TIME_WINDOW_VIOLATION

#define RTI_DWWD_STATUS_TIME_WINDOW_VIOLATION   (RTI_RTIWDSTATUS_DWWD_ST_MASK)

Window violation mask

◆ RTI_DWWD_STATUS_ENDTIME_WINDOW_VIOLATION

#define RTI_DWWD_STATUS_ENDTIME_WINDOW_VIOLATION   (RTI_RTIWDSTATUS_END_TIME_VIOL_MASK)

End time window violation mask

◆ RTI_DWWD_STATUS_STARTTIME_WINDOW_VIOLATION

#define RTI_DWWD_STATUS_STARTTIME_WINDOW_VIOLATION   (RTI_RTIWDSTATUS_START_TIME_VIOL_MASK)

Start time window violation mask

◆ RTI_DWWD_STATUS_LAST_RESET

#define RTI_DWWD_STATUS_LAST_RESET   (RTI_RTIWDSTATUS_DWDST_MASK)

DWWD last reset status mask

◆ RTI_RTIDWDCTRL

#define RTI_RTIDWDCTRL   (0x90U)

◆ RTI_RTIDWDPRLD

#define RTI_RTIDWDPRLD   (0x94U)

◆ RTI_RTIWDSTATUS

#define RTI_RTIWDSTATUS   (0x98U)

◆ RTI_RTIWDKEY

#define RTI_RTIWDKEY   (0x9cU)

◆ RTI_RTIDWWDRXNCTRL

#define RTI_RTIDWWDRXNCTRL   (0xa4U)

◆ RTI_RTIDWWDSIZECTRL

#define RTI_RTIDWWDSIZECTRL   (0xa8U)

◆ RTI_RTIDWDCNTR

#define RTI_RTIDWDCNTR   (0xa0U)

◆ RTI_COMP0

#define RTI_COMP0   (0x50U)

◆ STATUS_VLD

#define STATUS_VLD   (1U)

◆ RTI_RTIDWDCTRL_DWDCTRL_ENABLE

#define RTI_RTIDWDCTRL_DWDCTRL_ENABLE   (0xA98559DAU)

◆ RTI_DWWDPRLD_MULTIPLIER_SHIFT

#define RTI_DWWDPRLD_MULTIPLIER_SHIFT   (13U)

◆ RTI_DWD_MIN_PRELOAD_VAL

#define RTI_DWD_MIN_PRELOAD_VAL   (0x1FFFU)

◆ RTI_RTIDWDPRLD_INVALID

#define RTI_RTIDWDPRLD_INVALID   (0xFFFFFFU)

◆ RTI_RTIDWDPRLD_DWDPRLD_SHIFT

#define RTI_RTIDWDPRLD_DWDPRLD_SHIFT   (0U)

◆ RTI_RTIDWDPRLD_DWDPRLD_MASK

#define RTI_RTIDWDPRLD_DWDPRLD_MASK   (0x00000fffU)

◆ RTI_RTIDWDPRLD_DWDPRLD_MAX

#define RTI_RTIDWDPRLD_DWDPRLD_MAX   (0x0FFFU)

◆ RTI_RTIDWDCNTR_DWDCNTR_15_0_SHIFT

#define RTI_RTIDWDCNTR_DWDCNTR_15_0_SHIFT   (0U)

◆ RTI_RTIDWDCNTR_DWDCNTR_15_0_MASK

#define RTI_RTIDWDCNTR_DWDCNTR_15_0_MASK   (0x0000ffffU)

◆ RTI_RTIDWDCNTR_DWDCNTR_24_16_SHIFT

#define RTI_RTIDWDCNTR_DWDCNTR_24_16_SHIFT   (16U)

◆ RTI_RTIDWDCNTR_DWDCNTR_24_16_MASK

#define RTI_RTIDWDCNTR_DWDCNTR_24_16_MASK   (0x01ff0000U)

◆ RTI_RTIWDSTATUS_DWDST_SHIFT

#define RTI_RTIWDSTATUS_DWDST_SHIFT   (1U)

◆ RTI_RTIWDSTATUS_DWDST_MASK

#define RTI_RTIWDSTATUS_DWDST_MASK   (0x00000002U)

◆ RTI_RTIWDSTATUS_DWWD_ST_SHIFT

#define RTI_RTIWDSTATUS_DWWD_ST_SHIFT   (5U)

◆ RTI_RTIWDSTATUS_DWWD_ST_MASK

#define RTI_RTIWDSTATUS_DWWD_ST_MASK   (0x00000020U)

◆ RTI_RTIWDKEY_WDKEY_SHIFT

#define RTI_RTIWDKEY_WDKEY_SHIFT   (0U)

◆ RTI_RTIWDKEY_WDKEY_MASK

#define RTI_RTIWDKEY_WDKEY_MASK   (0x0000ffffU)

◆ RTI_RTIWDKEY_WDKEY_FIRST_WRITE

#define RTI_RTIWDKEY_WDKEY_FIRST_WRITE   (0x0000E51AU)

◆ RTI_RTIWDKEY_WDKEY_SECOND_WRITE

#define RTI_RTIWDKEY_WDKEY_SECOND_WRITE   (0x0000A35CU)

◆ RTI_RTIDWWDRXNCTRL_DWWDRXN_SHIFT

#define RTI_RTIDWWDRXNCTRL_DWWDRXN_SHIFT   (0U)

◆ RTI_RTIDWWDRXNCTRL_DWWDRXN_MASK

#define RTI_RTIDWWDRXNCTRL_DWWDRXN_MASK   (0x0000000fU)

◆ RTI_RTIDWWDRXNCTRL_DWWDRXN_RESET

#define RTI_RTIDWWDRXNCTRL_DWWDRXN_RESET   (0x5U)

◆ RTI_RTIDWWDRXNCTRL_DWWDRXN_INTERRUPT

#define RTI_RTIDWWDRXNCTRL_DWWDRXN_INTERRUPT   (0xAU)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_INVALID

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_INVALID   (0U)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_SHIFT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_SHIFT   (0U)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_MASK

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_MASK   (0x00ffffffU)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_100_PERCENT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_100_PERCENT   (0x00000005U)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_100_PERCENT_SHIFT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_100_PERCENT_SHIFT   (0x0)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_50_PERCENT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_50_PERCENT   (0x00000050U)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_50_PERCENT_SHIFT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_50_PERCENT_SHIFT   (0x1)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_25_PERCENT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_25_PERCENT   (0x00000500U)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_25_PERCENT_SHIFT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_25_PERCENT_SHIFT   (0x2)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_12_5_PERCENT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_12_5_PERCENT   (0x00005000U)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_12_5_PERCENT_SHIFT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_12_5_PERCENT_SHIFT   (0x3)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_6_25_PERCENT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_6_25_PERCENT   (0x00050000U)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_6_25_PERCENT_SHIFT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_6_25_PERCENT_SHIFT   (0x4)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_3_125_PERCENT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_3_125_PERCENT   (0x00500000U)

◆ RTI_RTIDWWDSIZECTRL_DWWDSIZE_3_125_PERCENT_SHIFT

#define RTI_RTIDWWDSIZECTRL_DWWDSIZE_3_125_PERCENT_SHIFT   (0x5)

Typedef Documentation

◆ RTI_WindowSize_t

typedef uint32_t RTI_WindowSize_t

type to select the DWWD window size.

    Window Size : In what percentage of time-out value i.e open window,
    servicing DWWD is allowed.
    Configurable Window Sizes : 100%, 50%, 25%, 12.5%, 6.25%, 3.125%.
    Refer to for DWWD Window Sizes Overview.

◆ RTI_Status_t

typedef uint32_t RTI_Status_t

type to report the DWWD status.

    Violations(Following bit-field will get set) :
    DWWD Status : If last reset is generated by DWWD.
    Key sequence violation : If wrong sequence is written to enable DWWD.
    Start Time Violation : If DWWD is serviced within closed window.
    End Time Violation : If DWWD is not serviced.
    Time Window Violation : If any of Start/End Time Violation happened.

Function Documentation

◆ SDL_RTI_writeWinSz()

static int32_t SDL_RTI_writeWinSz ( uint32_t  baseAddr,
uint32_t  dwwdWindowSize 
)
inlinestatic

Design: DID_TAG(PROC_SDL-1487)

◆ SDL_RTI_writeReaction()

static int32_t SDL_RTI_writeReaction ( uint32_t  baseAddr,
uint32_t  dwwdReaction 
)
inlinestatic

Design: DID_TAG(PROC_SDL-1492)

◆ SDL_RTI_readReaction()

static uint32_t SDL_RTI_readReaction ( uint32_t  baseAddr)
inlinestatic

Design: DID_TAG(PROC_SDL-1493)