8#ifndef ZEPHYR_INCLUDE_APP_MEMORY_MEM_DOMAIN_H_
9#define ZEPHYR_INCLUDE_APP_MEMORY_MEM_DOMAIN_H_
27#ifdef CONFIG_USERSPACE
33#ifdef _ARCH_MEM_PARTITION_ALIGN_CHECK
34#define K_MEM_PARTITION_DEFINE(name, start, size, attr) \
35 _ARCH_MEM_PARTITION_ALIGN_CHECK(start, size); \
36 struct k_mem_partition name =\
37 { (uintptr_t)start, size, attr}
39#define K_MEM_PARTITION_DEFINE(name, start, size, attr) \
40 struct k_mem_partition name =\
41 { (uintptr_t)start, size, attr}
39#define K_MEM_PARTITION_DEFINE(name, start, size, attr) \ …
81#ifdef CONFIG_ARCH_MEM_DOMAIN_DATA
struct _dnode sys_dlist_t
Doubly-linked list structure.
Definition dlist.h:50
int k_mem_domain_add_partition(struct k_mem_domain *domain, struct k_mem_partition *part)
Add a memory partition into a memory domain.
struct k_mem_domain k_mem_domain_t
Definition mem_domain.h:92
struct k_mem_domain k_mem_domain_default
Default memory domain.
int k_mem_domain_add_thread(struct k_mem_domain *domain, k_tid_t thread)
Add a thread into a memory domain.
int k_mem_domain_init(struct k_mem_domain *domain, uint8_t num_parts, struct k_mem_partition *parts[])
Initialize a memory domain.
int k_mem_domain_remove_partition(struct k_mem_domain *domain, struct k_mem_partition *part)
Remove a memory partition from a memory domain.
struct k_thread * k_tid_t
Definition thread.h:383
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINTPTR_TYPE__ uintptr_t
Definition stdint.h:105
Memory Domain.
Definition mem_domain.h:80
struct k_mem_partition partitions[CONFIG_MAX_DOMAIN_PARTITIONS]
partitions in the domain
Definition mem_domain.h:85
uint8_t num_partitions
number of active partitions in the domain
Definition mem_domain.h:89
sys_dlist_t mem_domain_q
Doubly linked list of member threads.
Definition mem_domain.h:87
Definition arm_mpu_v7m.h:142
Memory Partition.
Definition mem_domain.h:55
uintptr_t start
start address of memory partition
Definition mem_domain.h:57
size_t size
size of memory partition
Definition mem_domain.h:59
k_mem_partition_attr_t attr
attribute of memory partition
Definition mem_domain.h:61