Zephyr Project API 3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
Devicetree PWMs API

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)
 

Detailed Description

Macro Definition Documentation

◆ DT_INST_PWMS_CELL

#define DT_INST_PWMS_CELL (   inst,
  cell 
)     DT_INST_PWMS_CELL_BY_IDX(inst, 0, cell)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, 0, cell)

Parameters
instDT_DRV_COMPAT instance number
celllowercase-and-underscores cell name
Returns
the cell value at index 0

◆ DT_INST_PWMS_CELL_BY_IDX

#define DT_INST_PWMS_CELL_BY_IDX (   inst,
  idx,
  cell 
)     DT_PWMS_CELL_BY_IDX(DT_DRV_INST(inst), idx, cell)

#include <include/zephyr/devicetree/pwms.h>

Get a DT_DRV_COMPAT instance's PWM specifier's cell value at an index.

Parameters
instDT_DRV_COMPAT instance number
idxlogical index into pwms property
celllowercase-and-underscores cell name
Returns
the cell value at index "idx"

◆ DT_INST_PWMS_CELL_BY_NAME

#define DT_INST_PWMS_CELL_BY_NAME (   inst,
  name,
  cell 
)     DT_PWMS_CELL_BY_NAME(DT_DRV_INST(inst), name, cell)

#include <include/zephyr/devicetree/pwms.h>

Get a DT_DRV_COMPAT instance's PWM specifier's cell value by name.

Parameters
instDT_DRV_COMPAT instance number
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
celllowercase-and-underscores cell name
Returns
the cell value in the specifier at the named element
See also
DT_PWMS_CELL_BY_NAME()

◆ DT_INST_PWMS_CHANNEL

#define DT_INST_PWMS_CHANNEL (   inst)    DT_INST_PWMS_CHANNEL_BY_IDX(inst, 0)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_CHANNEL_BY_IDX(inst, 0)

Parameters
instDT_DRV_COMPAT instance number
Returns
the channel cell value at index 0
See also
DT_INST_PWMS_CHANNEL_BY_IDX()

◆ DT_INST_PWMS_CHANNEL_BY_IDX

#define DT_INST_PWMS_CHANNEL_BY_IDX (   inst,
  idx 
)     DT_INST_PWMS_CELL_BY_IDX(inst, idx, channel)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, idx, channel)

Parameters
instDT_DRV_COMPAT instance number
idxlogical index into pwms property
Returns
the channel cell value at index "idx"
See also
DT_INST_PWMS_CELL_BY_IDX()

◆ DT_INST_PWMS_CHANNEL_BY_NAME

#define DT_INST_PWMS_CHANNEL_BY_NAME (   inst,
  name 
)     DT_INST_PWMS_CELL_BY_NAME(inst, name, channel)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_CELL_BY_NAME(inst, name, channel)

Parameters
instDT_DRV_COMPAT instance number
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
Returns
the channel cell value in the specifier at the named element
See also
DT_INST_PWMS_CELL_BY_NAME()

◆ DT_INST_PWMS_CTLR

#define DT_INST_PWMS_CTLR (   inst)    DT_INST_PWMS_CTLR_BY_IDX(inst, 0)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_CTLR_BY_IDX(inst, 0)

Parameters
instDT_DRV_COMPAT instance number
Returns
the node identifier for the PWM controller at index 0 in the instance's "pwms" property
See also
DT_PWMS_CTLR_BY_IDX()

◆ DT_INST_PWMS_CTLR_BY_IDX

#define DT_INST_PWMS_CTLR_BY_IDX (   inst,
  idx 
)     DT_PWMS_CTLR_BY_IDX(DT_DRV_INST(inst), idx)

#include <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.

Parameters
instDT_DRV_COMPAT instance number
idxlogical index into pwms property
Returns
the node identifier for the PWM controller referenced at index "idx"
See also
DT_PWMS_CTLR_BY_IDX()

◆ DT_INST_PWMS_CTLR_BY_NAME

#define DT_INST_PWMS_CTLR_BY_NAME (   inst,
  name 
)     DT_PWMS_CTLR_BY_NAME(DT_DRV_INST(inst), name)

#include <include/zephyr/devicetree/pwms.h>

Get the node identifier for the PWM controller from a DT_DRV_COMPAT instance's pwms property by name.

Parameters
instDT_DRV_COMPAT instance number
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
Returns
the node identifier for the PWM controller in the named element
See also
DT_PWMS_CTLR_BY_NAME()

◆ DT_INST_PWMS_FLAGS

