RTEMS 6.1-rc5
|
AArch64 MMU configuration. More...
#include <bsp/fatal.h>
#include <bsp/linker-symbols.h>
#include <bsp/start.h>
#include <bsp/utility.h>
#include <bspopts.h>
#include <libcpu/mmu-vmsav8-64.h>
#include <rtems/score/aarch64-system-registers.h>
Go to the source code of this file.
Data Structures | |
struct | aarch64_mmu_config_entry |
struct | aarch64_mmu_control |
This structure represents the state to maintain the MMU translation tables. More... | |
Macros | |
#define | AARCH64_MMU_DEFAULT_SECTIONS |
Functions | |
rtems_status_code | aarch64_mmu_set_translation_table_entries (aarch64_mmu_control *control, const aarch64_mmu_config_entry *config) |
Sets the MMU translation table entries associated with the memory region. | |
void | aarch64_mmu_setup_translation_table (aarch64_mmu_control *control, const aarch64_mmu_config_entry *config_table, size_t config_count) |
Sets up the MMU translation table. | |
Variables | |
const aarch64_mmu_config_entry | aarch64_mmu_config_table [] |
This is the AArch64 MMU configuration table. | |
const size_t | aarch64_mmu_config_table_size |
This is the count of entries in the AArch64 MMU configuration table. | |
aarch64_mmu_control | aarch64_mmu_instance |
This object is used to maintain the MMU translation tables. | |
AArch64 MMU configuration.
rtems_status_code aarch64_mmu_set_translation_table_entries | ( | aarch64_mmu_control * | control, |
const aarch64_mmu_config_entry * | config | ||
) |
Sets the MMU translation table entries associated with the memory region.
[in,out] | control | is a reference to the MMU control state. |
[in] | config | is the configuration entry with the memory region and region attributes. |
RTEMS_SUCCESSFUL | The requested operation was successful. |
RTEMS_INVALID_ADDRESS | The begin address of the memory region cannot be mapped by the MMU. |
RTEMS_INVALID_SIZE | The end address of the memory region cannot be mapped by the MMU. |
RTEMS_TOO_MANY | There was no page table entry available to perform the mapping. |
void aarch64_mmu_setup_translation_table | ( | aarch64_mmu_control * | control, |
const aarch64_mmu_config_entry * | config_table, | ||
size_t | config_count | ||
) |
Sets up the MMU translation table.
The memory regions of the configuration table are mapped by the MMU. If a mapping is infeasible, then the BSP fatal error AARCH64_FATAL_MMU_CANNOT_MAP_BLOCK will be issued.
[in,out] | control | is a reference to the MMU control state. |
[in] | config_table | is the configuration table with memory regions and region attributes. |
config_count | is the count of configuration table entries. |
|
extern |
This is the AArch64 MMU configuration table.
The default table is provided by the BSP. Applications may provide their own.
|
extern |
This is the count of entries in the AArch64 MMU configuration table.
The default table is provided by the BSP. Applications may provide their own.