Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
mmustructs.h File Reference
#include <zephyr/sys/util.h>
#include <zephyr/sys/slist.h>

Go to the source code of this file.

Data Structures

struct  arch_mem_domain
 

Macros

#define ARCH_DATA_PAGE_DIRTY   ((uintptr_t)BIT(6))
 
#define ARCH_DATA_PAGE_LOADED   ((uintptr_t)BIT(0))
 
#define ARCH_DATA_PAGE_ACCESSED   ((uintptr_t)BIT(5))
 
#define ARCH_DATA_PAGE_NOT_MAPPED   ((uintptr_t)BIT(7))
 
#define ARCH_UNPAGED_ANON_ZERO   ((uintptr_t)0xFFFFF000U)
 
#define ARCH_UNPAGED_ANON_UNINIT   ((uintptr_t)0xFFFFE000U)
 
#define K_MEM_PARTITION_IS_EXECUTABLE(attr)
 
#define K_MEM_PARTITION_IS_WRITABLE(attr)
 
#define K_MEM_PARTITION_P_RW_U_RW
 
#define K_MEM_PARTITION_P_RW_U_NA   (Z_X86_MMU_RW | Z_X86_MMU_XD)
 
#define K_MEM_PARTITION_P_RO_U_RO   (Z_X86_MMU_US | Z_X86_MMU_XD)
 
#define K_MEM_PARTITION_P_RO_U_NA   Z_X86_MMU_XD
 
#define K_MEM_PARTITION_P_RWX_U_RWX   (Z_X86_MMU_RW | Z_X86_MMU_US)
 
#define K_MEM_PARTITION_P_RWX_U_NA   Z_X86_MMU_RW
 
#define K_MEM_PARTITION_P_RX_U_RX   Z_X86_MMU_US
 
#define K_MEM_PARTITION_P_RX_U_NA   (0)
 
#define K_MEM_PARTITION_PERM_MASK
 

Typedefs

typedef uint32_t pentry_t
 
typedef pentry_t k_mem_partition_attr_t
 

Macro Definition Documentation

◆ ARCH_DATA_PAGE_ACCESSED

#define ARCH_DATA_PAGE_ACCESSED   ((uintptr_t)BIT(5))

◆ ARCH_DATA_PAGE_DIRTY

#define ARCH_DATA_PAGE_DIRTY   ((uintptr_t)BIT(6))

◆ ARCH_DATA_PAGE_LOADED

#define ARCH_DATA_PAGE_LOADED   ((uintptr_t)BIT(0))

◆ ARCH_DATA_PAGE_NOT_MAPPED

#define ARCH_DATA_PAGE_NOT_MAPPED   ((uintptr_t)BIT(7))

◆ ARCH_UNPAGED_ANON_UNINIT

#define ARCH_UNPAGED_ANON_UNINIT   ((uintptr_t)0xFFFFE000U)

◆ ARCH_UNPAGED_ANON_ZERO

#define ARCH_UNPAGED_ANON_ZERO   ((uintptr_t)0xFFFFF000U)

◆ K_MEM_PARTITION_IS_EXECUTABLE

#define K_MEM_PARTITION_IS_EXECUTABLE ( attr)
Value:
(((attr) & Z_X86_MMU_XD) == 0)

◆ K_MEM_PARTITION_IS_WRITABLE

#define K_MEM_PARTITION_IS_WRITABLE ( attr)
Value:
(((attr) & Z_X86_MMU_RW) != 0)

◆ K_MEM_PARTITION_P_RO_U_NA

#define K_MEM_PARTITION_P_RO_U_NA   Z_X86_MMU_XD

◆ K_MEM_PARTITION_P_RO_U_RO

#define K_MEM_PARTITION_P_RO_U_RO   (Z_X86_MMU_US | Z_X86_MMU_XD)

◆ K_MEM_PARTITION_P_RW_U_NA

#define K_MEM_PARTITION_P_RW_U_NA   (Z_X86_MMU_RW | Z_X86_MMU_XD)

◆ K_MEM_PARTITION_P_RW_U_RW

#define K_MEM_PARTITION_P_RW_U_RW
Value:
(Z_X86_MMU_RW | Z_X86_MMU_US | \
Z_X86_MMU_XD)

◆ K_MEM_PARTITION_P_RWX_U_NA

#define K_MEM_PARTITION_P_RWX_U_NA   Z_X86_MMU_RW

◆ K_MEM_PARTITION_P_RWX_U_RWX

#define K_MEM_PARTITION_P_RWX_U_RWX   (Z_X86_MMU_RW | Z_X86_MMU_US)

◆ K_MEM_PARTITION_P_RX_U_NA

#define K_MEM_PARTITION_P_RX_U_NA   (0)

◆ K_MEM_PARTITION_P_RX_U_RX

#define K_MEM_PARTITION_P_RX_U_RX   Z_X86_MMU_US

◆ K_MEM_PARTITION_PERM_MASK

#define K_MEM_PARTITION_PERM_MASK
Value:
(Z_X86_MMU_RW | Z_X86_MMU_US | \
Z_X86_MMU_XD)

Typedef Documentation

◆ k_mem_partition_attr_t

typedef pentry_t k_mem_partition_attr_t

◆ pentry_t

typedef uint32_t pentry_t