SDL API Guide for J7200
sdl_ip_rat.h File Reference

Introduction

Header file containing various enumerations, structure definitions and function declarations for the KSBUS RAT Ip. =
(C) Copyright 2016-2020, Texas Instruments, Inc.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

Neither the name of Texas Instruments Incorporated nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Go to the source code of this file.

RAT interrupt source types

This enumerator defines the types of possible RAT interrupt sources



#define SDL_RAT_INTR_SRC_EXCEPTION   ((uint32_t) 0U)
 
#define SDL_RAT_INTR_SRC_INVALID   ((uint32_t) 1U)
 
typedef uint32_t SDL_RAT_intrSrcTypes
 

Data Structures

struct  SDL_ratStaticRegs
 
struct  SDL_ratRegs_region
 
struct  SDL_ratTranslationCfgInfo
 This structure contains information required to configure an address translation region. More...
 
struct  SDL_ratRegs
 
struct  SDL_ratExceptionInfo
 This structure contains exception status information returned by the SDL_RAT_getExceptionInfo function. More...
 

Macros

#define SDL_RAT_PID   (0x00000000U)
 
#define SDL_RAT_CONFIG   (0x00000004U)
 
#define SDL_RAT_REGION_CTRL(REGION)   (0x00000020U+((REGION)*0x10U))
 
#define SDL_RAT_REGION_BASE(REGION)   (0x00000024U+((REGION)*0x10U))
 
#define SDL_RAT_REGION_TRANS_L(REGION)   (0x00000028U+((REGION)*0x10U))
 
#define SDL_RAT_REGION_TRANS_U(REGION)   (0x0000002CU+((REGION)*0x10U))
 
#define SDL_RAT_DESTINATION_ID   (0x00000804U)
 
#define SDL_RAT_EXCEPTION_LOGGING_CONTROL   (0x00000820U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0   (0x00000824U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER1   (0x00000828U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA0   (0x0000082CU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA1   (0x00000830U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2   (0x00000834U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA3   (0x00000838U)
 
#define SDL_RAT_EXCEPTION_PEND_SET   (0x00000840U)
 
#define SDL_RAT_EXCEPTION_PEND_CLEAR   (0x00000844U)
 
#define SDL_RAT_EXCEPTION_ENABLE_SET   (0x00000848U)
 
#define SDL_RAT_EXCEPTION_ENABLE_CLEAR   (0x0000084CU)
 
#define SDL_RAT_EOI_REG   (0x00000850U)
 
#define SDL_RAT_REGION_CTRL_EN_MASK   (0x80000000U)
 
#define SDL_RAT_REGION_CTRL_EN_SHIFT   (0x0000001FU)
 
#define SDL_RAT_REGION_CTRL_EN_MAX   (0x00000001U)
 
#define SDL_RAT_REGION_CTRL_SIZE_MASK   (0x0000003FU)
 
#define SDL_RAT_REGION_CTRL_SIZE_SHIFT   (0x00000000U)
 
#define SDL_RAT_REGION_CTRL_SIZE_MAX   (0x0000003FU)
 
#define SDL_RAT_REGION_BASE_BASE_MASK   (0xFFFFFFFFU)
 
#define SDL_RAT_REGION_BASE_BASE_SHIFT   (0x00000000U)
 
#define SDL_RAT_REGION_BASE_BASE_MAX   (0xFFFFFFFFU)
 
#define SDL_RAT_REGION_TRANS_L_LOWER_MASK   (0xFFFFFFFFU)
 
#define SDL_RAT_REGION_TRANS_L_LOWER_SHIFT   (0x00000000U)
 
#define SDL_RAT_REGION_TRANS_L_LOWER_MAX   (0xFFFFFFFFU)
 
#define SDL_RAT_REGION_TRANS_U_UPPER_MASK   (0x0000FFFFU)
 
#define SDL_RAT_REGION_TRANS_U_UPPER_SHIFT   (0x00000000U)
 
