Zephyr API Documentation
4.2.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
memory-attr-riscv.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2023 Carlo Caione <ccaione@baylibre.com>
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_MEM_ATTR_RISCV_H_
7
#define ZEPHYR_INCLUDE_DT_BINDINGS_MEM_ATTR_RISCV_H_
8
9
#include <
zephyr/sys/util_macro.h
>
10
#include <
zephyr/dt-bindings/memory-attr/memory-attr.h
>
11
12
/*
13
* Architecture specific RISCV related attributes.
14
*/
15
#define DT_MEM_RISCV_MASK DT_MEM_ARCH_ATTR_MASK
16
#define DT_MEM_RISCV_GET(x) ((x) & DT_MEM_RISCV_MASK)
17
#define DT_MEM_RISCV(x) ((x) << DT_MEM_ARCH_ATTR_SHIFT)
18
19
#define ATTR_RISCV_TYPE_MAIN BIT(0)
20
#define ATTR_RISCV_TYPE_IO BIT(1)
21
#define ATTR_RISCV_TYPE_IO_R BIT(2)
22
#define ATTR_RISCV_TYPE_IO_W BIT(3)
23
#define ATTR_RISCV_TYPE_IO_X BIT(4)
24
#define ATTR_RISCV_TYPE_EMPTY BIT(5)
25
#define ATTR_RISCV_AMO_SWAP BIT(6)
26
#define ATTR_RISCV_AMO_LOGICAL BIT(7)
27
#define ATTR_RISCV_AMO_ARITHMETIC BIT(8)
28
#define ATTR_RISCV_IO_IDEMPOTENT_READ BIT(9)
29
#define ATTR_RISCV_IO_IDEMPOTENT_WRITE BIT(10)
30
31
#define DT_MEM_RISCV_TYPE_MAIN DT_MEM_RISCV(ATTR_RISCV_TYPE_MAIN)
32
#define DT_MEM_RISCV_TYPE_IO DT_MEM_RISCV(ATTR_RISCV_TYPE_IO)
33
#define DT_MEM_RISCV_TYPE_IO_R DT_MEM_RISCV(ATTR_RISCV_TYPE_IO_R)
34
#define DT_MEM_RISCV_TYPE_IO_W DT_MEM_RISCV(ATTR_RISCV_TYPE_IO_W)
35
#define DT_MEM_RISCV_TYPE_IO_X DT_MEM_RISCV(ATTR_RISCV_TYPE_IO_X)
36
#define DT_MEM_RISCV_TYPE_EMPTY DT_MEM_RISCV(ATTR_RISCV_TYPE_EMPTY)
37
#define DT_MEM_RISCV_AMO_SWAP DT_MEM_RISCV(ATTR_RISCV_AMO_SWAP)
38
#define DT_MEM_RISCV_AMO_LOGICAL DT_MEM_RISCV(ATTR_RISCV_AMO_LOGICAL)
39
#define DT_MEM_RISCV_AMO_ARITHMETIC DT_MEM_RISCV(ATTR_RISCV_AMO_ARITHMETIC)
40
#define DT_MEM_RISCV_IO_IDEMPOTENT_READ DT_MEM_RISCV(ATTR_RISCV_IO_IDEMPOTENT_READ)
41
#define DT_MEM_RISCV_IO_IDEMPOTENT_WRITE DT_MEM_RISCV(ATTR_RISCV_IO_IDEMPOTENT_WRITE)
42
#define DT_MEM_RISCV_UNKNOWN DT_MEM_ARCH_ATTR_UNKNOWN
43
44
#endif
/* ZEPHYR_INCLUDE_DT_BINDINGS_MEM_ATTR_RISCV_H_ */
memory-attr.h
util_macro.h
Macro utilities.
zephyr
dt-bindings
memory-attr
memory-attr-riscv.h
Generated on
for Zephyr API Documentation by
1.14.0