![]() |
RTEMS 6.1
|
AArch64 MMU configuration. More...
#include <bsp/aarch64-mmu.h>#include <bsp/fatal.h>#include <bsp/linker-symbols.h>#include <bsp/start.h>#include <rtems/score/aarch64-system-registers.h>#include <rtems/score/assert.h>Macros | |
| #define | MMU_MAX_SUBTABLE_PAGE_BITS ( 3 * MMU_BITS_PER_LEVEL + MMU_PAGE_BITS ) |
Functions | |
| BSP_START_TEXT_SECTION 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. | |
| BSP_START_TEXT_SECTION 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 | |
| aarch64_mmu_control | aarch64_mmu_instance |
| This object is used to maintain the MMU translation tables. | |
AArch64 MMU configuration.
| BSP_START_TEXT_SECTION 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. |
| BSP_START_TEXT_SECTION 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. |
| aarch64_mmu_control aarch64_mmu_instance |
This object is used to maintain the MMU translation tables.