Zephyr API Documentation 4.0.99
A Scalable Open Source RTOS
|
Macros | |
#define | DT_DMAS_CTLR_BY_IDX(node_id, idx) |
Get the node identifier for the DMA controller from a dmas property at an index. | |
#define | DT_DMAS_CTLR_BY_NAME(node_id, name) |
Get the node identifier for the DMA controller from a dmas property by name. | |
#define | DT_DMAS_CTLR(node_id) |
Equivalent to DT_DMAS_CTLR_BY_IDX(node_id, 0) | |
#define | DT_INST_DMAS_CTLR_BY_IDX(inst, idx) |
Get the node identifier for the DMA controller from a DT_DRV_COMPAT instance's dmas property at an index. | |
#define | DT_INST_DMAS_CTLR_BY_NAME(inst, name) |
Get the node identifier for the DMA controller from a DT_DRV_COMPAT instance's dmas property by name. | |
#define | DT_INST_DMAS_CTLR(inst) |
Equivalent to DT_INST_DMAS_CTLR_BY_IDX(inst, 0) | |
#define | DT_DMAS_CELL_BY_IDX(node_id, idx, cell) |
Get a DMA specifier's cell value at an index. | |
#define | DT_INST_DMAS_CELL_BY_IDX(inst, idx, cell) |
Get a DT_DRV_COMPAT instance's DMA specifier's cell value at an index. | |
#define | DT_DMAS_CELL_BY_NAME(node_id, name, cell) |
Get a DMA specifier's cell value by name. | |
#define | DT_DMAS_CELL_BY_NAME_OR(node_id, name, cell, default_value) |
Like DT_DMAS_CELL_BY_NAME(), but with a fallback to default_value . | |
#define | DT_INST_DMAS_CELL_BY_NAME(inst, name, cell) |
Get a DT_DRV_COMPAT instance's DMA specifier's cell value by name. | |
#define | DT_DMAS_HAS_IDX(node_id, idx) |
Is index "idx" valid for a dmas property? | |
#define | DT_INST_DMAS_HAS_IDX(inst, idx) |
Is index "idx" valid for a DT_DRV_COMPAT instance's dmas property? | |
#define | DT_DMAS_HAS_NAME(node_id, name) |
Does a dmas property have a named element? | |
#define | DT_INST_DMAS_HAS_NAME(inst, name) |
Does a DT_DRV_COMPAT instance's dmas property have a named element? | |
#define DT_DMAS_CELL_BY_IDX | ( | node_id, | |
idx, | |||
cell ) |
#include <zephyr/devicetree/dma.h>
Get a DMA specifier's cell value at an index.
Example devicetree fragment:
dma1: dma@... { compatible = "vnd,dma"; #dma-cells = <2>; }; dma2: dma@... { compatible = "vnd,dma"; #dma-cells = <2>; }; n: node { dmas = <&dma1 1 0x400>, <&dma2 6 0x404>; };
Bindings fragment for the vnd,dma compatible:
dma-cells: - channel - config
Example usage:
DT_DMAS_CELL_BY_IDX(DT_NODELABEL(n), 0, channel) // 1 DT_DMAS_CELL_BY_IDX(DT_NODELABEL(n), 1, channel) // 6 DT_DMAS_CELL_BY_IDX(DT_NODELABEL(n), 0, config) // 0x400 DT_DMAS_CELL_BY_IDX(DT_NODELABEL(n), 1, config) // 0x404
node_id | node identifier for a node with a dmas property |
idx | logical index into dmas property |
cell | lowercase-and-underscores cell name |
#define DT_DMAS_CELL_BY_NAME | ( | node_id, | |
name, | |||
cell ) |
#include <zephyr/devicetree/dma.h>
Get a DMA specifier's cell value by name.
Example devicetree fragment:
dma1: dma@... { compatible = "vnd,dma"; #dma-cells = <2>; }; dma2: dma@... { compatible = "vnd,dma"; #dma-cells = <2>; }; n: node { dmas = <&dma1 1 0x400>, <&dma2 6 0x404>; dma-names = "tx", "rx"; };
Bindings fragment for the vnd,dma compatible:
dma-cells: - channel - config
Example usage:
DT_DMAS_CELL_BY_NAME(DT_NODELABEL(n), tx, channel) // 1 DT_DMAS_CELL_BY_NAME(DT_NODELABEL(n), rx, channel) // 6 DT_DMAS_CELL_BY_NAME(DT_NODELABEL(n), tx, config) // 0x400 DT_DMAS_CELL_BY_NAME(DT_NODELABEL(n), rx, config) // 0x404
node_id | node identifier for a node with a dmas property |
name | lowercase-and-underscores name of a dmas element as defined by the node's dma-names property |
cell | lowercase-and-underscores cell name |
#define DT_DMAS_CELL_BY_NAME_OR | ( | node_id, | |
name, | |||
cell, | |||
default_value ) |
#include <zephyr/devicetree/dma.h>
Like DT_DMAS_CELL_BY_NAME(), but with a fallback to default_value
.
If the value exists, this expands to DT_DMAS_CELL_BY_NAME(node_id,
name, cell). The default_value
parameter is not expanded in this case.
Otherwise, this expands to default_value
.
node_id | node identifier for a node with a dmas property |
name | lowercase-and-underscores name of a dmas element as defined by the node's dma-names property |
cell | lowercase-and-underscores cell name |
default_value | a fallback value to expand to |
default_value
#define DT_DMAS_CTLR | ( | node_id | ) |
#include <zephyr/devicetree/dma.h>
Equivalent to DT_DMAS_CTLR_BY_IDX(node_id, 0)
node_id | node identifier for a node with a dmas property |
#define DT_DMAS_CTLR_BY_IDX | ( | node_id, | |
idx ) |
#include <zephyr/devicetree/dma.h>
Get the node identifier for the DMA controller from a dmas property at an index.
Example devicetree fragment:
dma1: dma@... { ... }; dma2: dma@... { ... }; n: node { dmas = <&dma1 1 2 0x400 0x3>, <&dma2 6 3 0x404 0x5>; };
Example usage:
DT_DMAS_CTLR_BY_IDX(DT_NODELABEL(n), 0) // DT_NODELABEL(dma1) DT_DMAS_CTLR_BY_IDX(DT_NODELABEL(n), 1) // DT_NODELABEL(dma2)
node_id | node identifier for a node with a dmas property |
idx | logical index into dmas property |
#define DT_DMAS_CTLR_BY_NAME | ( | node_id, | |
name ) |
#include <zephyr/devicetree/dma.h>
Get the node identifier for the DMA controller from a dmas property by name.
Example devicetree fragment:
dma1: dma@... { ... }; dma2: dma@... { ... }; n: node { dmas = <&dma1 1 2 0x400 0x3>, <&dma2 6 3 0x404 0x5>; dma-names = "tx", "rx"; };
Example usage:
DT_DMAS_CTLR_BY_NAME(DT_NODELABEL(n), tx) // DT_NODELABEL(dma1) DT_DMAS_CTLR_BY_NAME(DT_NODELABEL(n), rx) // DT_NODELABEL(dma2)
node_id | node identifier for a node with a dmas property |
name | lowercase-and-underscores name of a dmas element as defined by the node's dma-names property |
#define DT_DMAS_HAS_IDX | ( | node_id, | |
idx ) |
#include <zephyr/devicetree/dma.h>
Is index "idx" valid for a dmas property?
node_id | node identifier for a node with a dmas property |
idx | logical index into dmas property |
#define DT_DMAS_HAS_NAME | ( | node_id, | |
name ) |
#include <zephyr/devicetree/dma.h>
Does a dmas property have a named element?
node_id | node identifier for a node with a dmas property |
name | lowercase-and-underscores name of a dmas element as defined by the node's dma-names property |
#define DT_INST_DMAS_CELL_BY_IDX | ( | inst, | |
idx, | |||
cell ) |
#include <zephyr/devicetree/dma.h>
Get a DT_DRV_COMPAT instance's DMA specifier's cell value at an index.
inst | DT_DRV_COMPAT instance number |
idx | logical index into dmas property |
cell | lowercase-and-underscores cell name |
#define DT_INST_DMAS_CELL_BY_NAME | ( | inst, | |
name, | |||
cell ) |
#include <zephyr/devicetree/dma.h>
Get a DT_DRV_COMPAT instance's DMA specifier's cell value by name.
inst | DT_DRV_COMPAT instance number |
name | lowercase-and-underscores name of a dmas element as defined by the node's dma-names property |
cell | lowercase-and-underscores cell name |
#define DT_INST_DMAS_CTLR | ( | inst | ) |
#include <zephyr/devicetree/dma.h>
Equivalent to DT_INST_DMAS_CTLR_BY_IDX(inst, 0)
inst | DT_DRV_COMPAT instance number |
#define DT_INST_DMAS_CTLR_BY_IDX | ( | inst, | |
idx ) |
#include <zephyr/devicetree/dma.h>
Get the node identifier for the DMA controller from a DT_DRV_COMPAT instance's dmas property at an index.
inst | DT_DRV_COMPAT instance number |
idx | logical index into dmas property |
#define DT_INST_DMAS_CTLR_BY_NAME | ( | inst, | |
name ) |
#include <zephyr/devicetree/dma.h>
Get the node identifier for the DMA controller from a DT_DRV_COMPAT instance's dmas property by name.
inst | DT_DRV_COMPAT instance number |
name | lowercase-and-underscores name of a dmas element as defined by the node's dma-names property |
#define DT_INST_DMAS_HAS_IDX | ( | inst, | |
idx ) |
#include <zephyr/devicetree/dma.h>
Is index "idx" valid for a DT_DRV_COMPAT instance's dmas property?
inst | DT_DRV_COMPAT instance number |
idx | logical index into dmas property |
#define DT_INST_DMAS_HAS_NAME | ( | inst, | |
name ) |
#include <zephyr/devicetree/dma.h>
Does a DT_DRV_COMPAT instance's dmas property have a named element?
inst | DT_DRV_COMPAT instance number |
name | lowercase-and-underscores name of a dmas element as defined by the node's dma-names property |