Zephyr API Documentation 4.4.0-rc1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
mapped-partition.h
Go to the documentation of this file.
1
5
6/*
7 * Copyright (c) 2020, Linaro Ltd.
8 * Copyright (c) 2026 Nordic Semiconductor ASA.
9 *
10 * SPDX-License-Identifier: Apache-2.0
11 */
12
13#ifndef ZEPHYR_INCLUDE_DEVICETREE_MAPPED_PARTITION_H_
14#define ZEPHYR_INCLUDE_DEVICETREE_MAPPED_PARTITION_H_
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
25
62#define DT_NODE_BY_MAPPED_PARTITION_LABEL(label) \
63 DT_CAT(DT_COMPAT_zephyr_mapped_partition_LABEL_, label)
64
70#define DT_HAS_MAPPED_PARTITION_LABEL(label) \
71 IS_ENABLED(DT_CAT3(DT_COMPAT_zephyr_mapped_partition_LABEL_, label, _EXISTS))
72
79#define DT_MAPPED_PARTITION_EXISTS(node_id) DT_NODE_HAS_COMPAT(node_id, zephyr_mapped_partition)
80
86#define DT_MAPPED_PARTITION_ID(node_id) DT_CAT(node_id, _PARTITION_ID)
87
94#define DT_MEM_FROM_MAPPED_PARTITION(node_id) \
95 COND_CODE_1(DT_NODE_HAS_COMPAT(DT_CAT(node_id, _NVM_DEVICE), soc_nv_flash), \
96 (DT_CAT(node_id, _NVM_DEVICE)), \
97 (DT_INVALID_NODE))
98
105#define DT_MTD_FROM_MAPPED_PARTITION(node_id) DT_PARENT(DT_MEM_FROM_MAPPED_PARTITION(node_id))
106
141#define DT_MAPPED_PARTITION_ADDR(node_id) DT_REG_ADDR(node_id)
142
177#define DT_MAPPED_PARTITION_OFFSET(node_id) \
178 (DT_REG_ADDR(node_id) - DT_REG_ADDR(DT_MEM_FROM_MAPPED_PARTITION(node_id)))
179
183
184#ifdef __cplusplus
185}
186#endif
187
188#endif /* ZEPHYR_INCLUDE_DEVICETREE_MAPPED_PARTITION_H_ */