Zephyr Project API
3.3.0
A Scalable Open Source RTOS
gpio.h
Go to the documentation of this file.
1
6
/*
7
* Copyright (c) 2020, Linaro Ltd.
8
* Copyright (c) 2020 Nordic Semiconductor
9
*
10
* SPDX-License-Identifier: Apache-2.0
11
*/
12
13
#ifndef ZEPHYR_INCLUDE_DEVICETREE_GPIO_H_
14
#define ZEPHYR_INCLUDE_DEVICETREE_GPIO_H_
15
16
#ifdef __cplusplus
17
extern
"C"
{
18
#endif
19
53
#define DT_GPIO_CTLR_BY_IDX(node_id, gpio_pha, idx) \
54
DT_PHANDLE_BY_IDX(node_id, gpio_pha, idx)
55
65
#define DT_GPIO_CTLR(node_id, gpio_pha) \
66
DT_GPIO_CTLR_BY_IDX(node_id, gpio_pha, 0)
67
105
#define DT_GPIO_LABEL_BY_IDX(node_id, gpio_pha, idx) \
106
DT_PROP(DT_GPIO_CTLR_BY_IDX(node_id, gpio_pha, idx), label) __DEPRECATED_MACRO
107
119
#define DT_GPIO_LABEL(node_id, gpio_pha) \
120
DT_GPIO_LABEL_BY_IDX(node_id, gpio_pha, 0) __DEPRECATED_MACRO
121
163
#define DT_GPIO_PIN_BY_IDX(node_id, gpio_pha, idx) \
164
DT_PHA_BY_IDX(node_id, gpio_pha, idx, pin)
165
174
#define DT_GPIO_PIN(node_id, gpio_pha) \
175
DT_GPIO_PIN_BY_IDX(node_id, gpio_pha, 0)
176
219
#define DT_GPIO_FLAGS_BY_IDX(node_id, gpio_pha, idx) \
220
DT_PHA_BY_IDX_OR(node_id, gpio_pha, idx, flags, 0)
221
230
#define DT_GPIO_FLAGS(node_id, gpio_pha) \
231
DT_GPIO_FLAGS_BY_IDX(node_id, gpio_pha, 0)
232
271
#define DT_NUM_GPIO_HOGS(node_id) \
272
COND_CODE_1(IS_ENABLED(DT_CAT(node_id, _GPIO_HOGS_EXISTS)), \
273
(DT_CAT(node_id, _GPIO_HOGS_NUM)), (0))
274
316
#define DT_GPIO_HOG_PIN_BY_IDX(node_id, idx) \
317
DT_CAT4(node_id, _GPIO_HOGS_IDX_, idx, _VAL_pin)
318
361
#define DT_GPIO_HOG_FLAGS_BY_IDX(node_id, idx) \
362
COND_CODE_1(IS_ENABLED(DT_CAT4(node_id, _GPIO_HOGS_IDX_, idx, _VAL_flags_EXISTS)), \
363
(DT_CAT4(node_id, _GPIO_HOGS_IDX_, idx, _VAL_flags)), (0))
364
377
#define DT_INST_GPIO_LABEL_BY_IDX(inst, gpio_pha, idx) \
378
DT_GPIO_LABEL_BY_IDX(DT_DRV_INST(inst), gpio_pha, idx) __DEPRECATED_MACRO
379
390
#define DT_INST_GPIO_LABEL(inst, gpio_pha) \
391
DT_INST_GPIO_LABEL_BY_IDX(inst, gpio_pha, 0) __DEPRECATED_MACRO
392
403
#define DT_INST_GPIO_PIN_BY_IDX(inst, gpio_pha, idx) \
404
DT_GPIO_PIN_BY_IDX(DT_DRV_INST(inst), gpio_pha, idx)
405
414
#define DT_INST_GPIO_PIN(inst, gpio_pha) \
415
DT_INST_GPIO_PIN_BY_IDX(inst, gpio_pha, 0)
416
427
#define DT_INST_GPIO_FLAGS_BY_IDX(inst, gpio_pha, idx) \
428
DT_GPIO_FLAGS_BY_IDX(DT_DRV_INST(inst), gpio_pha, idx)
429
438
#define DT_INST_GPIO_FLAGS(inst, gpio_pha) \
439
DT_INST_GPIO_FLAGS_BY_IDX(inst, gpio_pha, 0)
440
445
#ifdef __cplusplus
446
}
447
#endif
448
449
#endif
/* ZEPHYR_INCLUDE_DEVICETREE_GPIO_H_ */
include
zephyr
devicetree
gpio.h
Generated on Fri Jun 9 2023 14:09:42 for Zephyr Project API by
1.9.2