This patch adds bindings support for Qualcomm Audio Processing Manager
service in Audio DSP.
Audio Process Manager is one of the static service in DSP which is
responsible for Command/response handling, graph Management
and Control/Event management between modules.
Signed-off-by: Srinivas Kandagatla <redacted>
---
.../devicetree/bindings/sound/qcom,q6apm.yaml | 87 +++++++++++++++++++
include/dt-bindings/sound/qcom,q6apm.h | 8 ++
2 files changed, 95 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
create mode 100644 include/dt-bindings/sound/qcom,q6apm.h
diff --git a/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml b/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
new file mode 100644
index 000000000000..6f27567523a9
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
@@ -0,0 +1,87 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/sound/qcom,q6apm.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: Qualcomm Audio Process Manager binding
+
+maintainers:
+ - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+description: |
+ This binding describes the Qualcomm Audio Process Manager service in DSP
+
+properties:
+ compatible:
+ const: qcom,q6apm
+
+ reg:
+ maxItems: 1
+
+ '#address-cells':
+ const: 1
+
+ '#size-cells':
+ const: 0
+
+#APM Services
+patternProperties:
+ 'apm@[0-9]+$':
+ type: object
+ description:
+ APM devices use subnodes for services.
+
+ properties:
+ compatible:
+ enum:
+ - qcom,q6apm-dais
+ - qcom,q6apm-bedais
+
+ iommus:
+ maxItems: 1
+
+ "#sound-dai-cells":
+ const: 1
+
+ reg:
+ maxItems: 1
+
+ required:
+ - compatible
+ - reg
+ - '#sound-dai-cells'
+
+ additionalProperties: false
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ gpr {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ gprservice@1 {
+ compatible = "qcom,q6apm";
+ reg = <1>;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ apm@1 {
+ compatible = "qcom,q6apm-dais";
+ #sound-dai-cells = <1>;
+ reg = <1>;
+ };
+
+ apm@2 {
+ compatible = "qcom,q6apm-bedais";
+ #sound-dai-cells = <1>;
+ reg = <2>;
+ };
+ };
+ };diff --git a/include/dt-bindings/sound/qcom,q6apm.h b/include/dt-bindings/sound/qcom,q6apm.h
new file mode 100644
index 000000000000..3c3987eb6e95
--- /dev/null
+++ b/include/dt-bindings/sound/qcom,q6apm.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef __DT_BINDINGS_Q6_APM_H__
+#define __DT_BINDINGS_Q6_APM_H__
+
+/* Audio Process Manager (APM) virtual ports IDs */
+#include <dt-bindings/sound/qcom,q6afe.h>
+
+#endif /* __DT_BINDINGS_Q6_APM_H__ */
--
2.21.0