#define SDL_RAT_REGION_TRANS_U_UPPER_MAX   (0x0000FFFFU)
 
#define SDL_RAT_PID_MINOR_MASK   (0x0000003FU)
 
#define SDL_RAT_PID_MINOR_SHIFT   (0x00000000U)
 
#define SDL_RAT_PID_MINOR_MAX   (0x0000003FU)
 
#define SDL_RAT_PID_CUSTOM_MASK   (0x000000C0U)
 
#define SDL_RAT_PID_CUSTOM_SHIFT   (0x00000006U)
 
#define SDL_RAT_PID_CUSTOM_MAX   (0x00000003U)
 
#define SDL_RAT_PID_MAJOR_MASK   (0x00000700U)
 
#define SDL_RAT_PID_MAJOR_SHIFT   (0x00000008U)
 
#define SDL_RAT_PID_MAJOR_MAX   (0x00000007U)
 
#define SDL_RAT_PID_RTL_MASK   (0x0000F800U)
 
#define SDL_RAT_PID_RTL_SHIFT   (0x0000000BU)
 
#define SDL_RAT_PID_RTL_MAX   (0x0000001FU)
 
#define SDL_RAT_PID_FUNC_MASK   (0x0FFF0000U)
 
#define SDL_RAT_PID_FUNC_SHIFT   (0x00000010U)
 
#define SDL_RAT_PID_FUNC_MAX   (0x00000FFFU)
 
#define SDL_RAT_PID_BU_MASK   (0x30000000U)
 
#define SDL_RAT_PID_BU_SHIFT   (0x0000001CU)
 
#define SDL_RAT_PID_BU_MAX   (0x00000003U)
 
#define SDL_RAT_PID_SCHEME_MASK   (0xC0000000U)
 
#define SDL_RAT_PID_SCHEME_SHIFT   (0x0000001EU)
 
#define SDL_RAT_PID_SCHEME_MAX   (0x00000003U)
 
#define SDL_RAT_CONFIG_REGIONS_MASK   (0x000000FFU)
 
#define SDL_RAT_CONFIG_REGIONS_SHIFT   (0x00000000U)
 
#define SDL_RAT_CONFIG_REGIONS_MAX   (0x000000FFU)
 
#define SDL_RAT_CONFIG_ADDRS_MASK   (0x0000FF00U)
 
#define SDL_RAT_CONFIG_ADDRS_SHIFT   (0x00000008U)
 
#define SDL_RAT_CONFIG_ADDRS_MAX   (0x000000FFU)
 
#define SDL_RAT_CONFIG_ADDR_WIDTH_MASK   (0x00FF0000U)
 
#define SDL_RAT_CONFIG_ADDR_WIDTH_SHIFT   (0x00000010U)
 
#define SDL_RAT_CONFIG_ADDR_WIDTH_MAX   (0x000000FFU)
 
#define SDL_RAT_DESTINATION_ID_DEST_ID_MASK   (0x000000FFU)
 
#define SDL_RAT_DESTINATION_ID_DEST_ID_SHIFT   (0x00000000U)
 
#define SDL_RAT_DESTINATION_ID_DEST_ID_MAX   (0x000000FFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_F_MASK   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_F_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_F_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_INTR_MASK   (0x00000002U)
 
#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_INTR_SHIFT   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_INTR_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_DEST_ID_MASK   (0x000000FFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_DEST_ID_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_DEST_ID_MAX   (0x000000FFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_SRC_ID_MASK   (0x00FFFF00U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_SRC_ID_SHIFT   (0x00000008U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_SRC_ID_MAX   (0x0000FFFFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_TYPE_F_MASK   (0xFF000000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_TYPE_F_SHIFT   (0x00000018U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_TYPE_F_MAX   (0x000000FFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_CODE_MASK   (0x00FF0000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_CODE_SHIFT   (0x00000010U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_CODE_MAX   (0x000000FFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_GROUP_MASK   (0xFF000000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_GROUP_SHIFT   (0x00000018U)
 
