AM263Px MCU+ SDK: APIs for Region based address translation (RAT) module

| AM263Px MCU+ SDK 26.00.00 |

Data Structures | Functions | Enumerations | Macros
APIs for Region based address translation (RAT) module
APIs for Driver Porting Layer

## Introduction

For more details and example usage, see Region based Address Translate

## Data Structures
struct | AddrTranslateP_RegionConfig
| Region config structure, this is used by SysConfig and not to be used by end-users directly. More...
struct | AddrTranslateP_Params
| Parameters for AddrTranslateP_init, this is used by SysConfig and not to be used by end-users directly. More...

## Functions
void | AddrTranslateP_Params_init (AddrTranslateP_Params *params)
| Set default value for address translate parameters. More...
void | AddrTranslateP_init (AddrTranslateP_Params *params)
| Initialize Address translate sub-system, called by SysConfig, not to be called by end users. More...
void * | AddrTranslateP_getLocalAddr (uint64_t systemAddr)
| Translate from system address to a CPU address as seen via the RAT module. More...

## Enumerations
enum | AddrTranslateP_RegionSize { AddrTranslateP_RegionSize_1 = 0x0U, AddrTranslateP_RegionSize_2, AddrTranslateP_RegionSize_4, AddrTranslateP_RegionSize_8, AddrTranslateP_RegionSize_16, AddrTranslateP_RegionSize_32, AddrTranslateP_RegionSize_64, AddrTranslateP_RegionSize_128, AddrTranslateP_RegionSize_256, AddrTranslateP_RegionSize_512, AddrTranslateP_RegionSize_1K, AddrTranslateP_RegionSize_2K, AddrTranslateP_RegionSize_4K, AddrTranslateP_RegionSize_8K, AddrTranslateP_RegionSize_16K, AddrTranslateP_RegionSize_32K, AddrTranslateP_RegionSize_64K, AddrTranslateP_RegionSize_128K, AddrTranslateP_RegionSize_256K, AddrTranslateP_RegionSize_512K, AddrTranslateP_RegionSize_1M, AddrTranslateP_RegionSize_2M, AddrTranslateP_RegionSize_4M, AddrTranslateP_RegionSize_8M, AddrTranslateP_RegionSize_16M, AddrTranslateP_RegionSize_32M, AddrTranslateP_RegionSize_64M, AddrTranslateP_RegionSize_128M, AddrTranslateP_RegionSize_256M, AddrTranslateP_RegionSize_512M, AddrTranslateP_RegionSize_1G, AddrTranslateP_RegionSize_2G, AddrTranslateP_RegionSize_4G }
| Enum's to represent different possible region size for the address translate module. More...

## Macros
#define | AddrTranslateP_MAX_REGIONS (16u)
| Maximum regions in the address translate module. More...

## Macro Definition Documentation

## ◆ AddrTranslateP_MAX_REGIONS

#define AddrTranslateP_MAX_REGIONS (16u)

Maximum regions in the address translate module.

## Enumeration Type Documentation

## ◆ AddrTranslateP_RegionSize

enum AddrTranslateP_RegionSize

Enum's to represent different possible region size for the address translate module.

Enumerator
AddrTranslateP_RegionSize_1 |
AddrTranslateP_RegionSize_2 |
AddrTranslateP_RegionSize_4 |
AddrTranslateP_RegionSize_8 |
AddrTranslateP_RegionSize_16 |
AddrTranslateP_RegionSize_32 |
AddrTranslateP_RegionSize_64 |
AddrTranslateP_RegionSize_128 |
AddrTranslateP_RegionSize_256 |
AddrTranslateP_RegionSize_512 |
AddrTranslateP_RegionSize_1K |
AddrTranslateP_RegionSize_2K |
AddrTranslateP_RegionSize_4K |
AddrTranslateP_RegionSize_8K |
AddrTranslateP_RegionSize_16K |
AddrTranslateP_RegionSize_32K |
AddrTranslateP_RegionSize_64K |
AddrTranslateP_RegionSize_128K |
AddrTranslateP_RegionSize_256K |
AddrTranslateP_RegionSize_512K |
AddrTranslateP_RegionSize_1M |
AddrTranslateP_RegionSize_2M |
AddrTranslateP_RegionSize_4M |
AddrTranslateP_RegionSize_8M |
AddrTranslateP_RegionSize_16M |
AddrTranslateP_RegionSize_32M |
AddrTranslateP_RegionSize_64M |
AddrTranslateP_RegionSize_128M |
AddrTranslateP_RegionSize_256M |
AddrTranslateP_RegionSize_512M |
AddrTranslateP_RegionSize_1G |
AddrTranslateP_RegionSize_2G |
AddrTranslateP_RegionSize_4G |

## Function Documentation

## ◆ AddrTranslateP_Params_init()

void AddrTranslateP_Params_init | ( | AddrTranslateP_Params * | params | ) |

Set default value for address translate parameters.

Parameters

  params | [out] Structure initialized with default parameters

## ◆ AddrTranslateP_init()

void AddrTranslateP_init | ( | AddrTranslateP_Params * | params | ) |

Initialize Address translate sub-system, called by SysConfig, not to be called by end users.

Parameters

  params | [in] Initialization parameters

## ◆ AddrTranslateP_getLocalAddr()

void* AddrTranslateP_getLocalAddr | ( | uint64_t | systemAddr | ) |

Translate from system address to a CPU address as seen via the RAT module.

Note
  If no mapping is found then lower 32b are returned as the local address, i.e no translation is done for 32b address, and address truncation for > 32b input addresses.
  All drivers MUST call this API to translate peripheral MMR base addresses to CPU visible base addr. It is recommended to call this once to get the base address during driver module init.

Parameters

  systemAddr | [in] system address or SOC view address

Returns
  void * CPU view or local address