# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/sound/fsl,rpmsg.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: NXP Audio RPMSG CPU DAI Controller maintainers: - Shengjiu Wang description: | fsl_rpmsg is a virtual audio device. Mapping to real hardware devices are SAI, DMA controlled by Cortex M core. What we see from Linux side is a device which provides audio service by rpmsg channel. properties: compatible: enum: - fsl,imx7ulp-rpmsg-audio - fsl,imx8mn-rpmsg-audio - fsl,imx8mm-rpmsg-audio - fsl,imx8mp-rpmsg-audio model: $ref: /schemas/types.yaml#/definitions/string description: User specified audio sound card name clocks: items: - description: Peripheral clock for register access - description: Master clock - description: DMA clock for DMA register access - description: Parent clock for multiple of 8kHz sample rates - description: Parent clock for multiple of 11kHz sample rates clock-names: items: - const: ipg - const: mclk - const: dma - const: pll8k - const: pll11k power-domains: description: List of phandle and PM domain specifier as documented in Documentation/devicetree/bindings/power/power_domain.txt maxItems: 1 memory-region: maxItems: 1 description: phandle to a node describing reserved memory (System RAM memory) The M core can't access all the DDR memory space on some platform, So reserved a specific memory for dma buffer which M core can access. (see bindings/reserved-memory/reserved-memory.txt) audio-codec: $ref: /schemas/types.yaml#/definitions/phandle description: The phandle to a node of audio codec audio-routing: $ref: /schemas/types.yaml#/definitions/non-unique-string-array description: | A list of the connections between audio components. Each entry is a pair of strings, the first being the connection's sink, the second being the connection's source. fsl,enable-lpa: $ref: /schemas/types.yaml#/definitions/flag description: enable low power audio path. fsl,rpmsg-out: $ref: /schemas/types.yaml#/definitions/flag description: | This is a boolean property. If present, the transmitting function will be enabled. fsl,rpmsg-in: $ref: /schemas/types.yaml#/definitions/flag description: | This is a boolean property. If present, the receiving function will be enabled. required: - compatible - model additionalProperties: false examples: - | #include rpmsg_audio: rpmsg_audio { compatible = "fsl,imx8mn-rpmsg-audio"; model = "wm8524-audio"; fsl,enable-lpa; fsl,rpmsg-out; clocks = <&clk IMX8MN_CLK_SAI3_IPG>, <&clk IMX8MN_CLK_SAI3_ROOT>, <&clk IMX8MN_CLK_SDMA3_ROOT>, <&clk IMX8MN_AUDIO_PLL1_OUT>, <&clk IMX8MN_AUDIO_PLL2_OUT>; clock-names = "ipg", "mclk", "dma", "pll8k", "pll11k"; };