#define DT_INST_PWMS_FLAGS (   inst)    DT_INST_PWMS_FLAGS_BY_IDX(inst, 0)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_FLAGS_BY_IDX(inst, 0)

Parameters
instDT_DRV_COMPAT instance number
Returns
the flags cell value at index 0, or zero if there is none
See also
DT_INST_PWMS_FLAGS_BY_IDX()

◆ DT_INST_PWMS_FLAGS_BY_IDX

#define DT_INST_PWMS_FLAGS_BY_IDX (   inst,
  idx 
)     DT_INST_PWMS_CELL_BY_IDX(inst, idx, flags)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, idx, flags)

Parameters
instDT_DRV_COMPAT instance number
idxlogical index into pwms property
Returns
the flags cell value at index "idx", or zero if there is none
See also
DT_INST_PWMS_CELL_BY_IDX()

◆ DT_INST_PWMS_FLAGS_BY_NAME

#define DT_INST_PWMS_FLAGS_BY_NAME (   inst,
  name 
)     DT_INST_PWMS_CELL_BY_NAME(inst, name, flags)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_CELL_BY_NAME(inst, name, flags)

Parameters
instDT_DRV_COMPAT instance number
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
Returns
the flags cell value in the specifier at the named element, or zero if there is none
See also
DT_INST_PWMS_CELL_BY_NAME()

◆ DT_INST_PWMS_PERIOD

#define DT_INST_PWMS_PERIOD (   inst)    DT_INST_PWMS_PERIOD_BY_IDX(inst, 0)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_PERIOD_BY_IDX(inst, 0)

Parameters
instDT_DRV_COMPAT instance number
Returns
the period cell value at index 0
See also
DT_INST_PWMS_PERIOD_BY_IDX()

◆ DT_INST_PWMS_PERIOD_BY_IDX

#define DT_INST_PWMS_PERIOD_BY_IDX (   inst,
  idx 
)     DT_INST_PWMS_CELL_BY_IDX(inst, idx, period)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_CELL_BY_IDX(inst, idx, period)

Parameters
instDT_DRV_COMPAT instance number
idxlogical index into pwms property
Returns
the period cell value at index "idx"
See also
DT_INST_PWMS_CELL_BY_IDX()

◆ DT_INST_PWMS_PERIOD_BY_NAME

#define DT_INST_PWMS_PERIOD_BY_NAME (   inst,
  name 
)     DT_INST_PWMS_CELL_BY_NAME(inst, name, period)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_INST_PWMS_CELL_BY_NAME(inst, name, period)

Parameters
instDT_DRV_COMPAT instance number
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
Returns
the period cell value in the specifier at the named element
See also
DT_INST_PWMS_CELL_BY_NAME()

◆ DT_PWMS_CELL

#define DT_PWMS_CELL (   node_id,
  cell 
)    DT_PWMS_CELL_BY_IDX(node_id, 0, cell)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_PWMS_CELL_BY_IDX(node_id, 0, cell)

Parameters
node_idnode identifier for a node with a pwms property
celllowercase-and-underscores cell name
Returns
the cell value at index 0
See also
DT_PWMS_CELL_BY_IDX()

◆ DT_PWMS_CELL_BY_IDX

#define DT_PWMS_CELL_BY_IDX (   node_id,
  idx,
  cell 
)     DT_PHA_BY_IDX(node_id, pwms, idx, cell)

#include <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
Parameters
node_idnode identifier for a node with a pwms property
idxlogical index into pwms property
celllowercase-and-underscores cell name
Returns
the cell value at index "idx"
See also
DT_PHA_BY_IDX()

◆ DT_PWMS_CELL_BY_NAME

#define DT_PWMS_CELL_BY_NAME (   node_id,
  name,
  cell 
)     DT_PHA_BY_NAME(node_id, pwms, name, cell)

#include <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
Parameters
node_idnode identifier for a node with a pwms property
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
celllowercase-and-underscores cell name
Returns
the cell value in the specifier at the named element
See also
DT_PHA_BY_NAME()

◆ DT_PWMS_CHANNEL

#define DT_PWMS_CHANNEL (   node_id)    DT_PWMS_CHANNEL_BY_IDX(node_id, 0)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_PWMS_CHANNEL_BY_IDX(node_id, 0)

Parameters
node_idnode identifier for a node with a pwms property
Returns
the channel cell value at index 0
See also
DT_PWMS_CHANNEL_BY_IDX()

◆ DT_PWMS_CHANNEL_BY_IDX

#define DT_PWMS_CHANNEL_BY_IDX (   node_id,
  idx 
)     DT_PWMS_CELL_BY_IDX(node_id, idx, channel)

