149c6bf62SShengjiu Wang# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 249c6bf62SShengjiu Wang%YAML 1.2 349c6bf62SShengjiu Wang--- 449c6bf62SShengjiu Wang$id: http://devicetree.org/schemas/sound/fsl,rpmsg.yaml# 549c6bf62SShengjiu Wang$schema: http://devicetree.org/meta-schemas/core.yaml# 649c6bf62SShengjiu Wang 749c6bf62SShengjiu Wangtitle: NXP Audio RPMSG CPU DAI Controller 849c6bf62SShengjiu Wang 949c6bf62SShengjiu Wangmaintainers: 1049c6bf62SShengjiu Wang - Shengjiu Wang <shengjiu.wang@nxp.com> 1149c6bf62SShengjiu Wang 1249c6bf62SShengjiu Wangdescription: | 1349c6bf62SShengjiu Wang fsl_rpmsg is a virtual audio device. Mapping to real hardware devices 1449c6bf62SShengjiu Wang are SAI, DMA controlled by Cortex M core. What we see from Linux 1549c6bf62SShengjiu Wang side is a device which provides audio service by rpmsg channel. 1649c6bf62SShengjiu Wang 1749c6bf62SShengjiu Wangproperties: 1849c6bf62SShengjiu Wang compatible: 1949c6bf62SShengjiu Wang enum: 2049c6bf62SShengjiu Wang - fsl,imx7ulp-rpmsg-audio 2149c6bf62SShengjiu Wang - fsl,imx8mn-rpmsg-audio 2249c6bf62SShengjiu Wang - fsl,imx8mm-rpmsg-audio 2349c6bf62SShengjiu Wang - fsl,imx8mp-rpmsg-audio 2449c6bf62SShengjiu Wang 2549c6bf62SShengjiu Wang model: 2649c6bf62SShengjiu Wang $ref: /schemas/types.yaml#/definitions/string 2749c6bf62SShengjiu Wang description: User specified audio sound card name 2849c6bf62SShengjiu Wang 2949c6bf62SShengjiu Wang clocks: 3049c6bf62SShengjiu Wang items: 3149c6bf62SShengjiu Wang - description: Peripheral clock for register access 3249c6bf62SShengjiu Wang - description: Master clock 3349c6bf62SShengjiu Wang - description: DMA clock for DMA register access 3449c6bf62SShengjiu Wang - description: Parent clock for multiple of 8kHz sample rates 3549c6bf62SShengjiu Wang - description: Parent clock for multiple of 11kHz sample rates 3649c6bf62SShengjiu Wang 3749c6bf62SShengjiu Wang clock-names: 3849c6bf62SShengjiu Wang items: 3949c6bf62SShengjiu Wang - const: ipg 4049c6bf62SShengjiu Wang - const: mclk 4149c6bf62SShengjiu Wang - const: dma 4249c6bf62SShengjiu Wang - const: pll8k 4349c6bf62SShengjiu Wang - const: pll11k 4449c6bf62SShengjiu Wang 4549c6bf62SShengjiu Wang power-domains: 4649c6bf62SShengjiu Wang description: 4749c6bf62SShengjiu Wang List of phandle and PM domain specifier as documented in 4849c6bf62SShengjiu Wang Documentation/devicetree/bindings/power/power_domain.txt 4949c6bf62SShengjiu Wang maxItems: 1 5049c6bf62SShengjiu Wang 5149c6bf62SShengjiu Wang memory-region: 52*c1761159SRob Herring maxItems: 1 5349c6bf62SShengjiu Wang description: 5449c6bf62SShengjiu Wang phandle to a node describing reserved memory (System RAM memory) 5549c6bf62SShengjiu Wang The M core can't access all the DDR memory space on some platform, 5649c6bf62SShengjiu Wang So reserved a specific memory for dma buffer which M core can 5749c6bf62SShengjiu Wang access. 5849c6bf62SShengjiu Wang (see bindings/reserved-memory/reserved-memory.txt) 5949c6bf62SShengjiu Wang 6049c6bf62SShengjiu Wang audio-codec: 6149c6bf62SShengjiu Wang $ref: /schemas/types.yaml#/definitions/phandle 6249c6bf62SShengjiu Wang description: The phandle to a node of audio codec 6349c6bf62SShengjiu Wang 6449c6bf62SShengjiu Wang audio-routing: 6549c6bf62SShengjiu Wang $ref: /schemas/types.yaml#/definitions/non-unique-string-array 6649c6bf62SShengjiu Wang description: | 6749c6bf62SShengjiu Wang A list of the connections between audio components. Each entry is a 6849c6bf62SShengjiu Wang pair of strings, the first being the connection's sink, the second 6949c6bf62SShengjiu Wang being the connection's source. 7049c6bf62SShengjiu Wang 7149c6bf62SShengjiu Wang fsl,enable-lpa: 7249c6bf62SShengjiu Wang $ref: /schemas/types.yaml#/definitions/flag 7349c6bf62SShengjiu Wang description: enable low power audio path. 7449c6bf62SShengjiu Wang 7549c6bf62SShengjiu Wang fsl,rpmsg-out: 7649c6bf62SShengjiu Wang $ref: /schemas/types.yaml#/definitions/flag 7749c6bf62SShengjiu Wang description: | 7849c6bf62SShengjiu Wang This is a boolean property. If present, the transmitting function 7949c6bf62SShengjiu Wang will be enabled. 8049c6bf62SShengjiu Wang 8149c6bf62SShengjiu Wang fsl,rpmsg-in: 8249c6bf62SShengjiu Wang $ref: /schemas/types.yaml#/definitions/flag 8349c6bf62SShengjiu Wang description: | 8449c6bf62SShengjiu Wang This is a boolean property. If present, the receiving function 8549c6bf62SShengjiu Wang will be enabled. 8649c6bf62SShengjiu Wang 8749c6bf62SShengjiu Wangrequired: 8849c6bf62SShengjiu Wang - compatible 8949c6bf62SShengjiu Wang - model 9049c6bf62SShengjiu Wang 9149c6bf62SShengjiu WangadditionalProperties: false 9249c6bf62SShengjiu Wang 9349c6bf62SShengjiu Wangexamples: 9449c6bf62SShengjiu Wang - | 9549c6bf62SShengjiu Wang #include <dt-bindings/clock/imx8mn-clock.h> 9649c6bf62SShengjiu Wang 9749c6bf62SShengjiu Wang rpmsg_audio: rpmsg_audio { 9849c6bf62SShengjiu Wang compatible = "fsl,imx8mn-rpmsg-audio"; 9949c6bf62SShengjiu Wang model = "wm8524-audio"; 10049c6bf62SShengjiu Wang fsl,enable-lpa; 10149c6bf62SShengjiu Wang fsl,rpmsg-out; 10249c6bf62SShengjiu Wang clocks = <&clk IMX8MN_CLK_SAI3_IPG>, 10349c6bf62SShengjiu Wang <&clk IMX8MN_CLK_SAI3_ROOT>, 10449c6bf62SShengjiu Wang <&clk IMX8MN_CLK_SDMA3_ROOT>, 10549c6bf62SShengjiu Wang <&clk IMX8MN_AUDIO_PLL1_OUT>, 10649c6bf62SShengjiu Wang <&clk IMX8MN_AUDIO_PLL2_OUT>; 10749c6bf62SShengjiu Wang clock-names = "ipg", "mclk", "dma", "pll8k", "pll11k"; 10849c6bf62SShengjiu Wang }; 109