Zephyr Project API  3.1.0
A Scalable Open Source RTOS
pwms.h
Go to the documentation of this file.
1
6/*
7 * Copyright (c) 2020, Linaro Ltd.
8 *
9 * SPDX-License-Identifier: Apache-2.0
10 */
11
12#ifndef ZEPHYR_INCLUDE_DEVICETREE_PWMS_H_
13#define ZEPHYR_INCLUDE_DEVICETREE_PWMS_H_
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
51#define DT_PWMS_CTLR_BY_IDX(node_id, idx) \
52 DT_PHANDLE_BY_IDX(node_id, pwms, idx)
53
81#define DT_PWMS_CTLR_BY_NAME(node_id, name) \
82 DT_PHANDLE_BY_NAME(node_id, pwms, name)
83
91#define DT_PWMS_CTLR(node_id) DT_PWMS_CTLR_BY_IDX(node_id, 0)
92
137#define DT_PWMS_CELL_BY_IDX(node_id, idx, cell) \
138 DT_PHA_BY_IDX(node_id, pwms, idx, cell)
139
186#define DT_PWMS_CELL_BY_NAME(node_id, name, cell) \
187 DT_PHA_BY_NAME(node_id, pwms, name, cell)
188
196#define DT_PWMS_CELL(node_id, cell) DT_PWMS_CELL_BY_IDX(node_id, 0, cell)
197
211#define DT_PWMS_CHANNEL_BY_IDX(node_id, idx) \
212 DT_PWMS_CELL_BY_IDX(node_id, idx, channel)
213
228#define DT_PWMS_CHANNEL_BY_NAME(node_id, name) \
229 DT_PWMS_CELL_BY_NAME(node_id, name, channel)
230
237#define DT_PWMS_CHANNEL(node_id) DT_PWMS_CHANNEL_BY_IDX(node_id, 0)
238
252#define DT_PWMS_PERIOD_BY_IDX(node_id, idx) \
253 DT_PWMS_CELL_BY_IDX(node_id, idx, period)
254
269#define DT_PWMS_PERIOD_BY_NAME(node_id, name) \
270 DT_PWMS_CELL_BY_NAME(node_id, name, period)
271
278#define DT_PWMS_PERIOD(node_id) DT_PWMS_PERIOD_BY_IDX(node_id, 0)
279
294#define DT_PWMS_FLAGS_BY_IDX(node_id, idx) \
295 DT_PHA_BY_IDX_OR(node_id, pwms, idx, flags, 0)
296
314#define DT_PWMS_FLAGS_BY_NAME(node_id, name) \
315 DT_PHA_BY_NAME_OR(node_id, pwms, name, flags, 0)
316
323#define DT_PWMS_FLAGS(node_id) DT_PWMS_FLAGS_BY_IDX(node_id, 0)
324
335#define DT_INST_PWMS_CTLR_BY_IDX(inst, idx) \
336 DT_PWMS_CTLR_BY_IDX(DT_DRV_INST(inst), idx)
337
347#define DT_INST_PWMS_CTLR_BY_NAME(inst, name) \
348 DT_PWMS_CTLR_BY_NAME(DT_DRV_INST(inst), name)
349
357#define DT_INST_PWMS_CTLR(inst) DT_INST_PWMS_CTLR_BY_IDX(inst, 0)
358
367#define DT_INST_PWMS_CELL_BY_IDX(inst, idx, cell) \
368 DT_PWMS_CELL_BY_IDX(DT_DRV_INST(inst), idx, cell)
369
379#define DT_INST_PWMS_CELL_BY_NAME(inst, name, cell) \
380 DT_PWMS_CELL_BY_NAME(DT_DRV_INST(inst), name, cell)
381
388#define DT_INST_PWMS_CELL(inst, cell) \
389 DT_INST_PWMS_CELL_BY_IDX(inst, 0, cell)
390
398#define DT_INST_PWMS_CHANNEL_BY_IDX(inst, idx) \
399 DT_INST_PWMS_CELL_BY_IDX(inst, idx, channel)
400
409#define DT_INST_PWMS_CHANNEL_BY_NAME(inst, name) \
410 DT_INST_PWMS_CELL_BY_NAME(inst, name, channel)
411
418#define DT_INST_PWMS_CHANNEL(inst) DT_INST_PWMS_CHANNEL_BY_IDX(inst, 0)
419
427#define DT_INST_PWMS_PERIOD_BY_IDX(inst, idx) \
428 DT_INST_PWMS_CELL_BY_IDX(inst, idx, period)
429
438#define DT_INST_PWMS_PERIOD_BY_NAME(inst, name) \
439 DT_INST_PWMS_CELL_BY_NAME(inst, name, period)
440
447#define DT_INST_PWMS_PERIOD(inst) DT_INST_PWMS_PERIOD_BY_IDX(inst, 0)
448
456#define DT_INST_PWMS_FLAGS_BY_IDX(inst, idx) \
457 DT_INST_PWMS_CELL_BY_IDX(inst, idx, flags)
458
468#define DT_INST_PWMS_FLAGS_BY_NAME(inst, name) \
469 DT_INST_PWMS_CELL_BY_NAME(inst, name, flags)
470
477#define DT_INST_PWMS_FLAGS(inst) DT_INST_PWMS_FLAGS_BY_IDX(inst, 0)
478
483#ifdef __cplusplus
484}
485#endif
486
487#endif /* ZEPHYR_INCLUDE_DEVICETREE_PWMS_H_ */