#include <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).

Parameters
node_idnode identifier for a node with a pwms property
idxlogical index into pwms property
Returns
the channel cell value at index "idx"
See also
DT_PWMS_CELL_BY_IDX()

◆ DT_PWMS_CHANNEL_BY_NAME

#define DT_PWMS_CHANNEL_BY_NAME (   node_id,
  name 
)     DT_PWMS_CELL_BY_NAME(node_id, name, channel)

#include <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).

Parameters
node_idnode identifier for a node with a pwms property
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
Returns
the channel cell value in the specifier at the named element
See also
DT_PWMS_CELL_BY_NAME()

◆ DT_PWMS_CTLR

#define DT_PWMS_CTLR (   node_id)    DT_PWMS_CTLR_BY_IDX(node_id, 0)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_PWMS_CTLR_BY_IDX(node_id, 0)

Parameters
node_idnode identifier for a node with a pwms property
Returns
the node identifier for the PWM controller at index 0 in the node's "pwms" property
See also
DT_PWMS_CTLR_BY_IDX()

◆ DT_PWMS_CTLR_BY_IDX

#define DT_PWMS_CTLR_BY_IDX (   node_id,
  idx 
)     DT_PHANDLE_BY_IDX(node_id, pwms, idx)

#include <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)
Parameters
node_idnode identifier for a node with a pwms property
idxlogical index into pwms property
Returns
the node identifier for the PWM controller referenced at index "idx"
See also
DT_PROP_BY_PHANDLE_IDX()

◆ DT_PWMS_CTLR_BY_NAME

#define DT_PWMS_CTLR_BY_NAME (   node_id,
  name 
)     DT_PHANDLE_BY_NAME(node_id, pwms, name)

#include <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)
Parameters
node_idnode identifier for a node with a pwms property
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
Returns
the node identifier for the PWM controller in the named element
See also
DT_PHANDLE_BY_NAME()

◆ DT_PWMS_FLAGS

#define DT_PWMS_FLAGS (   node_id)    DT_PWMS_FLAGS_BY_IDX(node_id, 0)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_PWMS_FLAGS_BY_IDX(node_id, 0)

Parameters
node_idnode identifier for a node with a pwms property
Returns
the flags cell value at index 0, or zero if there is none
See also
DT_PWMS_FLAGS_BY_IDX()

◆ DT_PWMS_FLAGS_BY_IDX

#define DT_PWMS_FLAGS_BY_IDX (   node_id,
  idx 
)     DT_PHA_BY_IDX_OR(node_id, pwms, idx, flags, 0)

#include <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).

Parameters
node_idnode identifier for a node with a pwms property
idxlogical index into pwms property
Returns
the flags cell value at index "idx", or zero if there is none
See also
DT_PWMS_CELL_BY_IDX()

◆ DT_PWMS_FLAGS_BY_NAME

#define DT_PWMS_FLAGS_BY_NAME (   node_id,
  name 
)     DT_PHA_BY_NAME_OR(node_id, pwms, name, flags, 0)

#include <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.

Parameters
node_idnode identifier for a node with a pwms property
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
Returns
the flags cell value in the specifier at the named element, or zero if there is none
See also
DT_PWMS_CELL_BY_NAME()

◆ DT_PWMS_PERIOD

#define DT_PWMS_PERIOD (   node_id)    DT_PWMS_PERIOD_BY_IDX(node_id, 0)

#include <include/zephyr/devicetree/pwms.h>

Equivalent to DT_PWMS_PERIOD_BY_IDX(node_id, 0)

Parameters
node_idnode identifier for a node with a pwms property
Returns
the period cell value at index 0
See also
DT_PWMS_PERIOD_BY_IDX()

◆ DT_PWMS_PERIOD_BY_IDX

#define DT_PWMS_PERIOD_BY_IDX (   node_id,
  idx 
)     DT_PWMS_CELL_BY_IDX(node_id, idx, period)

#include <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).

Parameters
node_idnode identifier for a node with a pwms property
idxlogical index into pwms property
Returns
the period cell value at index "idx"
See also
DT_PWMS_CELL_BY_IDX()

◆ DT_PWMS_PERIOD_BY_NAME

#define DT_PWMS_PERIOD_BY_NAME (   node_id,
  name 
)     DT_PWMS_CELL_BY_NAME(node_id, name, period)

#include <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).

Parameters
node_idnode identifier for a node with a pwms property
namelowercase-and-underscores name of a pwms element as defined by the node's pwm-names property
Returns
the period cell value in the specifier at the named element
See also
DT_PWMS_CELL_BY_NAME()