#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_GROUP_MAX   (0x000000FFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA0_ADDR_L_MASK   (0xFFFFFFFFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA0_ADDR_L_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA0_ADDR_L_MAX   (0xFFFFFFFFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA1_ADDR_H_MASK   (0x0000FFFFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA1_ADDR_H_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA1_ADDR_H_MAX   (0x0000FFFFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_ID_MASK   (0x000000FFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_ID_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_ID_MAX   (0x000000FFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_SECURE_MASK   (0x00000100U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_SECURE_SHIFT   (0x00000008U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_SECURE_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_MASK   (0x00000200U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_SHIFT   (0x00000009U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_CACHEABLE_MASK   (0x00000400U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_CACHEABLE_SHIFT   (0x0000000AU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_CACHEABLE_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_DEBUG_MASK   (0x00000800U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_DEBUG_SHIFT   (0x0000000BU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_DEBUG_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_READ_MASK   (0x00001000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_READ_SHIFT   (0x0000000CU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_READ_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_WRITE_MASK   (0x00002000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_WRITE_SHIFT   (0x0000000DU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_WRITE_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_ROUTEID_MASK   (0x0FFF0000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_ROUTEID_SHIFT   (0x00000010U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA2_ROUTEID_MAX   (0x00000FFFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA3_BYTECNT_MASK   (0x000003FFU)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA3_BYTECNT_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_LOGGING_DATA3_BYTECNT_MAX   (0x000003FFU)
 
#define SDL_RAT_EXCEPTION_PEND_SET_PEND_SET_MASK   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_PEND_SET_PEND_SET_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_PEND_SET_PEND_SET_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_PEND_CLEAR_PEND_CLR_MASK   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_PEND_CLEAR_PEND_CLR_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_PEND_CLEAR_PEND_CLR_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_ENABLE_SET_ENABLE_SET_MASK   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_ENABLE_SET_ENABLE_SET_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_ENABLE_SET_ENABLE_SET_MAX   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_ENABLE_CLEAR_ENABLE_CLR_MASK   (0x00000001U)
 
#define SDL_RAT_EXCEPTION_ENABLE_CLEAR_ENABLE_CLR_SHIFT   (0x00000000U)
 
#define SDL_RAT_EXCEPTION_ENABLE_CLEAR_ENABLE_CLR_MAX   (0x00000001U)
 
#define SDL_RAT_EOI_REG_EOI_WR_MASK   (0x0000FFFFU)
 
#define SDL_RAT_EOI_REG_EOI_WR_SHIFT   (0x00000000U)
 
#define SDL_RAT_EOI_REG_EOI_WR_MAX   (0x0000FFFFU)
 

Functions

int32_t SDL_RAT_getRegionTranslationConfig (const SDL_ratRegs *pRatRegs, uint32_t regionIndex, SDL_ratTranslationCfgInfo *pTranslationCfg)
 
uint32_t SDL_RAT_lmo (uint64_t v)
 
int32_t SDL_RAT_setRegionTranslationEnable (SDL_ratRegs *pRatRegs, uint32_t regionIndex, bool bEnable)
 
void SDL_RAT_setIntEnable (SDL_ratRegs *pRatRegs, SDL_RAT_intrSrcTypes intrSrc, bool bEnable)
 
void SDL_RAT_setExceptionLoggingEnable (SDL_ratRegs *pRatRegs, bool bEnable)
 
void SDL_RAT_setExceptionLoggingIntEnable (SDL_ratRegs *pRatRegs, bool bEnable)
 
int32_t SDL_RAT_isPowerOf2 (uint64_t v)
 
int32_t SDL_RAT_isRegionOverlap (const SDL_ratRegs *pRatRegs, uint32_t thisRegionIndex, const SDL_ratTranslationCfgInfo *pTranslationCfg)
 
