2021-02-25 06:09:51

by Shengjiu Wang

[permalink] [raw]
Subject: [PATCH v3 3/7] ASoC: dt-bindings: fsl_rpmsg: Add binding doc for rpmsg cpu dai driver

fsl_rpmsg cpu dai driver is driver for rpmsg audio, which is mainly used
for getting the user's configuration from device tree and configure the
clocks which is used by Cortex-M core. So in this document define the
needed property.

Signed-off-by: Shengjiu Wang <[email protected]>
---
.../devicetree/bindings/sound/fsl,rpmsg.yaml | 94 +++++++++++++++++++
1 file changed, 94 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/fsl,rpmsg.yaml

diff --git a/Documentation/devicetree/bindings/sound/fsl,rpmsg.yaml b/Documentation/devicetree/bindings/sound/fsl,rpmsg.yaml
new file mode 100644
index 000000000000..ab6d3b8d0d38
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/fsl,rpmsg.yaml
@@ -0,0 +1,94 @@
+# 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 <[email protected]>
+
+description: |
+ fsl_rpmsg cpu dai driver is virtual driver for rpmsg audio, which doesn't
+ touch hardware. It is mainly used for getting the user's configuration
+ from device tree and configure the clocks which is used by Cortex-M core.
+ So in this document define the needed property.
+
+properties:
+ compatible:
+ enum:
+ - fsl,imx7ulp-rpmsg
+ - fsl,imx8mn-rpmsg
+ - fsl,imx8mm-rpmsg
+ - fsl,imx8mp-rpmsg
+
+ 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
+ minItems: 5
+
+ clock-names:
+ items:
+ - const: ipg
+ - const: mclk
+ - const: dma
+ - const: pll8k
+ - const: pll11k
+ minItems: 5
+
+ power-domains:
+ maxItems: 1
+
+ fsl,audioindex:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum: [0, 1]
+ default: 0
+ description: Instance index for sound card in
+ M core side, which share one rpmsg
+ channel.
+
+ fsl,version:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum: [1, 2]
+ default: 2
+ description: The version of M core image, which is
+ to make driver compatible with different image.
+
+ fsl,buffer-size:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: pre allocate dma buffer size
+
+ fsl,enable-lpa:
+ $ref: /schemas/types.yaml#/definitions/flag
+ description: enable low power audio path.
+
+ fsl,codec-type:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum: [0, 1, 2]
+ default: 0
+ description: Sometimes the codec is registered by
+ driver not the device tree, this items
+ can be used to distinguish codecs.
+
+required:
+ - compatible
+ - fsl,audioindex
+ - fsl,version
+ - fsl,buffer-size
+
+additionalProperties: false
+
+examples:
+ - |
+ rpmsg_audio: rpmsg_audio {
+ compatible = "fsl,imx8mn-rpmsg";
+ fsl,audioindex = <0> ;
+ fsl,version = <2>;
+ fsl,buffer-size = <0x6000000>;
+ fsl,enable-lpa;
+ };
--
2.27.0