Zephyr Project API 3.7.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))
 Bit indicating the data page, if evicted, will need to be paged out.
 
#define ARCH_DATA_PAGE_LOADED   ((uintptr_t)BIT(0))
 Bit indicating that the data page is loaded into a physical page frame.
 
#define ARCH_DATA_PAGE_ACCESSED   ((uintptr_t)BIT(5))
 Bit indicating the data page was accessed since the value was last cleared.
 
#define ARCH_DATA_PAGE_NOT_MAPPED   ((uintptr_t)BIT(7))
 If ARCH_DATA_PAGE_LOADED is un-set, this will indicate that the page is not mapped at all.
 
#define K_MEM_PARTITION_IS_EXECUTABLE(attr)   (((attr) & Z_X86_MMU_XD) == 0)
 
#define K_MEM_PARTITION_IS_WRITABLE(attr)   (((attr) & Z_X86_MMU_RW) != 0)
 
#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

◆ K_MEM_PARTITION_IS_EXECUTABLE

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

◆ K_MEM_PARTITION_IS_WRITABLE

#define K_MEM_PARTITION_IS_WRITABLE (   attr)    (((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

◆ pentry_t

typedef uint32_t pentry_t