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
10
#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_MEM_ATTR_ARM64_H_
11
#define ZEPHYR_INCLUDE_DT_BINDINGS_MEM_ATTR_ARM64_H_
12
13
#include <
zephyr/dt-bindings/memory-attr/memory-attr.h
>
14
20
22
24
#define DT_MEM_ARM64_MASK DT_MEM_ARCH_ATTR_MASK
25
30
#define DT_MEM_ARM64(x) ((x) << DT_MEM_ARCH_ATTR_SHIFT)
31
32
/*
33
* Architecture-specific sub-attribute bits (before shifting).
34
*
35
* These refine the generic DT_MEM_* attributes for ARM64. They occupy
36
* bits [31:20] of the zephyr,memory-attr value via DT_MEM_ARM64().
37
*/
38
40
#define ATTR_ARM64_CACHE_WB BIT(1)
41
43
51
#define DT_MEM_ARM64_GET(x) ((x) & DT_MEM_ARM64_MASK)
52
53
/*
54
* Convenience macros: combinations of generic + arch-specific attributes.
55
*
56
* Following the subsystem's composable-bitmask design, each macro is
57
* built from the generic DT_MEM_CACHEABLE flag and architecture-specific
58
* sub-attributes rather than standalone one-hot enumerations.
59
*/
60
62
#define DT_MEM_ARM64_MMU_NORMAL_NC (0)
64
#define DT_MEM_ARM64_MMU_NORMAL_WT (DT_MEM_CACHEABLE)
66
#define DT_MEM_ARM64_MMU_NORMAL (DT_MEM_CACHEABLE | \
67
DT_MEM_ARM64(ATTR_ARM64_CACHE_WB))
68
69
#define DT_MEM_ARM64_MMU_UNKNOWN DT_MEM_ARCH_ATTR_UNKNOWN
70
72
73
#endif
/* ZEPHYR_INCLUDE_DT_BINDINGS_MEM_ATTR_ARM64_H_ */
memory-attr.h
Generic devicetree memory attribute definitions.
zephyr
dt-bindings
memory-attr
memory-attr-arm64.h
Generated on
for Zephyr API Documentation by
1.16.1