int32_t SDL_RAT_validateTranslationConfig (const SDL_ratRegs *pRatRegs, uint32_t regionIndex, SDL_ratTranslationCfgInfo *pTranslationCfg)
 
int32_t SDL_RAT_isRegionTranslationEnabled (const SDL_ratRegs *pRatRegs, uint32_t regionIndex)
 This function returns the enable status of the specified region address translation. More...
 
uint32_t SDL_RAT_getMaxRegions (const SDL_ratRegs *pRatRegs)
 

Macro Definition Documentation

◆ SDL_RAT_PID

#define SDL_RAT_PID   (0x00000000U)

◆ SDL_RAT_CONFIG

#define SDL_RAT_CONFIG   (0x00000004U)

◆ SDL_RAT_REGION_CTRL

#define SDL_RAT_REGION_CTRL (   REGION)    (0x00000020U+((REGION)*0x10U))

◆ SDL_RAT_REGION_BASE

#define SDL_RAT_REGION_BASE (   REGION)    (0x00000024U+((REGION)*0x10U))

◆ SDL_RAT_REGION_TRANS_L

#define SDL_RAT_REGION_TRANS_L (   REGION)    (0x00000028U+((REGION)*0x10U))

◆ SDL_RAT_REGION_TRANS_U

#define SDL_RAT_REGION_TRANS_U (   REGION)    (0x0000002CU+((REGION)*0x10U))

◆ SDL_RAT_DESTINATION_ID

#define SDL_RAT_DESTINATION_ID   (0x00000804U)

◆ SDL_RAT_EXCEPTION_LOGGING_CONTROL

#define SDL_RAT_EXCEPTION_LOGGING_CONTROL   (0x00000820U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0   (0x00000824U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER1

#define SDL_RAT_EXCEPTION_LOGGING_HEADER1   (0x00000828U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA0

#define SDL_RAT_EXCEPTION_LOGGING_DATA0   (0x0000082CU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA1

#define SDL_RAT_EXCEPTION_LOGGING_DATA1   (0x00000830U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2

#define SDL_RAT_EXCEPTION_LOGGING_DATA2   (0x00000834U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA3

#define SDL_RAT_EXCEPTION_LOGGING_DATA3   (0x00000838U)

◆ SDL_RAT_EXCEPTION_PEND_SET

#define SDL_RAT_EXCEPTION_PEND_SET   (0x00000840U)

◆ SDL_RAT_EXCEPTION_PEND_CLEAR

#define SDL_RAT_EXCEPTION_PEND_CLEAR   (0x00000844U)

◆ SDL_RAT_EXCEPTION_ENABLE_SET

#define SDL_RAT_EXCEPTION_ENABLE_SET   (0x00000848U)

◆ SDL_RAT_EXCEPTION_ENABLE_CLEAR

#define SDL_RAT_EXCEPTION_ENABLE_CLEAR   (0x0000084CU)

◆ SDL_RAT_EOI_REG

#define SDL_RAT_EOI_REG   (0x00000850U)

◆ SDL_RAT_REGION_CTRL_EN_MASK

#define SDL_RAT_REGION_CTRL_EN_MASK   (0x80000000U)

◆ SDL_RAT_REGION_CTRL_EN_SHIFT

#define SDL_RAT_REGION_CTRL_EN_SHIFT   (0x0000001FU)

◆ SDL_RAT_REGION_CTRL_EN_MAX

#define SDL_RAT_REGION_CTRL_EN_MAX   (0x00000001U)

◆ SDL_RAT_REGION_CTRL_SIZE_MASK

#define SDL_RAT_REGION_CTRL_SIZE_MASK   (0x0000003FU)

◆ SDL_RAT_REGION_CTRL_SIZE_SHIFT

#define SDL_RAT_REGION_CTRL_SIZE_SHIFT   (0x00000000U)

◆ SDL_RAT_REGION_CTRL_SIZE_MAX

