Zephyr API Documentation
3.7.0
A Scalable Open Source RTOS
|
Macros | |
#define | DT_PWMS_CTLR_BY_IDX(node_id, idx) DT_PHANDLE_BY_IDX(node_id, pwms, idx) |
Get the node identifier for the PWM controller from a pwms property at an index. | |
#define | DT_PWMS_CTLR_BY_NAME(node_id, name) DT_PHANDLE_BY_NAME(node_id, pwms, name) |
Get the node identifier for the PWM controller from a pwms property by name. | |
#define | DT_PWMS_CTLR(node_id) DT_PWMS_CTLR_BY_IDX(node_id, 0) |
Equivalent to DT_PWMS_CTLR_BY_IDX(node_id, 0) | |
#define | DT_PWMS_CELL_BY_IDX(node_id, idx, cell) DT_PHA_BY_IDX(node_id, pwms, idx, cell) |
Get PWM specifier's cell value at an index. | |
#define | DT_PWMS_CELL_BY_NAME(node_id, name, cell) DT_PHA_BY_NAME(node_id, pwms, name, cell) |
Get a PWM specifier's cell value by name. | |
#define | DT_PWMS_CELL(node_id, cell) DT_PWMS_CELL_BY_IDX(node_id, 0, cell) |
Equivalent to DT_PWMS_CELL_BY_IDX(node_id, 0, cell) | |
#define | DT_PWMS_CHANNEL_BY_IDX(node_id, idx) DT_PWMS_CELL_BY_IDX(node_id, idx, channel) |
Get a PWM specifier's channel cell value at an index. | |
#define | DT_PWMS_CHANNEL_BY_NAME(node_id, name) DT_PWMS_CELL_BY_NAME(node_id, name, channel) |
Get a PWM specifier's channel cell value by name. | |
#define | DT_PWMS_CHANNEL(node_id) DT_PWMS_CHANNEL_BY_IDX(node_id, 0) |
Equivalent to DT_PWMS_CHANNEL_BY_IDX(node_id, 0) | |
#define | DT_PWMS_PERIOD_BY_IDX(node_id, idx) DT_PWMS_CELL_BY_IDX(node_id, idx, period) |
Get PWM specifier's period cell value at an index. | |
#define | DT_PWMS_PERIOD_BY_NAME(node_id, name) DT_PWMS_CELL_BY_NAME(node_id, name, period) |
Get a PWM specifier's period cell value by name. | |
#define | DT_PWMS_PERIOD(node_id) DT_PWMS_PERIOD_BY_IDX(node_id, 0) |
Equivalent to DT_PWMS_PERIOD_BY_IDX(node_id, 0) | |
#define | DT_PWMS_FLAGS_BY_IDX(node_id, idx) DT_PHA_BY_IDX_OR(node_id, pwms, idx, flags, 0) |
Get a PWM specifier's flags cell value at an index. | |
#define | DT_PWMS_FLAGS_BY_NAME(node_id, name) DT_PHA_BY_NAME_OR(node_id, pwms, name, flags, 0) |
Get a PWM specifier's flags cell value by name. | |
#define | DT_PWMS_FLAGS(node_id) DT_PWMS_FLAGS_BY_IDX(node_id, 0) |
Equivalent to DT_PWMS_FLAGS_BY_IDX(node_id, 0) | |
#define | DT_INST_PWMS_CTLR_BY_IDX(inst, idx) DT_PWMS_CTLR_BY_IDX(DT_DRV_INST(inst), idx) |
Get the node identifier for the PWM controller from a DT_DRV_COMPAT instance's pwms property at an index. | |
#define | DT_INST_PWMS_CTLR_BY_NAME(inst, name) DT_PWMS_CTLR_BY_NAME(DT_DRV_INST(inst), name) |
Get the node identifier for the PWM controller from a DT_DRV_COMPAT instance's pwms property by name. | |
#define | DT_INST_PWMS_CTLR(inst) DT_INST_PWMS_CTLR_BY_IDX(inst, 0) |
Equivalent to DT_INST_PWMS_CTLR_BY_IDX(inst, 0) | |
#define | DT_INST_PWMS_CELL_BY_IDX(inst, idx, cell) DT_PWMS_CELL_BY_IDX(DT_DRV_INST(inst), idx, cell) |
Get a DT_DRV_COMPAT instance's PWM specifier's cell value at an index. | |
#define | DT_INST_PWMS_CELL_BY_NAME(inst, name, cell) DT_PWMS_CELL_BY_NAME(DT_DRV_INST(inst), name, cell) |
Get a DT_DRV_COMPAT instance's PWM specifier's cell value by name. | |
#define | DT_INST_PWMS_CELL(inst, cell) DT_INST_PWMS_CELL_BY_IDX(inst, 0, cell) |
Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, 0, cell) | |
#define | DT_INST_PWMS_CHANNEL_BY_IDX(inst, idx) DT_INST_PWMS_CELL_BY_IDX(inst, idx, channel) |
Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, idx, channel) | |
#define | DT_INST_PWMS_CHANNEL_BY_NAME(inst, name) DT_INST_PWMS_CELL_BY_NAME(inst, name, channel) |
Equivalent to DT_INST_PWMS_CELL_BY_NAME(inst, name, channel) | |
#define | DT_INST_PWMS_CHANNEL(inst) DT_INST_PWMS_CHANNEL_BY_IDX(inst, 0) |
Equivalent to DT_INST_PWMS_CHANNEL_BY_IDX(inst, 0) | |
#define | DT_INST_PWMS_PERIOD_BY_IDX(inst, idx) DT_INST_PWMS_CELL_BY_IDX(inst, idx, period) |
Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, idx, period) | |
#define | DT_INST_PWMS_PERIOD_BY_NAME(inst, name) DT_INST_PWMS_CELL_BY_NAME(inst, name, period) |
Equivalent to DT_INST_PWMS_CELL_BY_NAME(inst, name, period) | |
#define | DT_INST_PWMS_PERIOD(inst) DT_INST_PWMS_PERIOD_BY_IDX(inst, 0) |
Equivalent to DT_INST_PWMS_PERIOD_BY_IDX(inst, 0) | |
#define | DT_INST_PWMS_FLAGS_BY_IDX(inst, idx) DT_INST_PWMS_CELL_BY_IDX(inst, idx, flags) |
Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, idx, flags) | |
#define | DT_INST_PWMS_FLAGS_BY_NAME(inst, name) DT_INST_PWMS_CELL_BY_NAME(inst, name, flags) |
Equivalent to DT_INST_PWMS_CELL_BY_NAME(inst, name, flags) | |
#define | DT_INST_PWMS_FLAGS(inst) DT_INST_PWMS_FLAGS_BY_IDX(inst, 0) |
Equivalent to DT_INST_PWMS_FLAGS_BY_IDX(inst, 0) | |
#define DT_INST_PWMS_CELL | ( | inst, | |
cell | |||
) | DT_INST_PWMS_CELL_BY_IDX(inst, 0, cell) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, 0, cell)
inst | DT_DRV_COMPAT instance number |
cell | lowercase-and-underscores cell name |
#define DT_INST_PWMS_CELL_BY_IDX | ( | inst, | |
idx, | |||
cell | |||
) | DT_PWMS_CELL_BY_IDX(DT_DRV_INST(inst), idx, cell) |
#include <zephyr/devicetree/pwms.h>
Get a DT_DRV_COMPAT instance's PWM specifier's cell value at an index.
inst | DT_DRV_COMPAT instance number |
idx | logical index into pwms property |
cell | lowercase-and-underscores cell name |
#define DT_INST_PWMS_CELL_BY_NAME | ( | inst, | |
name, | |||
cell | |||
) | DT_PWMS_CELL_BY_NAME(DT_DRV_INST(inst), name, cell) |
#include <zephyr/devicetree/pwms.h>
Get a DT_DRV_COMPAT instance's PWM specifier's cell value by name.
inst | DT_DRV_COMPAT instance number |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |
cell | lowercase-and-underscores cell name |
#define DT_INST_PWMS_CHANNEL | ( | inst | ) | DT_INST_PWMS_CHANNEL_BY_IDX(inst, 0) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_CHANNEL_BY_IDX(inst, 0)
inst | DT_DRV_COMPAT instance number |
#define DT_INST_PWMS_CHANNEL_BY_IDX | ( | inst, | |
idx | |||
) | DT_INST_PWMS_CELL_BY_IDX(inst, idx, channel) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, idx, channel)
inst | DT_DRV_COMPAT instance number |
idx | logical index into pwms property |
#define DT_INST_PWMS_CHANNEL_BY_NAME | ( | inst, | |
name | |||
) | DT_INST_PWMS_CELL_BY_NAME(inst, name, channel) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_CELL_BY_NAME(inst, name, channel)
inst | DT_DRV_COMPAT instance number |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |
#define DT_INST_PWMS_CTLR | ( | inst | ) | DT_INST_PWMS_CTLR_BY_IDX(inst, 0) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_CTLR_BY_IDX(inst, 0)
inst | DT_DRV_COMPAT instance number |
#define DT_INST_PWMS_CTLR_BY_IDX | ( | inst, | |
idx | |||
) | DT_PWMS_CTLR_BY_IDX(DT_DRV_INST(inst), idx) |
#include <zephyr/devicetree/pwms.h>
Get the node identifier for the PWM controller from a DT_DRV_COMPAT instance's pwms property at an index.
inst | DT_DRV_COMPAT instance number |
idx | logical index into pwms property |
#define DT_INST_PWMS_CTLR_BY_NAME | ( | inst, | |
name | |||
) | DT_PWMS_CTLR_BY_NAME(DT_DRV_INST(inst), name) |
#include <zephyr/devicetree/pwms.h>
Get the node identifier for the PWM controller from a DT_DRV_COMPAT instance's pwms property by name.
inst | DT_DRV_COMPAT instance number |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |
#define DT_INST_PWMS_FLAGS | ( | inst | ) | DT_INST_PWMS_FLAGS_BY_IDX(inst, 0) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_FLAGS_BY_IDX(inst, 0)
inst | DT_DRV_COMPAT instance number |
#define DT_INST_PWMS_FLAGS_BY_IDX | ( | inst, | |
idx | |||
) | DT_INST_PWMS_CELL_BY_IDX(inst, idx, flags) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, idx, flags)
inst | DT_DRV_COMPAT instance number |
idx | logical index into pwms property |
#define DT_INST_PWMS_FLAGS_BY_NAME | ( | inst, | |
name | |||
) | DT_INST_PWMS_CELL_BY_NAME(inst, name, flags) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_CELL_BY_NAME(inst, name, flags)
inst | DT_DRV_COMPAT instance number |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |
#define DT_INST_PWMS_PERIOD | ( | inst | ) | DT_INST_PWMS_PERIOD_BY_IDX(inst, 0) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_PERIOD_BY_IDX(inst, 0)
inst | DT_DRV_COMPAT instance number |
#define DT_INST_PWMS_PERIOD_BY_IDX | ( | inst, | |
idx | |||
) | DT_INST_PWMS_CELL_BY_IDX(inst, idx, period) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, idx, period)
inst | DT_DRV_COMPAT instance number |
idx | logical index into pwms property |
#define DT_INST_PWMS_PERIOD_BY_NAME | ( | inst, | |
name | |||
) | DT_INST_PWMS_CELL_BY_NAME(inst, name, period) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_INST_PWMS_CELL_BY_NAME(inst, name, period)
inst | DT_DRV_COMPAT instance number |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |
#define DT_PWMS_CELL | ( | node_id, | |
cell | |||
) | DT_PWMS_CELL_BY_IDX(node_id, 0, cell) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_PWMS_CELL_BY_IDX(node_id, 0, cell)
node_id | node identifier for a node with a pwms property |
cell | lowercase-and-underscores cell name |
#define DT_PWMS_CELL_BY_IDX | ( | node_id, | |
idx, | |||
cell | |||
) | DT_PHA_BY_IDX(node_id, pwms, idx, cell) |
#include <zephyr/devicetree/pwms.h>
Get PWM specifier's cell value at an index.
Example devicetree fragment:
pwm1: pwm-controller@... { compatible = "vnd,pwm"; #pwm-cells = <2>; }; pwm2: pwm-controller@... { compatible = "vnd,pwm"; #pwm-cells = <2>; }; n: node { pwms = <&pwm1 1 200000 PWM_POLARITY_NORMAL>, <&pwm2 3 100000 PWM_POLARITY_INVERTED>; };
Bindings fragment for the "vnd,pwm" compatible:
pwm-cells: - channel - period - flags
Example usage:
DT_PWMS_CELL_BY_IDX(DT_NODELABEL(n), 0, channel) // 1 DT_PWMS_CELL_BY_IDX(DT_NODELABEL(n), 1, channel) // 3 DT_PWMS_CELL_BY_IDX(DT_NODELABEL(n), 0, period) // 200000 DT_PWMS_CELL_BY_IDX(DT_NODELABEL(n), 1, period) // 100000 DT_PWMS_CELL_BY_IDX(DT_NODELABEL(n), 0, flags) // PWM_POLARITY_NORMAL DT_PWMS_CELL_BY_IDX(DT_NODELABEL(n), 1, flags) // PWM_POLARITY_INVERTED
node_id | node identifier for a node with a pwms property |
idx | logical index into pwms property |
cell | lowercase-and-underscores cell name |
#define DT_PWMS_CELL_BY_NAME | ( | node_id, | |
name, | |||
cell | |||
) | DT_PHA_BY_NAME(node_id, pwms, name, cell) |
#include <zephyr/devicetree/pwms.h>
Get a PWM specifier's cell value by name.
Example devicetree fragment:
pwm1: pwm-controller@... { compatible = "vnd,pwm"; #pwm-cells = <2>; }; pwm2: pwm-controller@... { compatible = "vnd,pwm"; #pwm-cells = <2>; }; n: node { pwms = <&pwm1 1 200000 PWM_POLARITY_NORMAL>, <&pwm2 3 100000 PWM_POLARITY_INVERTED>; pwm-names = "alpha", "beta"; };
Bindings fragment for the "vnd,pwm" compatible:
pwm-cells: - channel - period - flags
Example usage:
DT_PWMS_CELL_BY_NAME(DT_NODELABEL(n), alpha, channel) // 1 DT_PWMS_CELL_BY_NAME(DT_NODELABEL(n), beta, channel) // 3 DT_PWMS_CELL_BY_NAME(DT_NODELABEL(n), alpha, period) // 200000 DT_PWMS_CELL_BY_NAME(DT_NODELABEL(n), beta, period) // 100000 DT_PWMS_CELL_BY_NAME(DT_NODELABEL(n), alpha, flags) // PWM_POLARITY_NORMAL DT_PWMS_CELL_BY_NAME(DT_NODELABEL(n), beta, flags) // PWM_POLARITY_INVERTED
node_id | node identifier for a node with a pwms property |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |
cell | lowercase-and-underscores cell name |
#define DT_PWMS_CHANNEL | ( | node_id | ) | DT_PWMS_CHANNEL_BY_IDX(node_id, 0) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_PWMS_CHANNEL_BY_IDX(node_id, 0)
node_id | node identifier for a node with a pwms property |
#define DT_PWMS_CHANNEL_BY_IDX | ( | node_id, | |
idx | |||
) | DT_PWMS_CELL_BY_IDX(node_id, idx, channel) |
#include <zephyr/devicetree/pwms.h>
Get a PWM specifier's channel cell value at an index.
This macro only works for PWM specifiers with cells named "channel". Refer to the node's binding to check if necessary.
This is equivalent to DT_PWMS_CELL_BY_IDX(node_id, idx, channel).
node_id | node identifier for a node with a pwms property |
idx | logical index into pwms property |
#define DT_PWMS_CHANNEL_BY_NAME | ( | node_id, | |
name | |||
) | DT_PWMS_CELL_BY_NAME(node_id, name, channel) |
#include <zephyr/devicetree/pwms.h>
Get a PWM specifier's channel cell value by name.
This macro only works for PWM specifiers with cells named "channel". Refer to the node's binding to check if necessary.
This is equivalent to DT_PWMS_CELL_BY_NAME(node_id, name, channel).
node_id | node identifier for a node with a pwms property |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |
#define DT_PWMS_CTLR | ( | node_id | ) | DT_PWMS_CTLR_BY_IDX(node_id, 0) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_PWMS_CTLR_BY_IDX(node_id, 0)
node_id | node identifier for a node with a pwms property |
#define DT_PWMS_CTLR_BY_IDX | ( | node_id, | |
idx | |||
) | DT_PHANDLE_BY_IDX(node_id, pwms, idx) |
#include <zephyr/devicetree/pwms.h>
Get the node identifier for the PWM controller from a pwms property at an index.
Example devicetree fragment:
pwm1: pwm-controller@... { ... }; pwm2: pwm-controller@... { ... }; n: node { pwms = <&pwm1 1 PWM_POLARITY_NORMAL>, <&pwm2 3 PWM_POLARITY_INVERTED>; };
Example usage:
DT_PWMS_CTLR_BY_IDX(DT_NODELABEL(n), 0) // DT_NODELABEL(pwm1) DT_PWMS_CTLR_BY_IDX(DT_NODELABEL(n), 1) // DT_NODELABEL(pwm2)
node_id | node identifier for a node with a pwms property |
idx | logical index into pwms property |
#define DT_PWMS_CTLR_BY_NAME | ( | node_id, | |
name | |||
) | DT_PHANDLE_BY_NAME(node_id, pwms, name) |
#include <zephyr/devicetree/pwms.h>
Get the node identifier for the PWM controller from a pwms property by name.
Example devicetree fragment:
pwm1: pwm-controller@... { ... };
pwm2: pwm-controller... { ... };
n: node { pwms = <&pwm1 1 PWM_POLARITY_NORMAL>, <&pwm2 3 PWM_POLARITY_INVERTED>; pwm-names = "alpha", "beta"; };
Example usage:
DT_PWMS_CTLR_BY_NAME(DT_NODELABEL(n), alpha) // DT_NODELABEL(pwm1) DT_PWMS_CTLR_BY_NAME(DT_NODELABEL(n), beta) // DT_NODELABEL(pwm2)
node_id | node identifier for a node with a pwms property |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |
#define DT_PWMS_FLAGS | ( | node_id | ) | DT_PWMS_FLAGS_BY_IDX(node_id, 0) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_PWMS_FLAGS_BY_IDX(node_id, 0)
node_id | node identifier for a node with a pwms property |
#define DT_PWMS_FLAGS_BY_IDX | ( | node_id, | |
idx | |||
) | DT_PHA_BY_IDX_OR(node_id, pwms, idx, flags, 0) |
#include <zephyr/devicetree/pwms.h>
Get a PWM specifier's flags cell value at an index.
This macro expects PWM specifiers with cells named "flags". If there is no "flags" cell in the PWM specifier, zero is returned. Refer to the node's binding to check specifier cell names if necessary.
This is equivalent to DT_PWMS_CELL_BY_IDX(node_id, idx, flags).
node_id | node identifier for a node with a pwms property |
idx | logical index into pwms property |
#define DT_PWMS_FLAGS_BY_NAME | ( | node_id, | |
name | |||
) | DT_PHA_BY_NAME_OR(node_id, pwms, name, flags, 0) |
#include <zephyr/devicetree/pwms.h>
Get a PWM specifier's flags cell value by name.
This macro expects PWM specifiers with cells named "flags". If there is no "flags" cell in the PWM specifier, zero is returned. Refer to the node's binding to check specifier cell names if necessary.
This is equivalent to DT_PWMS_CELL_BY_NAME(node_id, name, flags) if there is a flags cell, but expands to zero if there is none.
node_id | node identifier for a node with a pwms property |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |
#define DT_PWMS_PERIOD | ( | node_id | ) | DT_PWMS_PERIOD_BY_IDX(node_id, 0) |
#include <zephyr/devicetree/pwms.h>
Equivalent to DT_PWMS_PERIOD_BY_IDX(node_id, 0)
node_id | node identifier for a node with a pwms property |
#define DT_PWMS_PERIOD_BY_IDX | ( | node_id, | |
idx | |||
) | DT_PWMS_CELL_BY_IDX(node_id, idx, period) |
#include <zephyr/devicetree/pwms.h>
Get PWM specifier's period cell value at an index.
This macro only works for PWM specifiers with cells named "period". Refer to the node's binding to check if necessary.
This is equivalent to DT_PWMS_CELL_BY_IDX(node_id, idx, period).
node_id | node identifier for a node with a pwms property |
idx | logical index into pwms property |
#define DT_PWMS_PERIOD_BY_NAME | ( | node_id, | |
name | |||
) | DT_PWMS_CELL_BY_NAME(node_id, name, period) |
#include <zephyr/devicetree/pwms.h>
Get a PWM specifier's period cell value by name.
This macro only works for PWM specifiers with cells named "period". Refer to the node's binding to check if necessary.
This is equivalent to DT_PWMS_CELL_BY_NAME(node_id, name, period).
node_id | node identifier for a node with a pwms property |
name | lowercase-and-underscores name of a pwms element as defined by the node's pwm-names property |