:orphan: .. raw:: html .. dtcompatible:: nordic,nrf-pdm .. _dtbinding_nordic_nrf_pdm: nordic,nrf-pdm ############## Vendor: :ref:`Nordic Semiconductor ` Description *********** .. code-block:: none Nordic PDM (Pulse Density Modulation interface) Properties ********** .. tabs:: .. group-tab:: Node specific properties Properties not inherited from the base binding file. .. list-table:: :widths: 1 1 4 :header-rows: 1 * - Name - Type - Details * - ``clock-source`` - ``string`` - .. code-block:: none Clock source to be used by the PDM peripheral. The following options are available: - "PCLK32M": 32 MHz peripheral clock, synchronous to HFCLK - "PCLK32M_HFXO": PCLK32M running off the 32 MHz crystal oscillator (HFXO) for better clock accuracy and jitter performance - "ACLK": Audio PLL clock with configurable frequency (frequency for this clock must be set via the "hfclkaudio-frequency" property in the "nordic,nrf-clock" node); this clock source is only available in the nRF53 Series SoCs and it requires the use of HFXO Default value: ``PCLK32M_HFXO`` Legal values: ``'PCLK32M'``, ``'PCLK32M_HFXO'``, ``'ACLK'`` * - ``queue-size`` - ``int`` - .. code-block:: none Size of the queue of received audio data blocks to be used by the driver. Default value: ``4`` * - ``pinctrl-0`` - ``phandles`` - .. code-block:: none Pin configuration/s for the first state. Content is specific to the selected pin controller driver implementation. * - ``pinctrl-1`` - ``phandles`` - .. code-block:: none Pin configuration/s for the second state. See pinctrl-0. * - ``pinctrl-2`` - ``phandles`` - .. code-block:: none Pin configuration/s for the third state. See pinctrl-0. * - ``pinctrl-3`` - ``phandles`` - .. code-block:: none Pin configuration/s for the fourth state. See pinctrl-0. * - ``pinctrl-4`` - ``phandles`` - .. code-block:: none Pin configuration/s for the fifth state. See pinctrl-0. * - ``pinctrl-names`` - ``string-array`` - .. code-block:: none Names for the provided states. The number of names needs to match the number of states. .. group-tab:: Deprecated node specific properties Deprecated properties not inherited from the base binding file. .. list-table:: :widths: 1 1 4 :header-rows: 1 * - Name - Type - Details * - ``clk-pin`` - ``int`` - .. code-block:: none IMPORTANT: This option will only be used if the new pin control driver is not enabled. The CLK pin to use. For pins P0.0 through P0.31, use the pin number. For example, to use P0.16 for CLK, set: clk-pin = <16>; For pins P1.0 through P1.31, add 32 to the pin number. For example, to use P1.2 for CLK, set: clk-pin = <34>; /* 32 + 2 */ * - ``din-pin`` - ``int`` - .. code-block:: none IMPORTANT: This option will only be used if the new pin control driver is not enabled. The DIN pin to use. The pin numbering scheme is the same as the clk-pin property's. .. group-tab:: Base properties Properties inherited from the base binding file, which defines common properties that may be set on many nodes. Not all of these may apply to the "nordic,nrf-pdm" compatible. .. list-table:: :widths: 1 1 4 :header-rows: 1 * - Name - Type - Details * - ``reg`` - ``array`` - .. code-block:: none register space This property is **required**. See :ref:`dt-important-props` for more information. * - ``interrupts`` - ``array`` - .. code-block:: none interrupts for device This property is **required**. See :ref:`dt-important-props` for more information. * - ``status`` - ``string`` - .. code-block:: none indicates the operational status of a device Legal values: ``'ok'``, ``'okay'``, ``'disabled'``, ``'reserved'``, ``'fail'``, ``'fail-sss'`` See :ref:`dt-important-props` for more information. * - ``compatible`` - ``string-array`` - .. code-block:: none compatible strings This property is **required**. See :ref:`dt-important-props` for more information. * - ``reg-names`` - ``string-array`` - .. code-block:: none name of each register space * - ``interrupts-extended`` - ``compound`` - .. code-block:: none extended interrupt specifier for device * - ``interrupt-names`` - ``string-array`` - .. code-block:: none name of each interrupt * - ``interrupt-parent`` - ``phandle`` - .. code-block:: none phandle to interrupt controller node * - ``label`` - ``string`` - .. code-block:: none Human readable string describing the device (used as device_get_binding() argument) See :ref:`dt-important-props` for more information. * - ``clocks`` - ``phandle-array`` - .. code-block:: none Clock gate information * - ``clock-names`` - ``string-array`` - .. code-block:: none name of each clock * - ``#address-cells`` - ``int`` - .. code-block:: none number of address cells in reg property * - ``#size-cells`` - ``int`` - .. code-block:: none number of size cells in reg property * - ``dmas`` - ``phandle-array`` - .. code-block:: none DMA channels specifiers * - ``dma-names`` - ``string-array`` - .. code-block:: none Provided names of DMA channel specifiers * - ``io-channels`` - ``phandle-array`` - .. code-block:: none IO channels specifiers * - ``io-channel-names`` - ``string-array`` - .. code-block:: none Provided names of IO channel specifiers * - ``mboxes`` - ``phandle-array`` - .. code-block:: none mailbox / IPM channels specifiers * - ``mbox-names`` - ``string-array`` - .. code-block:: none Provided names of mailbox / IPM channel specifiers * - ``wakeup-source`` - ``boolean`` - .. code-block:: none Property to identify that a device can be used as wake up source. When this property is provided a specific flag is set into the device that tells the system that the device is capable of wake up the system. Wake up capable devices are disabled (interruptions will not wake up the system) by default but they can be enabled at runtime if necessary. * - ``power-domain`` - ``phandle`` - .. code-block:: none Power domain the device belongs to. The device will be notified when the power domain it belongs to is either suspended or resumed.