1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/sound/fsl,rpmsg.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: NXP Audio RPMSG CPU DAI Controller 8 9maintainers: 10 - Shengjiu Wang <shengjiu.wang@nxp.com> 11 12description: | 13 fsl_rpmsg is a virtual audio device. Mapping to real hardware devices 14 are SAI, DMA controlled by Cortex M core. What we see from Linux 15 side is a device which provides audio service by rpmsg channel. 16 17properties: 18 compatible: 19 enum: 20 - fsl,imx7ulp-rpmsg-audio 21 - fsl,imx8mn-rpmsg-audio 22 - fsl,imx8mm-rpmsg-audio 23 - fsl,imx8mp-rpmsg-audio 24 - fsl,imx8ulp-rpmsg-audio 25 26 model: 27 $ref: /schemas/types.yaml#/definitions/string 28 description: User specified audio sound card name 29 30 clocks: 31 items: 32 - description: Peripheral clock for register access 33 - description: Master clock 34 - description: DMA clock for DMA register access 35 - description: Parent clock for multiple of 8kHz sample rates 36 - description: Parent clock for multiple of 11kHz sample rates 37 38 clock-names: 39 items: 40 - const: ipg 41 - const: mclk 42 - const: dma 43 - const: pll8k 44 - const: pll11k 45 46 power-domains: 47 description: 48 List of phandle and PM domain specifier as documented in 49 Documentation/devicetree/bindings/power/power_domain.txt 50 maxItems: 1 51 52 memory-region: 53 maxItems: 1 54 description: 55 phandle to a node describing reserved memory (System RAM memory) 56 The M core can't access all the DDR memory space on some platform, 57 So reserved a specific memory for dma buffer which M core can 58 access. 59 (see bindings/reserved-memory/reserved-memory.txt) 60 61 audio-codec: 62 $ref: /schemas/types.yaml#/definitions/phandle 63 description: The phandle to a node of audio codec 64 65 audio-routing: 66 $ref: /schemas/types.yaml#/definitions/non-unique-string-array 67 description: | 68 A list of the connections between audio components. Each entry is a 69 pair of strings, the first being the connection's sink, the second 70 being the connection's source. 71 72 fsl,enable-lpa: 73 $ref: /schemas/types.yaml#/definitions/flag 74 description: enable low power audio path. 75 76 fsl,rpmsg-out: 77 $ref: /schemas/types.yaml#/definitions/flag 78 description: | 79 This is a boolean property. If present, the transmitting function 80 will be enabled. 81 82 fsl,rpmsg-in: 83 $ref: /schemas/types.yaml#/definitions/flag 84 description: | 85 This is a boolean property. If present, the receiving function 86 will be enabled. 87 88required: 89 - compatible 90 - model 91 92additionalProperties: false 93 94examples: 95 - | 96 #include <dt-bindings/clock/imx8mn-clock.h> 97 98 rpmsg_audio: rpmsg_audio { 99 compatible = "fsl,imx8mn-rpmsg-audio"; 100 model = "wm8524-audio"; 101 fsl,enable-lpa; 102 fsl,rpmsg-out; 103 clocks = <&clk IMX8MN_CLK_SAI3_IPG>, 104 <&clk IMX8MN_CLK_SAI3_ROOT>, 105 <&clk IMX8MN_CLK_SDMA3_ROOT>, 106 <&clk IMX8MN_AUDIO_PLL1_OUT>, 107 <&clk IMX8MN_AUDIO_PLL2_OUT>; 108 clock-names = "ipg", "mclk", "dma", "pll8k", "pll11k"; 109 }; 110