Line data Source code
1 0 : /* 2 : * Copyright (c) 2024 Nordic Semiconductor ASA 3 : * SPDX-License-Identifier: Apache-2.0 4 : */ 5 : 6 : #ifndef ZEPHYR_INCLUDE_DT_BINDINGS_RESERVED_MEMORY_NORDIC_OWNED_MEMORY_H_ 7 : #define ZEPHYR_INCLUDE_DT_BINDINGS_RESERVED_MEMORY_NORDIC_OWNED_MEMORY_H_ 8 : 9 : #include <zephyr/dt-bindings/dt-util.h> 10 : 11 : /** 12 : * @name Basic memory permission flags. 13 : * @{ 14 : */ 15 : 16 : /** Readable. */ 17 1 : #define NRF_PERM_R BIT(0) 18 : /** Writable. */ 19 1 : #define NRF_PERM_W BIT(1) 20 : /** Executable. */ 21 1 : #define NRF_PERM_X BIT(2) 22 : /** Secure-only. */ 23 1 : #define NRF_PERM_S BIT(3) 24 : /** Non-secure-callable. */ 25 1 : #define NRF_PERM_NSC BIT(4) 26 : 27 : /** 28 : * @} 29 : */ 30 : 31 : /** 32 : * @name Memory permission flag combinations. 33 : * @note NRF_PERM_NSC overrides all other flags, so it is not included here. 34 : * @{ 35 : */ 36 : 37 0 : #define NRF_PERM_RW (NRF_PERM_R | NRF_PERM_W) 38 0 : #define NRF_PERM_RX (NRF_PERM_R | NRF_PERM_X) 39 0 : #define NRF_PERM_RS (NRF_PERM_R | NRF_PERM_S) 40 0 : #define NRF_PERM_WX (NRF_PERM_W | NRF_PERM_X) 41 0 : #define NRF_PERM_WS (NRF_PERM_W | NRF_PERM_S) 42 0 : #define NRF_PERM_XS (NRF_PERM_X | NRF_PERM_S) 43 0 : #define NRF_PERM_RWX (NRF_PERM_R | NRF_PERM_W | NRF_PERM_X) 44 0 : #define NRF_PERM_RWS (NRF_PERM_R | NRF_PERM_W | NRF_PERM_S) 45 0 : #define NRF_PERM_RXS (NRF_PERM_R | NRF_PERM_X | NRF_PERM_S) 46 0 : #define NRF_PERM_WXS (NRF_PERM_W | NRF_PERM_X | NRF_PERM_S) 47 0 : #define NRF_PERM_RWXS (NRF_PERM_R | NRF_PERM_W | NRF_PERM_X | NRF_PERM_S) 48 : 49 : /** 50 : * @} 51 : */ 52 : 53 : #endif /* ZEPHYR_INCLUDE_DT_BINDINGS_RESERVED_MEMORY_NORDIC_OWNED_MEMORY_H_ */