AM263x MCU+ SDK  08.05.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_chkWindowSize()

int32_t SDL_RTI_chkWindowSize ( uint32_t  dwwdWindowSize)

This API will check the Window Size for DWWD.

Parameters
dwwdWindowSizevariable which holds window size which should be verified
Returns
status Success of the window configuration
  • Success: SDL_PASS
  • Fail : SDL_EFAIL

◆ SDL_RTI_chkReaction()

int32_t SDL_RTI_chkReaction ( uint32_t  dwwdReaction)

This API will check the reaction to perform when error is detected from DWWD.

Parameters
dwwdReactionVariable which holds the reaction to be verified.
Returns
status Success of the window configuration
  • Success: SDL_PASS
  • Fail : SDL_EFAIL

◆ SDL_RTI_getWindowSize()

int32_t SDL_RTI_getWindowSize ( uint32_t  baseAddr,
uint32_t *  pWinSize 
)

This API will return current configured Window Size.

Parameters
baseAddrBase Address of the RTI instance.
pWinSizepointer to Configured Window Size. Refer macro RTI_WindowSize_t
Returns
status Success of the window configuration
  • Success: SDL_PASS
  • Fail : SDL_EFAIL

◆ SDL_RTI_setPreload()

int32_t SDL_RTI_setPreload ( uint32_t  baseAddr,
uint32_t  dwwdPreloadVal 
)

Set DWWD preload value. From this value down counter starts down counting.

Parameters
baseAddrBase Address of the RTI instance.
dwwdPreloadValDown counter preload value. Refer DWWD Down Counter Overview.
Returns
status Success of the window configuration
  • Success: SDL_PASS
  • Fail : SDL_EFAIL

◆ SDL_RTI_getPreload()

int32_t SDL_RTI_getPreload ( uint32_t  baseAddr,
uint32_t *  pPreloadVal 
)

This API will return current configured Preload value.

Parameters
baseAddrBase Address of the RTI instance.
pPreloadValpointer to current preload value
Returns
status Success of the window configuration
  • Success: SDL_PASS
  • Fail : SDL_EFAIL

◆ 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)