#define SDL_RAT_REGION_CTRL_SIZE_MAX   (0x0000003FU)

◆ SDL_RAT_REGION_BASE_BASE_MASK

#define SDL_RAT_REGION_BASE_BASE_MASK   (0xFFFFFFFFU)

◆ SDL_RAT_REGION_BASE_BASE_SHIFT

#define SDL_RAT_REGION_BASE_BASE_SHIFT   (0x00000000U)

◆ SDL_RAT_REGION_BASE_BASE_MAX

#define SDL_RAT_REGION_BASE_BASE_MAX   (0xFFFFFFFFU)

◆ SDL_RAT_REGION_TRANS_L_LOWER_MASK

#define SDL_RAT_REGION_TRANS_L_LOWER_MASK   (0xFFFFFFFFU)

◆ SDL_RAT_REGION_TRANS_L_LOWER_SHIFT

#define SDL_RAT_REGION_TRANS_L_LOWER_SHIFT   (0x00000000U)

◆ SDL_RAT_REGION_TRANS_L_LOWER_MAX

#define SDL_RAT_REGION_TRANS_L_LOWER_MAX   (0xFFFFFFFFU)

◆ SDL_RAT_REGION_TRANS_U_UPPER_MASK

#define SDL_RAT_REGION_TRANS_U_UPPER_MASK   (0x0000FFFFU)

◆ SDL_RAT_REGION_TRANS_U_UPPER_SHIFT

#define SDL_RAT_REGION_TRANS_U_UPPER_SHIFT   (0x00000000U)

◆ SDL_RAT_REGION_TRANS_U_UPPER_MAX

#define SDL_RAT_REGION_TRANS_U_UPPER_MAX   (0x0000FFFFU)

◆ SDL_RAT_PID_MINOR_MASK

#define SDL_RAT_PID_MINOR_MASK   (0x0000003FU)

◆ SDL_RAT_PID_MINOR_SHIFT

#define SDL_RAT_PID_MINOR_SHIFT   (0x00000000U)

◆ SDL_RAT_PID_MINOR_MAX

#define SDL_RAT_PID_MINOR_MAX   (0x0000003FU)

◆ SDL_RAT_PID_CUSTOM_MASK

#define SDL_RAT_PID_CUSTOM_MASK   (0x000000C0U)

◆ SDL_RAT_PID_CUSTOM_SHIFT

#define SDL_RAT_PID_CUSTOM_SHIFT   (0x00000006U)

◆ SDL_RAT_PID_CUSTOM_MAX

#define SDL_RAT_PID_CUSTOM_MAX   (0x00000003U)

◆ SDL_RAT_PID_MAJOR_MASK

#define SDL_RAT_PID_MAJOR_MASK   (0x00000700U)

◆ SDL_RAT_PID_MAJOR_SHIFT

#define SDL_RAT_PID_MAJOR_SHIFT   (0x00000008U)

◆ SDL_RAT_PID_MAJOR_MAX

#define SDL_RAT_PID_MAJOR_MAX   (0x00000007U)

◆ SDL_RAT_PID_RTL_MASK

#define SDL_RAT_PID_RTL_MASK   (0x0000F800U)

◆ SDL_RAT_PID_RTL_SHIFT

#define SDL_RAT_PID_RTL_SHIFT   (0x0000000BU)

◆ SDL_RAT_PID_RTL_MAX

#define SDL_RAT_PID_RTL_MAX   (0x0000001FU)

◆ SDL_RAT_PID_FUNC_MASK

#define SDL_RAT_PID_FUNC_MASK   (0x0FFF0000U)

◆ SDL_RAT_PID_FUNC_SHIFT

#define SDL_RAT_PID_FUNC_SHIFT   (0x00000010U)

◆ SDL_RAT_PID_FUNC_MAX

#define SDL_RAT_PID_FUNC_MAX   (0x00000FFFU)

◆ SDL_RAT_PID_BU_MASK

