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 25 model: 26 $ref: /schemas/types.yaml#/definitions/string 27 description: User specified audio sound card name 28 29 clocks: 30 items: 31 - description: Peripheral clock for register access 32 - description: Master clock 33 - description: DMA clock for DMA register access 34 - description: Parent clock for multiple of 8kHz sample rates 35 - description: Parent clock for multiple of 11kHz sample rates 36 37 clock-names: 38 items: 39 - const: ipg 40 - const: mclk 41 - const: dma 42 - const: pll8k 43 - const: pll11k 44 45 power-domains: 46 description: 47 List of phandle and PM domain specifier as documented in 48 Documentation/devicetree/bindings/power/power_domain.txt 49 maxItems: 1 50 51 memory-region: 52 maxItems: 1 53 description: 54 phandle to a node describing reserved memory (System RAM memory) 55 The M core can't access all the DDR memory space on some platform, 56 So reserved a specific memory for dma buffer which M core can 57 access. 58 (see bindings/reserved-memory/reserved-memory.txt) 59 60 audio-codec: 61 $ref: /schemas/types.yaml#/definitions/phandle 62 description: The phandle to a node of audio codec 63 64 audio-routing: 65 $ref: /schemas/types.yaml#/definitions/non-unique-string-array 66 description: | 67 A list of the connections between audio components. Each entry is a 68 pair of strings, the first being the connection's sink, the second 69 being the connection's source. 70 71 fsl,enable-lpa: 72 $ref: /schemas/types.yaml#/definitions/flag 73 description: enable low power audio path. 74 75 fsl,rpmsg-out: 76 $ref: /schemas/types.yaml#/definitions/flag 77 description: | 78 This is a boolean property. If present, the transmitting function 79 will be enabled. 80 81 fsl,rpmsg-in: 82 $ref: /schemas/types.yaml#/definitions/flag 83 description: | 84 This is a boolean property. If present, the receiving function 85 will be enabled. 86 87required: 88 - compatible 89 - model 90 91additionalProperties: false 92 93examples: 94 - | 95 #include <dt-bindings/clock/imx8mn-clock.h> 96 97 rpmsg_audio: rpmsg_audio { 98 compatible = "fsl,imx8mn-rpmsg-audio"; 99 model = "wm8524-audio"; 100 fsl,enable-lpa; 101 fsl,rpmsg-out; 102 clocks = <&clk IMX8MN_CLK_SAI3_IPG>, 103 <&clk IMX8MN_CLK_SAI3_ROOT>, 104 <&clk IMX8MN_CLK_SDMA3_ROOT>, 105 <&clk IMX8MN_AUDIO_PLL1_OUT>, 106 <&clk IMX8MN_AUDIO_PLL2_OUT>; 107 clock-names = "ipg", "mclk", "dma", "pll8k", "pll11k"; 108 }; 109