Zephyr API Documentation
4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
memory-attr-arm64.h
Go to the documentation of this file.
1
9
#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_MEM_ATTR_ARM64_H_
10
#define ZEPHYR_INCLUDE_DT_BINDINGS_MEM_ATTR_ARM64_H_
11
12
#include <
zephyr/dt-bindings/memory-attr/memory-attr.h
>
13
18
20
#define DT_MEM_ARM64_MASK DT_MEM_ARCH_ATTR_MASK
21
26
#define DT_MEM_ARM64_GET(x) ((x) & DT_MEM_ARM64_MASK)
27
32
#define DT_MEM_ARM64(x) ((x) << DT_MEM_ARCH_ATTR_SHIFT)
33
34
/*
35
* Architecture-specific sub-attribute bits (before shifting).
36
*
37
* These refine the generic DT_MEM_* attributes for ARM64. They occupy
38
* bits [31:20] of the zephyr,memory-attr value via DT_MEM_ARM64().
39
*/
40
42
#define ATTR_ARM64_CACHE_WB BIT(1)
43
44
/*
45
* Convenience macros: combinations of generic + arch-specific attributes.
46
*
47
* Following the subsystem's composable-bitmask design, each macro is
48
* built from the generic DT_MEM_CACHEABLE flag and architecture-specific
49
* sub-attributes rather than standalone one-hot enumerations.
50
*/
51
53
#define DT_MEM_ARM64_MMU_NORMAL_NC (0)
55
#define DT_MEM_ARM64_MMU_NORMAL_WT (DT_MEM_CACHEABLE)
57
#define DT_MEM_ARM64_MMU_NORMAL (DT_MEM_CACHEABLE | \
58
DT_MEM_ARM64(ATTR_ARM64_CACHE_WB))
59
60
#define DT_MEM_ARM64_MMU_UNKNOWN DT_MEM_ARCH_ATTR_UNKNOWN
61
63
64
#endif
/* ZEPHYR_INCLUDE_DT_BINDINGS_MEM_ATTR_ARM64_H_ */
memory-attr.h
zephyr
dt-bindings
memory-attr
memory-attr-arm64.h
Generated on
for Zephyr API Documentation by
1.16.1