#define SDL_RAT_PID_BU_MASK   (0x30000000U)

◆ SDL_RAT_PID_BU_SHIFT

#define SDL_RAT_PID_BU_SHIFT   (0x0000001CU)

◆ SDL_RAT_PID_BU_MAX

#define SDL_RAT_PID_BU_MAX   (0x00000003U)

◆ SDL_RAT_PID_SCHEME_MASK

#define SDL_RAT_PID_SCHEME_MASK   (0xC0000000U)

◆ SDL_RAT_PID_SCHEME_SHIFT

#define SDL_RAT_PID_SCHEME_SHIFT   (0x0000001EU)

◆ SDL_RAT_PID_SCHEME_MAX

#define SDL_RAT_PID_SCHEME_MAX   (0x00000003U)

◆ SDL_RAT_CONFIG_REGIONS_MASK

#define SDL_RAT_CONFIG_REGIONS_MASK   (0x000000FFU)

◆ SDL_RAT_CONFIG_REGIONS_SHIFT

#define SDL_RAT_CONFIG_REGIONS_SHIFT   (0x00000000U)

◆ SDL_RAT_CONFIG_REGIONS_MAX

#define SDL_RAT_CONFIG_REGIONS_MAX   (0x000000FFU)

◆ SDL_RAT_CONFIG_ADDRS_MASK

#define SDL_RAT_CONFIG_ADDRS_MASK   (0x0000FF00U)

◆ SDL_RAT_CONFIG_ADDRS_SHIFT

#define SDL_RAT_CONFIG_ADDRS_SHIFT   (0x00000008U)

◆ SDL_RAT_CONFIG_ADDRS_MAX

#define SDL_RAT_CONFIG_ADDRS_MAX   (0x000000FFU)

◆ SDL_RAT_CONFIG_ADDR_WIDTH_MASK

#define SDL_RAT_CONFIG_ADDR_WIDTH_MASK   (0x00FF0000U)

◆ SDL_RAT_CONFIG_ADDR_WIDTH_SHIFT

#define SDL_RAT_CONFIG_ADDR_WIDTH_SHIFT   (0x00000010U)

◆ SDL_RAT_CONFIG_ADDR_WIDTH_MAX

#define SDL_RAT_CONFIG_ADDR_WIDTH_MAX   (0x000000FFU)

◆ SDL_RAT_DESTINATION_ID_DEST_ID_MASK

#define SDL_RAT_DESTINATION_ID_DEST_ID_MASK   (0x000000FFU)

◆ SDL_RAT_DESTINATION_ID_DEST_ID_SHIFT

#define SDL_RAT_DESTINATION_ID_DEST_ID_SHIFT   (0x00000000U)

◆ SDL_RAT_DESTINATION_ID_DEST_ID_MAX

#define SDL_RAT_DESTINATION_ID_DEST_ID_MAX   (0x000000FFU)

◆ SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_F_MASK

#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_F_MASK   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_F_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_F_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_F_MAX

#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_F_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_INTR_MASK

#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_INTR_MASK   (0x00000002U)

◆ SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_INTR_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_INTR_SHIFT   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_INTR_MAX

