Home
last modified time | relevance | path

Searched full:memory (Results 1 – 25 of 3062) sorted by relevance

12345678910>>...123

/Zephyr-latest/tests/subsys/mem_mgmt/mem_attr_heap/boards/
Dqemu_cortex_m3.overlay2 #include <zephyr/dt-bindings/memory-attr/memory-attr.h>
3 #include <zephyr/dt-bindings/memory-attr/memory-attr-sw.h>
6 mem_cache: memory@20008000 {
7 compatible = "zephyr,memory-region", "mmio-sram";
9 zephyr,memory-region = "MEM_CACHEABLE";
10 zephyr,memory-attr = <( DT_MEM_CACHEABLE )>;
13 mem_cache_sw: memory@20009000 {
14 compatible = "zephyr,memory-region", "mmio-sram";
16 zephyr,memory-region = "MEM_CACHEABLE_SW";
17 zephyr,memory-attr = <( DT_MEM_CACHEABLE | DT_MEM_SW_ALLOC_CACHE )>;
[all …]
/Zephyr-latest/tests/lib/shared_multi_heap/boards/
Dmps2_an521_cpu0.overlay7 #include <zephyr/dt-bindings/memory-attr/memory-attr.h>
8 #include <zephyr/dt-bindings/memory-attr/memory-attr-arm.h>
11 /delete-node/ memory@38000000;
13 ssram2_3: memory@38000000 {
14 compatible = "zephyr,memory-region", "mmio-sram";
16 zephyr,memory-region = "SSRAM2_3";
19 res0: memory@38100000 {
20 compatible = "zephyr,memory-region", "mmio-sram";
22 zephyr,memory-region = "RES0";
23 zephyr,memory-attr = <( DT_MEM_ARM(ATTR_MPU_RAM) )>;
[all …]
Dqemu_cortex_a53.overlay7 #include <zephyr/dt-bindings/memory-attr/memory-attr.h>
8 #include <zephyr/dt-bindings/memory-attr/memory-attr-arm.h>
12 res0: memory@42000000 {
13 compatible = "zephyr,memory-region", "mmio-sram";
15 zephyr,memory-region = "RES0";
16 zephyr,memory-attr = <( DT_MEM_ARM(ATTR_MPU_RAM) )>;
19 res1: memory@43000000 {
20 compatible = "zephyr,memory-region", "mmio-sram";
22 zephyr,memory-region = "RES1";
23 zephyr,memory-attr = <( DT_MEM_ARM(ATTR_MPU_RAM_NOCACHE) )>;
[all …]
/Zephyr-latest/include/zephyr/app_memory/
Dmem_domain.h22 * @defgroup mem_domain_apis Memory domain APIs
31 * @brief Statically declare a memory partition
45 * @brief Memory Partition
47 * A memory partition is a region of memory in the linear address space
52 * underlying memory management hardware; arbitrary values are unlikely
56 /** start address of memory partition */
58 /** size of memory partition */
60 /** attribute of memory partition */
65 * @brief Memory Domain
67 * A memory domain is a collection of memory partitions, used to represent
[all …]
/Zephyr-latest/doc/kernel/memory_management/
Dslabs.rst3 Memory Slabs
6 A :dfn:`memory slab` is a kernel object that allows memory blocks
7 to be dynamically allocated from a designated memory region.
8 All memory blocks in a memory slab have a single fixed size,
10 and avoiding memory fragmentation concerns.
19 Any number of memory slabs can be defined (limited only by available RAM). Each
20 memory slab is referenced by its memory address.
22 A memory slab has the following key properties:
30 * A **buffer** that provides the memory for the memory slab's blocks.
33 The memory slab's buffer must be aligned to an N-byte boundary, where
[all …]
Dsys_mem_blocks.rst3 Memory Blocks Allocator
6 The Memory Blocks Allocator allows memory blocks to be dynamically
7 allocated from a designated memory region, where:
9 * All memory blocks have a single fixed size.
17 buffer (unlike memory slab). This allows the buffer to reside in
18 memory regions where these can be powered down to conserve energy.
27 Any number of Memory Blocks Allocator can be defined (limited only by
28 available RAM). Each allocator is referenced by its memory address.
30 A memory blocks allocator has the following key properties:
38 * A **buffer** that provides the memory for the memory slab's blocks.
[all …]
Dvirtual_memory.rst3 Virtual Memory
6 Virtual memory (VM) in Zephyr provides developers with the ability to fine tune
7 access to memory. To utilize virtual memory, the platform must support
8 Memory Management Unit (MMU) and it must be enabled in the build. Due to
9 the target of Zephyr mainly being embedded systems, virtual memory
15 between physical and virtual memory address spaces, if demand paging
20 Basic virtual memory support does not utilize secondary storage to
21 extend usable memory. The maximum usable memory is the same as
22 the physical memory.
25 secondary storage as a backing store for virtual memory, thus
[all …]
/Zephyr-latest/include/zephyr/sys/
Dmem_blocks.h10 * @brief Memory Blocks Allocator
31 * @defgroup mem_blocks_apis Memory Blocks APIs
37 * @brief Memory Blocks Allocator
42 * @brief Multi Memory Blocks Allocator
49 * @brief Memory Blocks Allocator
56 * @brief Multi Memory Blocks Allocator
61 * @brief Multi memory blocks allocator choice function
64 * a specific memory blocks allocator based on the opaque cfg value,
72 * @param group Multi memory blocks allocator structure.
97 /* Memory block buffer */
[all …]
/Zephyr-latest/include/zephyr/drivers/mm/
Dmm_drv_bank.h9 * @brief Memory Banks Driver APIs
11 * This contains generic APIs to be used by a system-wide memory management
12 * driver to track page usage within memory banks.
26 * @brief Memory Banks Driver APIs
27 * @defgroup mm_drv_bank_apis Memory Banks Driver APIs
29 * This contains APIs for a system-wide memory management driver to
30 * track page usage within memory banks.
40 * @brief Information about memory banks.
54 * @brief Initialize a memory bank's data structure
56 * The driver may wish to track various information about the memory banks
[all …]
Dsystem_mm.h9 * @brief Memory Management Driver APIs
11 * This contains APIs for a system-wide memory management
27 * @brief Memory Management Driver APIs
28 * @defgroup mm_drv_apis Memory Management Driver APIs
30 * This contains APIs for a system-wide memory management
83 * @name Memory Mapping and Unmapping
85 * On mapping and unmapping of memory.
97 * The memory range itself is never accessed by this operation.
113 * @brief Map a region of physical memory into the virtual address space
115 * This maps a region of physical memory into the virtual address space.
[all …]
/Zephyr-latest/doc/services/mem_mgmt/
Dindex.rst3 Memory Attributes
6 It is possible in the devicetree to mark the memory regions with attributes by
7 using the ``zephyr,memory-attr`` property. This property and the related memory
12 and explained in :zephyr_file:`include/zephyr/dt-bindings/memory-attr/memory-attr.h`.
14 For example, to mark a memory region in the devicetree as non-volatile, cacheable,
19 mem: memory@10000000 {
22 zephyr,memory-attr = <( DT_MEM_NON_VOLATILE | DT_MEM_CACHEABLE | DT_MEM_OOO )>;
27 The ``zephyr,memory-attr`` usage does not result in any memory region
29 devicetree defined memory region, it is possible to use the compatible
30 :dtcompatible:`zephyr,memory-region` that will result (only when supported
[all …]
/Zephyr-latest/boards/nordic/nrf54h20dk/
Dnrf54h20dk_nrf54h20-memory_map.dtsi6 #include <zephyr/dt-bindings/memory-attr/memory-attr.h>
9 reserved-memory {
10 cpurad_ram0x_region: memory@2f010000 {
11 compatible = "nordic,owned-memory";
19 cpusec_cpurad_ipc_shm: memory@0 {
23 cpurad_cpusec_ipc_shm: memory@800 {
28 cpuapp_ram0x_region: memory@2f011000 {
29 compatible = "nordic,owned-memory";
37 cpusec_cpuapp_ipc_shm: memory@0 {
41 cpuapp_cpusec_ipc_shm: memory@800 {
[all …]
/Zephyr-latest/boards/nordic/nrf9280pdk/
Dnrf9280pdk_nrf9280-memory_map.dtsi6 #include <zephyr/dt-bindings/memory-attr/memory-attr.h>
9 reserved-memory {
14 cpurad_ram0x_region: memory@2f011000 {
15 compatible = "nordic,owned-memory";
23 cpusec_cpurad_ipc_shm: memory@0 {
27 cpurad_cpusec_ipc_shm: memory@800 {
32 cpuapp_ram0x_region: memory@2f012000 {
33 compatible = "nordic,owned-memory";
41 cpusec_cpuapp_ipc_shm: memory@0 {
45 cpuapp_cpusec_ipc_shm: memory@800 {
[all …]
/Zephyr-latest/tests/subsys/mem_mgmt/mem_attr_heap/src/
Dmain.c10 #include <zephyr/dt-bindings/memory-attr/memory-attr-sw.h>
38 * Allocate 0x100 bytes of cacheable memory. in ZTEST()
41 zassert_not_null(block, "Failed to allocate memory"); in ZTEST()
44 * Check that the just allocated memory was allocated from the correct in ZTEST()
45 * memory region. in ZTEST()
49 "Memory allocated from the wrong region"); in ZTEST()
52 * Allocate 0x100 bytes of non-cacheable memory. in ZTEST()
55 zassert_not_null(block, "Failed to allocate memory"); in ZTEST()
58 * Check that the just allocated memory was allocated from the correct in ZTEST()
59 * memory region. in ZTEST()
[all …]
/Zephyr-latest/lib/mem_blocks/
DKconfig5 menu "Memory Blocks"
8 bool "(Yet Another) Memory Blocks Allocator"
10 This enables support for memory block allocator where:
11 () All memory blocks have a single fixed size.
17 the associated buffer (unlike memory slab). This allows
18 the buffer to reside in memory regions where these can be
22 bool "Memory Blocks Allocator event notifications"
26 This allows application to listen for memory blocks allocator
27 events, such as memory allocation and de-allocation.
30 bool "Memory blocks runtime statistics"
[all …]
/Zephyr-latest/modules/lz4/
DKconfig15 int "Lz4 memory usage"
19 Increasing memory usage improves compression ratio, but usually at the
20 cost of speed, due to cache locality. Memory usage 2^value (10 -> 1KB,
24 bool "Disable dynamic memory allocation"
26 Disable lz4 functions that use dynamic memory allocation functions.
29 prompt "How stateless compression functions allocate memory for their hash table"
33 bool "in memory stack"
35 Allocate memory from stack (fastest).
38 bool "in memory heap"
41 Allocate memory from heap (requires malloc()).
[all …]
/Zephyr-latest/tests/subsys/mem_mgmt/mem_attr/
Dapp.overlay6 #include <zephyr/dt-bindings/memory-attr/memory-attr.h>
7 #include <zephyr/dt-bindings/memory-attr/memory-attr-arm.h>
10 mem_ram: memory@10000000 {
11 compatible = "vnd,memory-attr";
13 zephyr,memory-attr = <( DT_MEM_ARM(ATTR_MPU_FLASH) | DT_MEM_NON_VOLATILE )>;
16 mem_ram_nocache: memory@20000000 {
17 compatible = "vnd,memory-attr";
19 zephyr,memory-attr = <( DT_MEM_ARM(ATTR_MPU_RAM_NOCACHE) )>;
22 mem_ram_disabled: memory@30000000 {
23 compatible = "vnd,memory-attr";
[all …]
/Zephyr-latest/include/zephyr/mem_mgmt/
Dmem_attr_heap.h11 * @brief Memory heaps based on memory attributes
12 * @defgroup memory_attr_heap Memory heaps based on memory attributes
24 * @brief Init the memory pool
26 * This must be the first function to be called to initialize the memory pools
27 * from all the memory regions with the a software attribute.
36 * @brief Allocate memory with a specified attribute and size.
38 * Allocates a block of memory of the specified size in bytes and with a
40 * correct memory heap to allocate memory from.
42 * @param attr capability / attribute requested for the memory block.
45 * @retval ptr a valid pointer to the allocated memory.
[all …]
/Zephyr-latest/kernel/
DKconfig.mem_domain6 menu "Memory Domains"
9 int "Maximum number of partitions per memory domain"
14 Configure the maximum number of partitions per memory domain.
21 architecture-specific data is needed on a per memory domain basis.
25 when a memory domain is created.
27 Typical uses might be a set of page tables for that memory domain.
34 modifying a memory domain's partitions at runtime, or changing
35 a memory domain's thread membership requires synchronous calls
47 members of memory domains, they have no implications on supervisor
48 thread access to memory. Memory domain APIs may only be invoked from
[all …]
/Zephyr-latest/include/zephyr/linker/
Ddevicetree_regions.h7 * Generate memory regions from devicetree nodes.
18 * @brief Get the linker memory-region name in a token form
20 * This attempts to use the zephyr,memory-region property (with
28 * sram1: memory@2000000 {
29 * zephyr,memory-region = "MY_NAME";
31 * sram2: memory@2001000 {
32 * zephyr,memory-region = "MY@OTHER@NAME";
46 * @return the name of the memory memory region the node will generate
52 * @brief Get the linker memory-region name
54 * This attempts to use the zephyr,memory-region property (with
[all …]
/Zephyr-latest/include/zephyr/drivers/misc/ft8xx/
Dft8xx_common.h22 * @brief FT8xx functions to write and read memory
29 * @brief Write 1 byte (8 bits) to FT8xx memory
31 * @param address Memory address to write to
37 * @brief Write 2 bytes (16 bits) to FT8xx memory
39 * @param address Memory address to write to
45 * @brief Write 4 bytes (32 bits) to FT8xx memory
47 * @param address Memory address to write to
53 * @brief Read 1 byte (8 bits) from FT8xx memory
55 * @param address Memory address to read from
57 * @return Value read from memory
[all …]
/Zephyr-latest/include/zephyr/multi_heap/
Dshared_multi_heap.h34 * of memory regions with different capabilities / attributes (cacheable,
39 * can be used by drivers or applications to request memory with certain
45 * framework using @ref shared_multi_heap_pool_init and add the memory
49 * - Each memory region encoded in a @ref shared_multi_heap_region structure.
54 * - When a driver or application needs some dynamic memory with a certain
56 * version) to request the memory by using the opaque parameter to select
57 * the correct set of attributes for the needed memory. The framework will
58 * take care of selecting the correct heap (thus memory region) to carve
59 * memory from, based on the opaque parameter and the runtime state of the
60 * heaps (available memory, heap state, etc...)
[all …]
/Zephyr-latest/include/zephyr/debug/
Dgdbstub.h18 /* Access permissions for memory regions */
29 /** Describe one memory region */
31 /** Start address of a memory region */
34 /** End address of a memory region */
37 /** Memory region attributes */
54 * Memory region descriptions used for GDB memory access.
56 * This array specifies which region of memory GDB can access
58 * memory read/write in GDB stub to memory that can be
59 * legally accessed without resulting in memory faults.
64 * Number of Memory Regions.
[all …]
/Zephyr-latest/doc/kernel/usermode/
Dmemory_domain.rst3 Memory Protection Design
6 Zephyr's memory protection design is geared towards microcontrollers with MPU
7 (Memory Protection Unit) hardware. We do support some architectures, such as x86,
8 which have a paged MMU (Memory Management Unit), but in that case the MMU is
15 There are a few different levels on how memory access is configured when
16 Zephyr memory protection features are enabled, which we will describe here:
18 Boot Time Memory Configuration
24 - Any configuration of memory regions which need to have special caching or
26 MPUs have the concept of a default memory access policy map, which can be
27 enabled as a "background" mapping for any area of memory that doesn't
[all …]
/Zephyr-latest/tests/lib/devicetree/memory_region_flags/
Dapp.overlay11 compatible = "zephyr,memory-region";
13 zephyr,memory-region = "TEST_REGION_R";
14 zephyr,memory-region-flags = "r";
18 compatible = "zephyr,memory-region";
20 zephyr,memory-region = "TEST_REGION_NRWXAIL";
21 zephyr,memory-region-flags = "!rwxail";
25 compatible = "zephyr,memory-region";
27 zephyr,memory-region = "TEST_REGION_NO_FLAGS";
31 compatible = "zephyr,memory-region";
33 zephyr,memory-region = "TEST_REGION_NONE";
[all …]

12345678910>>...123