#define SDL_RAT_EXCEPTION_LOGGING_CONTROL_DISABLE_INTR_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0_DEST_ID_MASK

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_DEST_ID_MASK   (0x000000FFU)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0_DEST_ID_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_DEST_ID_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0_DEST_ID_MAX

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_DEST_ID_MAX   (0x000000FFU)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0_SRC_ID_MASK

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_SRC_ID_MASK   (0x00FFFF00U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0_SRC_ID_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_SRC_ID_SHIFT   (0x00000008U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0_SRC_ID_MAX

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_SRC_ID_MAX   (0x0000FFFFU)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0_TYPE_F_MASK

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_TYPE_F_MASK   (0xFF000000U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0_TYPE_F_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_TYPE_F_SHIFT   (0x00000018U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER0_TYPE_F_MAX

#define SDL_RAT_EXCEPTION_LOGGING_HEADER0_TYPE_F_MAX   (0x000000FFU)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER1_CODE_MASK

#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_CODE_MASK   (0x00FF0000U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER1_CODE_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_CODE_SHIFT   (0x00000010U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER1_CODE_MAX

#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_CODE_MAX   (0x000000FFU)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER1_GROUP_MASK

#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_GROUP_MASK   (0xFF000000U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER1_GROUP_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_GROUP_SHIFT   (0x00000018U)

◆ SDL_RAT_EXCEPTION_LOGGING_HEADER1_GROUP_MAX

#define SDL_RAT_EXCEPTION_LOGGING_HEADER1_GROUP_MAX   (0x000000FFU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA0_ADDR_L_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA0_ADDR_L_MASK   (0xFFFFFFFFU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA0_ADDR_L_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA0_ADDR_L_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA0_ADDR_L_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA0_ADDR_L_MAX   (0xFFFFFFFFU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA1_ADDR_H_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA1_ADDR_H_MASK   (0x0000FFFFU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA1_ADDR_H_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA1_ADDR_H_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA1_ADDR_H_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA1_ADDR_H_MAX   (0x0000FFFFU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_ID_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_ID_MASK   (0x000000FFU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_ID_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_ID_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_ID_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_ID_MAX   (0x000000FFU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_SECURE_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_SECURE_MASK   (0x00000100U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_SECURE_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_SECURE_SHIFT   (0x00000008U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_SECURE_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_SECURE_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_MASK   (0x00000200U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_SHIFT   (0x00000009U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_PRIV_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_CACHEABLE_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_CACHEABLE_MASK   (0x00000400U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_CACHEABLE_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_CACHEABLE_SHIFT   (0x0000000AU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_CACHEABLE_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_CACHEABLE_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_DEBUG_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_DEBUG_MASK   (0x00000800U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_DEBUG_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_DEBUG_SHIFT   (0x0000000BU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_DEBUG_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_DEBUG_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_READ_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_READ_MASK   (0x00001000U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_READ_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_READ_SHIFT   (0x0000000CU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_READ_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_READ_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_WRITE_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_WRITE_MASK   (0x00002000U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_WRITE_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_WRITE_SHIFT   (0x0000000DU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_WRITE_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_WRITE_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_ROUTEID_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_ROUTEID_MASK   (0x0FFF0000U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_ROUTEID_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_ROUTEID_SHIFT   (0x00000010U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA2_ROUTEID_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA2_ROUTEID_MAX   (0x00000FFFU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA3_BYTECNT_MASK

#define SDL_RAT_EXCEPTION_LOGGING_DATA3_BYTECNT_MASK   (0x000003FFU)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA3_BYTECNT_SHIFT

#define SDL_RAT_EXCEPTION_LOGGING_DATA3_BYTECNT_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_LOGGING_DATA3_BYTECNT_MAX

#define SDL_RAT_EXCEPTION_LOGGING_DATA3_BYTECNT_MAX   (0x000003FFU)

◆ SDL_RAT_EXCEPTION_PEND_SET_PEND_SET_MASK

#define SDL_RAT_EXCEPTION_PEND_SET_PEND_SET_MASK   (0x00000001U)

◆ SDL_RAT_EXCEPTION_PEND_SET_PEND_SET_SHIFT

#define SDL_RAT_EXCEPTION_PEND_SET_PEND_SET_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_PEND_SET_PEND_SET_MAX

#define SDL_RAT_EXCEPTION_PEND_SET_PEND_SET_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_PEND_CLEAR_PEND_CLR_MASK

#define SDL_RAT_EXCEPTION_PEND_CLEAR_PEND_CLR_MASK   (0x00000001U)

◆ SDL_RAT_EXCEPTION_PEND_CLEAR_PEND_CLR_SHIFT

#define SDL_RAT_EXCEPTION_PEND_CLEAR_PEND_CLR_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_PEND_CLEAR_PEND_CLR_MAX

#define SDL_RAT_EXCEPTION_PEND_CLEAR_PEND_CLR_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_ENABLE_SET_ENABLE_SET_MASK

#define SDL_RAT_EXCEPTION_ENABLE_SET_ENABLE_SET_MASK   (0x00000001U)

◆ SDL_RAT_EXCEPTION_ENABLE_SET_ENABLE_SET_SHIFT

#define SDL_RAT_EXCEPTION_ENABLE_SET_ENABLE_SET_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_ENABLE_SET_ENABLE_SET_MAX

#define SDL_RAT_EXCEPTION_ENABLE_SET_ENABLE_SET_MAX   (0x00000001U)

◆ SDL_RAT_EXCEPTION_ENABLE_CLEAR_ENABLE_CLR_MASK

#define SDL_RAT_EXCEPTION_ENABLE_CLEAR_ENABLE_CLR_MASK   (0x00000001U)

◆ SDL_RAT_EXCEPTION_ENABLE_CLEAR_ENABLE_CLR_SHIFT

#define SDL_RAT_EXCEPTION_ENABLE_CLEAR_ENABLE_CLR_SHIFT   (0x00000000U)

◆ SDL_RAT_EXCEPTION_ENABLE_CLEAR_ENABLE_CLR_MAX

#define SDL_RAT_EXCEPTION_ENABLE_CLEAR_ENABLE_CLR_MAX   (0x00000001U)

◆ SDL_RAT_EOI_REG_EOI_WR_MASK

#define SDL_RAT_EOI_REG_EOI_WR_MASK   (0x0000FFFFU)

◆ SDL_RAT_EOI_REG_EOI_WR_SHIFT

#define SDL_RAT_EOI_REG_EOI_WR_SHIFT   (0x00000000U)

◆ SDL_RAT_EOI_REG_EOI_WR_MAX

#define SDL_RAT_EOI_REG_EOI_WR_MAX   (0x0000FFFFU)

Function Documentation

◆ SDL_RAT_getRegionTranslationConfig()

int32_t SDL_RAT_getRegionTranslationConfig ( const SDL_ratRegs pRatRegs,
uint32_t  regionIndex,
SDL_ratTranslationCfgInfo pTranslationCfg 
)

◆ SDL_RAT_lmo()

uint32_t SDL_RAT_lmo ( uint64_t  v)

◆ SDL_RAT_setRegionTranslationEnable()

int32_t SDL_RAT_setRegionTranslationEnable ( SDL_ratRegs pRatRegs,
uint32_t  regionIndex,
bool  bEnable 
)

◆ SDL_RAT_setIntEnable()

void SDL_RAT_setIntEnable ( SDL_ratRegs pRatRegs,
SDL_RAT_intrSrcTypes  intrSrc,
bool  bEnable 
)

◆ SDL_RAT_setExceptionLoggingEnable()

void SDL_RAT_setExceptionLoggingEnable ( SDL_ratRegs pRatRegs,
bool  bEnable 
)

◆ SDL_RAT_setExceptionLoggingIntEnable()

void SDL_RAT_setExceptionLoggingIntEnable ( SDL_ratRegs pRatRegs,
bool  bEnable 
)

◆ SDL_RAT_isPowerOf2()

int32_t SDL_RAT_isPowerOf2 ( uint64_t  v)

◆ SDL_RAT_isRegionOverlap()

int32_t SDL_RAT_isRegionOverlap ( const SDL_ratRegs pRatRegs,
uint32_t  thisRegionIndex,
const SDL_ratTranslationCfgInfo pTranslationCfg 
)

◆ SDL_RAT_validateTranslationConfig()

int32_t SDL_RAT_validateTranslationConfig ( const SDL_ratRegs pRatRegs,
uint32_t  regionIndex,
SDL_ratTranslationCfgInfo pTranslationCfg 
)