linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450
@ 2022-11-15 12:02 Krzysztof Kozlowski
  2022-11-15 12:02 ` [PATCH v2 01/11] ASoC: dt-bindings: qcom,apr: Add GLINK channel name " Krzysztof Kozlowski
                   ` (11 more replies)
  0 siblings, 12 replies; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

Changes since v1
================
1. Patch 2: Keep compatibles in qcom,apr.yaml.
2. Patch 3: New patch.

Description
===========
Adding sound support for Qualcomm SM8450 SoC (and later for SC8280XP) brought
some changes to APR/GPR services bindings.  These bindings are part of
qcom,apr.yaml:

  apr-or-gpr-device-node <- qcom,apr.yaml
    apr-gpr-service@[0-9] <- qcom,apr.yaml
      service-specific-components <- /schemas/sound/qcom,q6*.yaml

The schema for services (apr-gpr-service@[0-9]) was not complete and is still
quite not specific.  It allows several incorrect combinations, like adding a
clock-controller to a APM device.  Restricting it would complicate the schema
even more.  Bringing new support for sound on Qualcomm SM8450 and SC8280XP SoC
would grow it as well.

Refactor the bindings before extending them for Qualcomm SM8450 SoC.

DTS was sent here:
https://lore.kernel.org/linux-arm-msm/20221115110053.110319-1-krzysztof.kozlowski@linaro.org/T/#t

Best regards,
Krzysztof

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com

Krzysztof Kozlowski (11):
  ASoC: dt-bindings: qcom,apr: Add GLINK channel name for SM8450
  ASoC: dt-bindings: qcom,apr: Split services to shared schema
  ASoC: dt-bindings: qcom,apr: Correct and extend example
  ASoC: dt-bindings: qcom,q6afe: Split to separate schema
  ASoC: dt-bindings: qcom,q6apm: Split to separate schema
  ASoC: dt-bindings: qcom,q6adm: Split to separate schema
  ASoC: dt-bindings: qcom,q6asm: Split to separate schema
  ASoC: dt-bindings: qcom,q6prm: Split to separate schema
  ASoC: dt-bindings: qcom,q6core: Split to separate schema
  ASoC: dt-bindings: qcom,q6apm-lpass-dais: Split to separate schema
  ASoC: dt-bindings: qcom,q6apm: Add SM8450 bedais node

 .../bindings/soc/qcom/qcom,apr-services.yaml  |  54 ++++++
 .../bindings/soc/qcom/qcom,apr.yaml           | 170 ++++++------------
 .../bindings/sound/qcom,q6adm-routing.yaml    |  22 +--
 .../devicetree/bindings/sound/qcom,q6adm.yaml |  51 ++++++
 .../devicetree/bindings/sound/qcom,q6afe.yaml |  68 +++++++
 .../bindings/sound/qcom,q6apm-dai.yaml        |  19 +-
 .../bindings/sound/qcom,q6apm-lpass-dais.yaml |  32 ++++
 .../devicetree/bindings/sound/qcom,q6apm.yaml |  67 +++++++
 .../bindings/sound/qcom,q6asm-dais.yaml       |  48 ++---
 .../devicetree/bindings/sound/qcom,q6asm.yaml |  68 +++++++
 .../bindings/sound/qcom,q6core.yaml           |  39 ++++
 .../sound/qcom,q6dsp-lpass-clocks.yaml        |  40 +----
 .../sound/qcom,q6dsp-lpass-ports.yaml         |  57 +-----
 .../devicetree/bindings/sound/qcom,q6prm.yaml |  50 ++++++
 MAINTAINERS                                   |   2 +-
 15 files changed, 515 insertions(+), 272 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,apr-services.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6adm.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6afe.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6asm.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6core.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6prm.yaml

-- 
2.34.1


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH v2 01/11] ASoC: dt-bindings: qcom,apr: Add GLINK channel name for SM8450
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:28   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 02/11] ASoC: dt-bindings: qcom,apr: Split services to shared schema Krzysztof Kozlowski
                   ` (10 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

On SM8450 and SC8280XP with Qualcomm GPR, the GLINK channel name
(qcom,glink-channels) for ADSP is "adsp_apps".

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../devicetree/bindings/soc/qcom/qcom,apr.yaml        | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
index f47491aab3b1..0a7a34cb2497 100644
--- a/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
@@ -58,8 +58,7 @@ properties:
   qcom,glink-channels:
     $ref: /schemas/types.yaml#/definitions/string-array
     description: Channel name used for the communication
-    items:
-      - const: apr_audio_svc
+    maxItems: 1
 
   qcom,intents:
     $ref: /schemas/types.yaml#/definitions/uint32-array
@@ -203,7 +202,15 @@ allOf:
             - qcom,gpr
     then:
       properties:
+        qcom,glink-channels:
+          items:
+            - const: adsp_apps
         power-domains: false
+    else:
+      properties:
+        qcom,glink-channels:
+          items:
+            - const: apr_audio_svc
 
   - if:
       required:
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 02/11] ASoC: dt-bindings: qcom,apr: Split services to shared schema
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
  2022-11-15 12:02 ` [PATCH v2 01/11] ASoC: dt-bindings: qcom,apr: Add GLINK channel name " Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:33   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 03/11] ASoC: dt-bindings: qcom,apr: Correct and extend example Krzysztof Kozlowski
                   ` (9 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

The APR/GPR nodes are organized like:

  apr-or-gpr-device-node <- qcom,apr.yaml
    apr-gpr-service@[0-9] <- qcom,apr.yaml
      service-specific-components <- /schemas/sound/qcom,q6*.yaml

The schema for services (apr-gpr-service@[0-9]) already grows
considerably and is still quite not specific.  It allows several
incorrect combinations, like adding a clock-controller to a APM device.
Restricting it would complicate the schema even more.  Bringing new
support for sound on Qualcomm SM8450 and SC8280XP SoC would grow it as
well.

Simplify the qcom,apr.yaml by splitting the services to a shared file
which will be:
1. Referenced by qcom,apr.yaml with additionalProperties:true,
2. Referenced by specific bindings for services with
   additionalProperties:false (not yet in this commit).

While moving the code, add also required 'reg' and
'qcom,protection-domain' to further constrain the bindings.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v1:
1. Keep compatibles in qcom,apr.yaml

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../bindings/soc/qcom/qcom,apr-services.yaml  | 54 ++++++++++
 .../bindings/soc/qcom/qcom,apr.yaml           | 98 +------------------
 MAINTAINERS                                   |  2 +-
 3 files changed, 58 insertions(+), 96 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,apr-services.yaml

diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,apr-services.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,apr-services.yaml
new file mode 100644
index 000000000000..290555426c39
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,apr-services.yaml
@@ -0,0 +1,54 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/qcom/qcom,apr-services.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm APR/GPR services shared parts
+
+maintainers:
+  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+description:
+  Common parts of a static service in Qualcomm APR/GPR (Asynchronous/Generic
+  Packet Router).
+
+properties:
+  reg:
+    minimum: 1
+    maximum: 13
+    description: |
+      APR Service ID
+        3 = DSP Core Service
+        4 = Audio  Front End Service.
+        5 = Voice Stream Manager Service.
+        6 = Voice processing manager.
+        7 = Audio Stream Manager Service.
+        8 = Audio Device Manager Service.
+        9 = Multimode voice manager.
+        10 = Core voice stream.
+        11 = Core voice processor.
+        12 = Ultrasound stream manager.
+        13 = Listen stream manager.
+      GPR Service ID
+        1 = Audio Process Manager Service
+        2 = Proxy Resource Manager Service.
+        3 = AMDB Service.
+        4 = Voice processing manager.
+
+  qcom,protection-domain:
+    $ref: /schemas/types.yaml#/definitions/string-array
+    description: |
+      Protection domain service name and path for APR service
+      possible values are::
+      "avs/audio", "msm/adsp/audio_pd".
+      "kernel/elf_loader", "msm/modem/wlan_pd".
+      "tms/servreg", "msm/adsp/audio_pd".
+      "tms/servreg", "msm/modem/wlan_pd".
+      "tms/servreg", "msm/slpi/sensor_pd".
+
+required:
+  - reg
+  - qcom,protection-domain
+
+additionalProperties: true
diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
index 0a7a34cb2497..1fab1d9a2dad 100644
--- a/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
@@ -80,12 +80,13 @@ properties:
   '#size-cells':
     const: 0
 
-#APR/GPR Services
 patternProperties:
   "^service@[1-9a-d]$":
     type: object
+    $ref: /schemas/soc/qcom/qcom,apr-services.yaml
+    additionalProperties: true
     description:
-      APR/GPR node's client devices use subnodes for desired static port services.
+      APR/GPR static port services.
 
     properties:
       compatible:
@@ -97,99 +98,6 @@ patternProperties:
           - qcom,q6apm
           - qcom,q6prm
 
-      reg:
-        minimum: 1
-        maximum: 13
-        description:
-          APR Service ID
-            3 = DSP Core Service
-            4 = Audio  Front End Service.
-            5 = Voice Stream Manager Service.
-            6 = Voice processing manager.
-            7 = Audio Stream Manager Service.
-            8 = Audio Device Manager Service.
-            9 = Multimode voice manager.
-            10 = Core voice stream.
-            11 = Core voice processor.
-            12 = Ultrasound stream manager.
-            13 = Listen stream manager.
-          GPR Service ID
-            1 = Audio Process Manager Service
-            2 = Proxy Resource Manager Service.
-            3 = AMDB Service.
-            4 = Voice processing manager.
-
-      clock-controller:
-        $ref: /schemas/sound/qcom,q6dsp-lpass-clocks.yaml#
-        description: Qualcomm DSP LPASS clock controller
-        unevaluatedProperties: false
-
-      dais:
-        type: object
-        oneOf:
-          - $ref: /schemas/sound/qcom,q6apm-dai.yaml#
-          - $ref: /schemas/sound/qcom,q6dsp-lpass-ports.yaml#
-          - $ref: /schemas/sound/qcom,q6asm-dais.yaml#
-        unevaluatedProperties: false
-        description: Qualcomm DSP audio ports
-
-      routing:
-        type: object
-        $ref: /schemas/sound/qcom,q6adm-routing.yaml#
-        unevaluatedProperties: false
-        description: Qualcomm DSP LPASS audio routing
-
-      qcom,protection-domain:
-        $ref: /schemas/types.yaml#/definitions/string-array
-        description: protection domain service name and path for apr service
-          possible values are
-          "avs/audio", "msm/adsp/audio_pd".
-          "kernel/elf_loader", "msm/modem/wlan_pd".
-          "tms/servreg", "msm/adsp/audio_pd".
-          "tms/servreg", "msm/modem/wlan_pd".
-          "tms/servreg", "msm/slpi/sensor_pd".
-
-    allOf:
-      - if:
-          properties:
-            compatible:
-              enum:
-                - qcom,q6afe
-        then:
-          properties:
-            dais:
-              properties:
-                compatible:
-                  const: qcom,q6afe-dais
-
-      - if:
-          properties:
-            compatible:
-              enum:
-                - qcom,q6apm
-        then:
-          properties:
-            dais:
-              properties:
-                compatible:
-                  enum:
-                    - qcom,q6apm-dais
-                    - qcom,q6apm-lpass-dais
-
-      - if:
-          properties:
-            compatible:
-              enum:
-                - qcom,q6asm
-        then:
-          properties:
-            dais:
-              properties:
-                compatible:
-                  const: qcom,q6asm-dais
-
-    additionalProperties: false
-
 required:
   - compatible
   - qcom,domain
diff --git a/MAINTAINERS b/MAINTAINERS
index 3df7b9a3f5ba..804e4a700477 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -16893,7 +16893,7 @@ M:	Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
 M:	Banajit Goswami <bgoswami@quicinc.com>
 L:	alsa-devel@alsa-project.org (moderated for non-subscribers)
 S:	Supported
-F:	Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
+F:	Documentation/devicetree/bindings/soc/qcom/qcom,apr*
 F:	Documentation/devicetree/bindings/sound/qcom,*
 F:	drivers/soc/qcom/apr.c
 F:	include/dt-bindings/sound/qcom,wcd9335.h
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 03/11] ASoC: dt-bindings: qcom,apr: Correct and extend example
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
  2022-11-15 12:02 ` [PATCH v2 01/11] ASoC: dt-bindings: qcom,apr: Add GLINK channel name " Krzysztof Kozlowski
  2022-11-15 12:02 ` [PATCH v2 02/11] ASoC: dt-bindings: qcom,apr: Split services to shared schema Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:37   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 04/11] ASoC: dt-bindings: qcom,q6afe: Split to separate schema Krzysztof Kozlowski
                   ` (8 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

Correct the APR/GPR example:
1. Use consistent 4-space indentation,
2. Add required properties to services nodes, so the binding check
   passes once schema for these services is improved,
3. Add few other properties as APR/GPR is part of a GLINK edge:
   qcom,glink-channels and qcom,intents.
4. Drop unnecessary services, to make the example compact.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v1:
1. New patch.

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../bindings/soc/qcom/qcom,apr.yaml           | 61 ++++++++++++-------
 1 file changed, 39 insertions(+), 22 deletions(-)

diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
index 1fab1d9a2dad..4209c6314996 100644
--- a/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
@@ -142,31 +142,35 @@ examples:
     apr {
         compatible = "qcom,apr-v2";
         qcom,domain = <APR_DOMAIN_ADSP>;
+        qcom,glink-channels = "apr_audio_svc";
+        qcom,intents = <512 20>;
         #address-cells = <1>;
         #size-cells = <0>;
 
         q6core: service@3 {
-          compatible = "qcom,q6core";
-          reg = <APR_SVC_ADSP_CORE>;
-          qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+            compatible = "qcom,q6core";
+            reg = <APR_SVC_ADSP_CORE>;
+            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
         };
 
-        q6afe: service@4 {
-          compatible = "qcom,q6afe";
-          reg = <APR_SVC_AFE>;
-          qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
-        };
-
-        q6asm: service@7 {
-          compatible = "qcom,q6asm";
-          reg = <APR_SVC_ASM>;
-          qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
-        };
-
-        q6adm: service@8 {
-          compatible = "qcom,q6adm";
-          reg = <APR_SVC_ADM>;
-          qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+        service@4 {
+            compatible = "qcom,q6afe";
+            reg = <APR_SVC_AFE>;
+            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+
+            clock-controller {
+                compatible = "qcom,q6afe-clocks";
+                #clock-cells = <2>;
+            };
+
+            dais {
+                compatible = "qcom,q6afe-dais";
+                #address-cells = <1>;
+                #size-cells = <0>;
+                #sound-dai-cells = <1>;
+                /* ... */
+            };
+            /* ... */
         };
     };
 
@@ -175,12 +179,25 @@ examples:
     gpr {
         compatible = "qcom,gpr";
         qcom,domain = <GPR_DOMAIN_ID_ADSP>;
+        qcom,glink-channels = "adsp_apps";
+        qcom,intents = <512 20>;
         #address-cells = <1>;
         #size-cells = <0>;
 
         service@1 {
-          compatible = "qcom,q6apm";
-          reg = <GPR_APM_MODULE_IID>;
-          qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+            compatible = "qcom,q6apm";
+            reg = <GPR_APM_MODULE_IID>;
+            #sound-dai-cells = <0>;
+            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+
+            dais {
+                compatible = "qcom,q6apm-dais";
+                iommus = <&apps_smmu 0x1801 0x0>;
+            };
+
+            bedais {
+                compatible = "qcom,q6apm-lpass-dais";
+                #sound-dai-cells = <1>;
+            };
         };
     };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 04/11] ASoC: dt-bindings: qcom,q6afe: Split to separate schema
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2022-11-15 12:02 ` [PATCH v2 03/11] ASoC: dt-bindings: qcom,apr: Correct and extend example Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:39   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 05/11] ASoC: dt-bindings: qcom,q6apm: " Krzysztof Kozlowski
                   ` (7 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

The APR/GPR bindings with services got complicated so move out the Q6AFE
service to its own binding.  Previously the compatible was documented in
qcom,apr.yaml.  Move most of the examples from its children to this new
file.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../devicetree/bindings/sound/qcom,q6afe.yaml | 68 +++++++++++++++++++
 .../sound/qcom,q6dsp-lpass-clocks.yaml        | 40 +----------
 .../sound/qcom,q6dsp-lpass-ports.yaml         | 56 +++------------
 3 files changed, 80 insertions(+), 84 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6afe.yaml

diff --git a/Documentation/devicetree/bindings/sound/qcom,q6afe.yaml b/Documentation/devicetree/bindings/sound/qcom,q6afe.yaml
new file mode 100644
index 000000000000..297aa362aa54
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,q6afe.yaml
@@ -0,0 +1,68 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/qcom,q6afe.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Audio FrontEnd (Q6AFE)
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+allOf:
+  - $ref: /schemas/soc/qcom/qcom,apr-services.yaml#
+
+properties:
+  compatible:
+    enum:
+      - qcom,q6afe
+
+  clock-controller:
+    $ref: /schemas/sound/qcom,q6dsp-lpass-clocks.yaml#
+    unevaluatedProperties: false
+    description: Qualcomm DSP LPASS clock controller
+
+  dais:
+    type: object
+    $ref: /schemas/sound/qcom,q6dsp-lpass-ports.yaml#
+    unevaluatedProperties: false
+    description: Qualcomm DSP audio ports
+
+required:
+  - compatible
+  - dais
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/soc/qcom,apr.h>
+    #include <dt-bindings/sound/qcom,q6afe.h>
+    apr {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        service@4 {
+            compatible = "qcom,q6afe";
+            reg = <APR_SVC_AFE>;
+            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+
+            clock-controller {
+                compatible = "qcom,q6afe-clocks";
+                #clock-cells = <2>;
+            };
+
+            dais {
+                compatible = "qcom,q6afe-dais";
+                #address-cells = <1>;
+                #size-cells = <0>;
+                #sound-dai-cells = <1>;
+
+                dai@22 {
+                    reg = <QUATERNARY_MI2S_RX>;
+                    qcom,sd-lines = <0 1 2 3>;
+                };
+            };
+        };
+    };
diff --git a/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-clocks.yaml b/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-clocks.yaml
index fd567d20417d..aa6c0ecba5cf 100644
--- a/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-clocks.yaml
+++ b/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-clocks.yaml
@@ -35,41 +35,7 @@ additionalProperties: false
 
 examples:
   - |
-    #include <dt-bindings/soc/qcom,apr.h>
-    #include <dt-bindings/sound/qcom,q6afe.h>
-    apr {
-        compatible = "qcom,apr-v2";
-        qcom,domain = <APR_DOMAIN_ADSP>;
-        #address-cells = <1>;
-        #size-cells = <0>;
-
-        service@4 {
-            compatible = "qcom,q6afe";
-            reg = <APR_SVC_AFE>;
-            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
-
-            clock-controller {
-                compatible = "qcom,q6afe-clocks";
-                #clock-cells = <2>;
-            };
-        };
-    };
-
-  - |
-    #include <dt-bindings/soc/qcom,gpr.h>
-    gpr {
-        compatible = "qcom,gpr";
-        qcom,domain = <GPR_DOMAIN_ID_ADSP>;
-        #address-cells = <1>;
-        #size-cells = <0>;
-
-        service@2 {
-            reg = <GPR_PRM_MODULE_IID>;
-            compatible = "qcom,q6prm";
-
-            clock-controller {
-                compatible = "qcom,q6prm-lpass-clocks";
-                #clock-cells = <2>;
-            };
-        };
+    clock-controller {
+        compatible = "qcom,q6afe-clocks";
+        #clock-cells = <2>;
     };
diff --git a/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-ports.yaml b/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-ports.yaml
index e53fc0960a14..b202692f1756 100644
--- a/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-ports.yaml
+++ b/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-ports.yaml
@@ -150,54 +150,16 @@ additionalProperties: false
 
 examples:
   - |
-    #include <dt-bindings/soc/qcom,apr.h>
-    #include <dt-bindings/sound/qcom,q6afe.h>
-    apr {
-        compatible = "qcom,apr-v2";
-        #address-cells = <1>;
-        #size-cells = <0>;
-        qcom,domain = <APR_DOMAIN_ADSP>;
-
-        service@4 {
-            compatible = "qcom,q6afe";
-            reg = <APR_SVC_AFE>;
-            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
-
-            dais {
-                compatible = "qcom,q6afe-dais";
-                #address-cells = <1>;
-                #size-cells = <0>;
-                #sound-dai-cells = <1>;
-
-                dai@22 {
-                    reg = <QUATERNARY_MI2S_RX>;
-                    qcom,sd-lines = <0 1 2 3>;
-                };
-            };
-        };
-    };
-  - |
-    #include <dt-bindings/soc/qcom,gpr.h>
-    gpr {
-        compatible = "qcom,gpr";
+    #include <dt-bindings/sound/qcom,q6dsp-lpass-ports.h>
+
+    dais {
+        compatible = "qcom,q6afe-dais";
         #address-cells = <1>;
         #size-cells = <0>;
-        qcom,domain = <GPR_DOMAIN_ID_ADSP>;
-
-        service@1 {
-            compatible = "qcom,q6apm";
-            reg = <GPR_APM_MODULE_IID>;
-
-            dais {
-                compatible = "qcom,q6apm-lpass-dais";
-                #address-cells = <1>;
-                #size-cells = <0>;
-                #sound-dai-cells = <1>;
-
-                dai@22 {
-                    reg = <QUATERNARY_MI2S_RX>;
-                    qcom,sd-lines = <0 1 2 3>;
-                };
-            };
+        #sound-dai-cells = <1>;
+
+        dai@22 {
+            reg = <QUATERNARY_MI2S_RX>;
+            qcom,sd-lines = <0 1 2 3>;
         };
     };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 05/11] ASoC: dt-bindings: qcom,q6apm: Split to separate schema
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
                   ` (3 preceding siblings ...)
  2022-11-15 12:02 ` [PATCH v2 04/11] ASoC: dt-bindings: qcom,q6afe: Split to separate schema Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:39   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 06/11] ASoC: dt-bindings: qcom,q6adm: " Krzysztof Kozlowski
                   ` (6 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

The APR/GPR bindings with services got complicated so move out the Q6APM
service to its own binding.  Previously the compatible was documented in
qcom,apr.yaml.  Move most of the examples from its children to this new
file.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../bindings/sound/qcom,q6apm-dai.yaml        | 19 ++-----
 .../devicetree/bindings/sound/qcom,q6apm.yaml | 51 +++++++++++++++++++
 2 files changed, 54 insertions(+), 16 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6apm.yaml

diff --git a/Documentation/devicetree/bindings/sound/qcom,q6apm-dai.yaml b/Documentation/devicetree/bindings/sound/qcom,q6apm-dai.yaml
index 24f7bf2bfd95..73a4afad5a74 100644
--- a/Documentation/devicetree/bindings/sound/qcom,q6apm-dai.yaml
+++ b/Documentation/devicetree/bindings/sound/qcom,q6apm-dai.yaml
@@ -27,20 +27,7 @@ additionalProperties: false
 
 examples:
   - |
-    #include <dt-bindings/soc/qcom,gpr.h>
-    gpr {
-        compatible = "qcom,gpr";
-        #address-cells = <1>;
-        #size-cells = <0>;
-        qcom,domain = <GPR_DOMAIN_ID_ADSP>;
-
-        service@1 {
-            compatible = "qcom,q6apm";
-            reg = <1>;
-
-            dais {
-                compatible = "qcom,q6apm-dais";
-                iommus = <&apps_smmu 0x1801 0x0>;
-            };
-        };
+    dais {
+        compatible = "qcom,q6apm-dais";
+        iommus = <&apps_smmu 0x1801 0x0>;
     };
diff --git a/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml b/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
new file mode 100644
index 000000000000..7acb832aa557
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
@@ -0,0 +1,51 @@
+# 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 (Q6APM)
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+allOf:
+  - $ref: /schemas/soc/qcom/qcom,apr-services.yaml#
+
+properties:
+  compatible:
+    enum:
+      - qcom,q6apm
+
+  dais:
+    type: object
+    $ref: /schemas/sound/qcom,q6apm-dai.yaml#
+    unevaluatedProperties: false
+    description: Qualcomm DSP audio ports
+
+required:
+  - compatible
+  - dais
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/soc/qcom,gpr.h>
+
+    gpr {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        service@1 {
+            reg = <GPR_APM_MODULE_IID>;
+            compatible = "qcom,q6apm";
+            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+
+            dais {
+                compatible = "qcom,q6apm-dais";
+                iommus = <&apps_smmu 0x1801 0x0>;
+            };
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 06/11] ASoC: dt-bindings: qcom,q6adm: Split to separate schema
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
                   ` (4 preceding siblings ...)
  2022-11-15 12:02 ` [PATCH v2 05/11] ASoC: dt-bindings: qcom,q6apm: " Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:41   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 07/11] ASoC: dt-bindings: qcom,q6asm: " Krzysztof Kozlowski
                   ` (5 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

The APR/GPR bindings with services got complicated so move out the Q6ADM
service to its own binding.  Previously the compatible was documented in
qcom,apr.yaml.  Move most of the examples from its children to this new
file.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../bindings/sound/qcom,q6adm-routing.yaml    | 22 ++------
 .../devicetree/bindings/sound/qcom,q6adm.yaml | 51 +++++++++++++++++++
 2 files changed, 54 insertions(+), 19 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6adm.yaml

diff --git a/Documentation/devicetree/bindings/sound/qcom,q6adm-routing.yaml b/Documentation/devicetree/bindings/sound/qcom,q6adm-routing.yaml
index d0f7a79e240a..b7ed2d3f21f9 100644
--- a/Documentation/devicetree/bindings/sound/qcom,q6adm-routing.yaml
+++ b/Documentation/devicetree/bindings/sound/qcom,q6adm-routing.yaml
@@ -30,23 +30,7 @@ additionalProperties: false
 
 examples:
   - |
-    #include <dt-bindings/soc/qcom,apr.h>
-    #include <dt-bindings/sound/qcom,q6asm.h>
-
-    apr {
-        compatible = "qcom,apr-v2";
-        qcom,domain = <APR_DOMAIN_ADSP>;
-        #address-cells = <1>;
-        #size-cells = <0>;
-
-        service@8 {
-            compatible = "qcom,q6adm";
-            reg = <APR_SVC_ADM>;
-            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
-
-            routing {
-                compatible = "qcom,q6adm-routing";
-                #sound-dai-cells = <0>;
-            };
-        };
+    routing {
+        compatible = "qcom,q6adm-routing";
+        #sound-dai-cells = <0>;
     };
diff --git a/Documentation/devicetree/bindings/sound/qcom,q6adm.yaml b/Documentation/devicetree/bindings/sound/qcom,q6adm.yaml
new file mode 100644
index 000000000000..fe14a97ea616
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,q6adm.yaml
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/qcom,q6adm.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Audio Device Manager (Q6ADM)
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+allOf:
+  - $ref: /schemas/soc/qcom/qcom,apr-services.yaml#
+
+properties:
+  compatible:
+    enum:
+      - qcom,q6adm
+
+  routing:
+    type: object
+    $ref: /schemas/sound/qcom,q6adm-routing.yaml#
+    unevaluatedProperties: false
+    description: Qualcomm DSP LPASS audio routing
+
+required:
+  - compatible
+  - routing
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/soc/qcom,apr.h>
+
+    apr {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        service@8 {
+            compatible = "qcom,q6adm";
+            reg = <APR_SVC_ADM>;
+            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+
+            routing {
+                compatible = "qcom,q6adm-routing";
+                #sound-dai-cells = <0>;
+            };
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 07/11] ASoC: dt-bindings: qcom,q6asm: Split to separate schema
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
                   ` (5 preceding siblings ...)
  2022-11-15 12:02 ` [PATCH v2 06/11] ASoC: dt-bindings: qcom,q6adm: " Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:41   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 08/11] ASoC: dt-bindings: qcom,q6prm: " Krzysztof Kozlowski
                   ` (4 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

The APR/GPR bindings with services got complicated so move out the Q6ASM
service to its own binding.  Previously the compatible was documented in
qcom,apr.yaml.  Move most of the examples from its children to this new
file.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../bindings/sound/qcom,q6asm-dais.yaml       | 48 +++++--------
 .../devicetree/bindings/sound/qcom,q6asm.yaml | 68 +++++++++++++++++++
 2 files changed, 84 insertions(+), 32 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6asm.yaml

diff --git a/Documentation/devicetree/bindings/sound/qcom,q6asm-dais.yaml b/Documentation/devicetree/bindings/sound/qcom,q6asm-dais.yaml
index 8deb8ffb143b..0110b38f6de9 100644
--- a/Documentation/devicetree/bindings/sound/qcom,q6asm-dais.yaml
+++ b/Documentation/devicetree/bindings/sound/qcom,q6asm-dais.yaml
@@ -73,40 +73,24 @@ additionalProperties: false
 
 examples:
   - |
-    #include <dt-bindings/soc/qcom,apr.h>
-    #include <dt-bindings/sound/qcom,q6asm.h>
-
-    apr {
-        compatible = "qcom,apr-v2";
-        qcom,domain = <APR_DOMAIN_ADSP>;
+    dais {
+        compatible = "qcom,q6asm-dais";
+        iommus = <&apps_smmu 0x1821 0x0>;
         #address-cells = <1>;
         #size-cells = <0>;
+        #sound-dai-cells = <1>;
+
+        dai@0 {
+            reg = <0>;
+        };
+
+        dai@1 {
+            reg = <1>;
+        };
 
-        service@7 {
-            compatible = "qcom,q6asm";
-            reg = <APR_SVC_ASM>;
-            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
-
-            dais {
-                compatible = "qcom,q6asm-dais";
-                iommus = <&apps_smmu 0x1821 0x0>;
-                #address-cells = <1>;
-                #size-cells = <0>;
-                #sound-dai-cells = <1>;
-
-                dai@0 {
-                    reg = <0>;
-                };
-
-                dai@1 {
-                    reg = <1>;
-                };
-
-                dai@2 {
-                    reg = <2>;
-                    is-compress-dai;
-                    direction = <1>;
-                };
-            };
+        dai@2 {
+            reg = <2>;
+            is-compress-dai;
+            direction = <1>;
         };
     };
diff --git a/Documentation/devicetree/bindings/sound/qcom,q6asm.yaml b/Documentation/devicetree/bindings/sound/qcom,q6asm.yaml
new file mode 100644
index 000000000000..cb49f9667cca
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,q6asm.yaml
@@ -0,0 +1,68 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/qcom,q6asm.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Audio Stream Manager (Q6ASM)
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+allOf:
+  - $ref: /schemas/soc/qcom/qcom,apr-services.yaml#
+
+properties:
+  compatible:
+    enum:
+      - qcom,q6asm
+
+  dais:
+    type: object
+    $ref: /schemas/sound/qcom,q6asm-dais.yaml#
+    unevaluatedProperties: false
+    description: Qualcomm DSP audio ports
+
+required:
+  - compatible
+  - dais
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/soc/qcom,apr.h>
+
+    apr {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        service@7 {
+            compatible = "qcom,q6asm";
+            reg = <APR_SVC_ASM>;
+            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+
+            dais {
+                compatible = "qcom,q6asm-dais";
+                iommus = <&apps_smmu 0x1821 0x0>;
+                #address-cells = <1>;
+                #size-cells = <0>;
+                #sound-dai-cells = <1>;
+
+                dai@0 {
+                    reg = <0>;
+                };
+
+                dai@1 {
+                    reg = <1>;
+                };
+
+                dai@2 {
+                    reg = <2>;
+                    is-compress-dai;
+                    direction = <1>;
+                };
+            };
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 08/11] ASoC: dt-bindings: qcom,q6prm: Split to separate schema
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
                   ` (6 preceding siblings ...)
  2022-11-15 12:02 ` [PATCH v2 07/11] ASoC: dt-bindings: qcom,q6asm: " Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:55   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 09/11] ASoC: dt-bindings: qcom,q6core: " Krzysztof Kozlowski
                   ` (3 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

The APR/GPR bindings with services got complicated so move out the Q6PRM
service to its own binding.  Previously the compatible was documented in
qcom,apr.yaml.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../devicetree/bindings/sound/qcom,q6prm.yaml | 50 +++++++++++++++++++
 1 file changed, 50 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6prm.yaml

diff --git a/Documentation/devicetree/bindings/sound/qcom,q6prm.yaml b/Documentation/devicetree/bindings/sound/qcom,q6prm.yaml
new file mode 100644
index 000000000000..f6dbb1267bfe
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,q6prm.yaml
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/qcom,q6prm.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Proxy Resource Manager (Q6PRM)
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+allOf:
+  - $ref: /schemas/soc/qcom/qcom,apr-services.yaml#
+
+properties:
+  compatible:
+    enum:
+      - qcom,q6prm
+
+  clock-controller:
+    $ref: /schemas/sound/qcom,q6dsp-lpass-clocks.yaml#
+    unevaluatedProperties: false
+    description: Qualcomm DSP LPASS clock controller
+
+required:
+  - compatible
+  - clock-controller
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/soc/qcom,gpr.h>
+
+    gpr {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        service@2 {
+            reg = <GPR_PRM_MODULE_IID>;
+            compatible = "qcom,q6prm";
+            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+
+            clock-controller {
+                compatible = "qcom,q6prm-lpass-clocks";
+                #clock-cells = <2>;
+            };
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 09/11] ASoC: dt-bindings: qcom,q6core: Split to separate schema
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
                   ` (7 preceding siblings ...)
  2022-11-15 12:02 ` [PATCH v2 08/11] ASoC: dt-bindings: qcom,q6prm: " Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:55   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 10/11] ASoC: dt-bindings: qcom,q6apm-lpass-dais: " Krzysztof Kozlowski
                   ` (2 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

The APR/GPR bindings with services got complicated so move out the
Q6Core service to its own binding.  Previously the compatible was
documented in qcom,apr.yaml.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../bindings/sound/qcom,q6core.yaml           | 39 +++++++++++++++++++
 1 file changed, 39 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6core.yaml

diff --git a/Documentation/devicetree/bindings/sound/qcom,q6core.yaml b/Documentation/devicetree/bindings/sound/qcom,q6core.yaml
new file mode 100644
index 000000000000..e240712de9ca
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,q6core.yaml
@@ -0,0 +1,39 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/qcom,q6core.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Audio Core (Q6Core)
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+allOf:
+  - $ref: /schemas/soc/qcom/qcom,apr-services.yaml#
+
+properties:
+  compatible:
+    enum:
+      - qcom,q6core
+
+required:
+  - compatible
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/soc/qcom,apr.h>
+
+    apr {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        service@3 {
+            compatible = "qcom,q6core";
+            reg = <APR_SVC_ADSP_CORE>;
+            qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 10/11] ASoC: dt-bindings: qcom,q6apm-lpass-dais: Split to separate schema
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
                   ` (8 preceding siblings ...)
  2022-11-15 12:02 ` [PATCH v2 09/11] ASoC: dt-bindings: qcom,q6core: " Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:56   ` Rob Herring
  2022-11-15 12:02 ` [PATCH v2 11/11] ASoC: dt-bindings: qcom,q6apm: Add SM8450 bedais node Krzysztof Kozlowski
  2022-11-28 16:39 ` [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Mark Brown
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

The Qualcomm DSP LPASS Audio DAIs are a bit different than Qualcomm DSP
Audio FrontEnd (Q6AFE) DAIs - they do not use children nodes for each
DAI.  None of other properties from qcom,q6dsp-lpass-ports.yaml apply
here as well, so move the qcom,q6apm-lpass-dais compatible to its own
binding.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../bindings/sound/qcom,q6apm-lpass-dais.yaml | 32 +++++++++++++++++++
 .../sound/qcom,q6dsp-lpass-ports.yaml         |  1 -
 2 files changed, 32 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml

diff --git a/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml b/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
new file mode 100644
index 000000000000..4b3ce779206b
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
@@ -0,0 +1,32 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/qcom,q6apm-lpass-dais.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm DSP LPASS (Low Power Audio SubSystem) Audio Ports
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+properties:
+  compatible:
+    enum:
+      - qcom,q6apm-lpass-dais
+
+  '#sound-dai-cells':
+    const: 1
+
+required:
+  - compatible
+  - '#sound-dai-cells'
+
+additionalProperties: false
+
+examples:
+  - |
+    dais {
+        compatible = "qcom,q6apm-lpass-dais";
+        #sound-dai-cells = <1>;
+    };
diff --git a/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-ports.yaml b/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-ports.yaml
index b202692f1756..d8ebf2e528d2 100644
--- a/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-ports.yaml
+++ b/Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-ports.yaml
@@ -16,7 +16,6 @@ properties:
   compatible:
     enum:
       - qcom,q6afe-dais
-      - qcom,q6apm-lpass-dais
 
   '#sound-dai-cells':
     const: 1
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH v2 11/11] ASoC: dt-bindings: qcom,q6apm: Add SM8450 bedais node
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
                   ` (9 preceding siblings ...)
  2022-11-15 12:02 ` [PATCH v2 10/11] ASoC: dt-bindings: qcom,q6apm-lpass-dais: " Krzysztof Kozlowski
@ 2022-11-15 12:02 ` Krzysztof Kozlowski
  2022-11-16 14:56   ` Rob Herring
  2022-11-28 16:39 ` [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Mark Brown
  11 siblings, 1 reply; 24+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-15 12:02 UTC (permalink / raw)
  To: Srinivas Kandagatla, Banajit Goswami, Andy Gross,
	Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Liam Girdwood, Mark Brown, alsa-devel, linux-arm-msm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski, quic_srivasam, quic_plai

On SM8450 and SC8280XP, the Q6APM is a bit different:
1. It is used as a platform DAI link, so it needs #sound-dai-cells.
2. It has two DAI children, so add new "bedais" node.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Cc: quic_srivasam@quicinc.com
Cc: quic_plai@quicinc.com
---
 .../devicetree/bindings/sound/qcom,q6apm.yaml    | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml b/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
index 7acb832aa557..cd434e8268ce 100644
--- a/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
+++ b/Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
@@ -18,14 +18,24 @@ properties:
     enum:
       - qcom,q6apm
 
+  bedais:
+    type: object
+    $ref: /schemas/sound/qcom,q6apm-lpass-dais.yaml#
+    unevaluatedProperties: false
+    description: Qualcomm DSP audio ports
+
   dais:
     type: object
     $ref: /schemas/sound/qcom,q6apm-dai.yaml#
     unevaluatedProperties: false
     description: Qualcomm DSP audio ports
 
+  '#sound-dai-cells':
+    const: 0
+
 required:
   - compatible
+  - bedais
   - dais
 
 unevaluatedProperties: false
@@ -41,11 +51,17 @@ examples:
         service@1 {
             reg = <GPR_APM_MODULE_IID>;
             compatible = "qcom,q6apm";
+            #sound-dai-cells = <0>;
             qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
 
             dais {
                 compatible = "qcom,q6apm-dais";
                 iommus = <&apps_smmu 0x1801 0x0>;
             };
+
+            bedais {
+                compatible = "qcom,q6apm-lpass-dais";
+                #sound-dai-cells = <1>;
+            };
         };
     };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 01/11] ASoC: dt-bindings: qcom,apr: Add GLINK channel name for SM8450
  2022-11-15 12:02 ` [PATCH v2 01/11] ASoC: dt-bindings: qcom,apr: Add GLINK channel name " Krzysztof Kozlowski
@ 2022-11-16 14:28   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:28 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: devicetree, quic_srivasam, linux-arm-msm, alsa-devel, Andy Gross,
	Liam Girdwood, Bjorn Andersson, Rob Herring, Banajit Goswami,
	linux-kernel, Konrad Dybcio, Krzysztof Kozlowski, quic_plai,
	Mark Brown, Srinivas Kandagatla


On Tue, 15 Nov 2022 13:02:25 +0100, Krzysztof Kozlowski wrote:
> On SM8450 and SC8280XP with Qualcomm GPR, the GLINK channel name
> (qcom,glink-channels) for ADSP is "adsp_apps".
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../devicetree/bindings/soc/qcom/qcom,apr.yaml        | 11 +++++++++--
>  1 file changed, 9 insertions(+), 2 deletions(-)
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 02/11] ASoC: dt-bindings: qcom,apr: Split services to shared schema
  2022-11-15 12:02 ` [PATCH v2 02/11] ASoC: dt-bindings: qcom,apr: Split services to shared schema Krzysztof Kozlowski
@ 2022-11-16 14:33   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:33 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: quic_srivasam, devicetree, Liam Girdwood, Banajit Goswami,
	Krzysztof Kozlowski, Mark Brown, Rob Herring,
	Srinivas Kandagatla, linux-kernel, quic_plai, Andy Gross,
	Konrad Dybcio, alsa-devel, Bjorn Andersson, linux-arm-msm


On Tue, 15 Nov 2022 13:02:26 +0100, Krzysztof Kozlowski wrote:
> The APR/GPR nodes are organized like:
> 
>   apr-or-gpr-device-node <- qcom,apr.yaml
>     apr-gpr-service@[0-9] <- qcom,apr.yaml
>       service-specific-components <- /schemas/sound/qcom,q6*.yaml
> 
> The schema for services (apr-gpr-service@[0-9]) already grows
> considerably and is still quite not specific.  It allows several
> incorrect combinations, like adding a clock-controller to a APM device.
> Restricting it would complicate the schema even more.  Bringing new
> support for sound on Qualcomm SM8450 and SC8280XP SoC would grow it as
> well.
> 
> Simplify the qcom,apr.yaml by splitting the services to a shared file
> which will be:
> 1. Referenced by qcom,apr.yaml with additionalProperties:true,
> 2. Referenced by specific bindings for services with
>    additionalProperties:false (not yet in this commit).
> 
> While moving the code, add also required 'reg' and
> 'qcom,protection-domain' to further constrain the bindings.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v1:
> 1. Keep compatibles in qcom,apr.yaml
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../bindings/soc/qcom/qcom,apr-services.yaml  | 54 ++++++++++
>  .../bindings/soc/qcom/qcom,apr.yaml           | 98 +------------------
>  MAINTAINERS                                   |  2 +-
>  3 files changed, 58 insertions(+), 96 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,apr-services.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 03/11] ASoC: dt-bindings: qcom,apr: Correct and extend example
  2022-11-15 12:02 ` [PATCH v2 03/11] ASoC: dt-bindings: qcom,apr: Correct and extend example Krzysztof Kozlowski
@ 2022-11-16 14:37   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:37 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: linux-kernel, alsa-devel, Andy Gross, Mark Brown, linux-arm-msm,
	Konrad Dybcio, Banajit Goswami, devicetree, quic_srivasam,
	quic_plai, Liam Girdwood, Krzysztof Kozlowski,
	Srinivas Kandagatla, Bjorn Andersson, Rob Herring


On Tue, 15 Nov 2022 13:02:27 +0100, Krzysztof Kozlowski wrote:
> Correct the APR/GPR example:
> 1. Use consistent 4-space indentation,
> 2. Add required properties to services nodes, so the binding check
>    passes once schema for these services is improved,
> 3. Add few other properties as APR/GPR is part of a GLINK edge:
>    qcom,glink-channels and qcom,intents.
> 4. Drop unnecessary services, to make the example compact.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v1:
> 1. New patch.
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../bindings/soc/qcom/qcom,apr.yaml           | 61 ++++++++++++-------
>  1 file changed, 39 insertions(+), 22 deletions(-)
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 04/11] ASoC: dt-bindings: qcom,q6afe: Split to separate schema
  2022-11-15 12:02 ` [PATCH v2 04/11] ASoC: dt-bindings: qcom,q6afe: Split to separate schema Krzysztof Kozlowski
@ 2022-11-16 14:39   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:39 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, quic_srivasam, Konrad Dybcio, alsa-devel,
	devicetree, linux-kernel, quic_plai, Liam Girdwood,
	Krzysztof Kozlowski, Srinivas Kandagatla, linux-arm-msm,
	Andy Gross, Banajit Goswami, Mark Brown, Rob Herring


On Tue, 15 Nov 2022 13:02:28 +0100, Krzysztof Kozlowski wrote:
> The APR/GPR bindings with services got complicated so move out the Q6AFE
> service to its own binding.  Previously the compatible was documented in
> qcom,apr.yaml.  Move most of the examples from its children to this new
> file.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../devicetree/bindings/sound/qcom,q6afe.yaml | 68 +++++++++++++++++++
>  .../sound/qcom,q6dsp-lpass-clocks.yaml        | 40 +----------
>  .../sound/qcom,q6dsp-lpass-ports.yaml         | 56 +++------------
>  3 files changed, 80 insertions(+), 84 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6afe.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 05/11] ASoC: dt-bindings: qcom,q6apm: Split to separate schema
  2022-11-15 12:02 ` [PATCH v2 05/11] ASoC: dt-bindings: qcom,q6apm: " Krzysztof Kozlowski
@ 2022-11-16 14:39   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:39 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Banajit Goswami, Rob Herring, linux-kernel, quic_srivasam,
	Bjorn Andersson, Konrad Dybcio, Srinivas Kandagatla,
	Krzysztof Kozlowski, Mark Brown, alsa-devel, Liam Girdwood,
	linux-arm-msm, quic_plai, devicetree, Andy Gross


On Tue, 15 Nov 2022 13:02:29 +0100, Krzysztof Kozlowski wrote:
> The APR/GPR bindings with services got complicated so move out the Q6APM
> service to its own binding.  Previously the compatible was documented in
> qcom,apr.yaml.  Move most of the examples from its children to this new
> file.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../bindings/sound/qcom,q6apm-dai.yaml        | 19 ++-----
>  .../devicetree/bindings/sound/qcom,q6apm.yaml | 51 +++++++++++++++++++
>  2 files changed, 54 insertions(+), 16 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6apm.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 06/11] ASoC: dt-bindings: qcom,q6adm: Split to separate schema
  2022-11-15 12:02 ` [PATCH v2 06/11] ASoC: dt-bindings: qcom,q6adm: " Krzysztof Kozlowski
@ 2022-11-16 14:41   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:41 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: linux-kernel, quic_srivasam, Bjorn Andersson, linux-arm-msm,
	Krzysztof Kozlowski, quic_plai, alsa-devel, Srinivas Kandagatla,
	Liam Girdwood, Konrad Dybcio, Banajit Goswami, Mark Brown,
	Andy Gross, devicetree, Rob Herring


On Tue, 15 Nov 2022 13:02:30 +0100, Krzysztof Kozlowski wrote:
> The APR/GPR bindings with services got complicated so move out the Q6ADM
> service to its own binding.  Previously the compatible was documented in
> qcom,apr.yaml.  Move most of the examples from its children to this new
> file.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../bindings/sound/qcom,q6adm-routing.yaml    | 22 ++------
>  .../devicetree/bindings/sound/qcom,q6adm.yaml | 51 +++++++++++++++++++
>  2 files changed, 54 insertions(+), 19 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6adm.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 07/11] ASoC: dt-bindings: qcom,q6asm: Split to separate schema
  2022-11-15 12:02 ` [PATCH v2 07/11] ASoC: dt-bindings: qcom,q6asm: " Krzysztof Kozlowski
@ 2022-11-16 14:41   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:41 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Konrad Dybcio, Mark Brown, quic_plai, Rob Herring, linux-arm-msm,
	devicetree, linux-kernel, Krzysztof Kozlowski, Banajit Goswami,
	Liam Girdwood, Andy Gross, Bjorn Andersson, alsa-devel,
	quic_srivasam, Srinivas Kandagatla


On Tue, 15 Nov 2022 13:02:31 +0100, Krzysztof Kozlowski wrote:
> The APR/GPR bindings with services got complicated so move out the Q6ASM
> service to its own binding.  Previously the compatible was documented in
> qcom,apr.yaml.  Move most of the examples from its children to this new
> file.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../bindings/sound/qcom,q6asm-dais.yaml       | 48 +++++--------
>  .../devicetree/bindings/sound/qcom,q6asm.yaml | 68 +++++++++++++++++++
>  2 files changed, 84 insertions(+), 32 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6asm.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 08/11] ASoC: dt-bindings: qcom,q6prm: Split to separate schema
  2022-11-15 12:02 ` [PATCH v2 08/11] ASoC: dt-bindings: qcom,q6prm: " Krzysztof Kozlowski
@ 2022-11-16 14:55   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:55 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: quic_srivasam, Banajit Goswami, Bjorn Andersson, quic_plai,
	Rob Herring, Mark Brown, alsa-devel, linux-arm-msm,
	Liam Girdwood, devicetree, linux-kernel, Konrad Dybcio,
	Krzysztof Kozlowski, Andy Gross, Srinivas Kandagatla


On Tue, 15 Nov 2022 13:02:32 +0100, Krzysztof Kozlowski wrote:
> The APR/GPR bindings with services got complicated so move out the Q6PRM
> service to its own binding.  Previously the compatible was documented in
> qcom,apr.yaml.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../devicetree/bindings/sound/qcom,q6prm.yaml | 50 +++++++++++++++++++
>  1 file changed, 50 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6prm.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 09/11] ASoC: dt-bindings: qcom,q6core: Split to separate schema
  2022-11-15 12:02 ` [PATCH v2 09/11] ASoC: dt-bindings: qcom,q6core: " Krzysztof Kozlowski
@ 2022-11-16 14:55   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:55 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: devicetree, Mark Brown, Krzysztof Kozlowski, linux-kernel,
	Konrad Dybcio, Bjorn Andersson, alsa-devel, Rob Herring,
	Banajit Goswami, linux-arm-msm, quic_plai, quic_srivasam,
	Srinivas Kandagatla, Liam Girdwood, Andy Gross


On Tue, 15 Nov 2022 13:02:33 +0100, Krzysztof Kozlowski wrote:
> The APR/GPR bindings with services got complicated so move out the
> Q6Core service to its own binding.  Previously the compatible was
> documented in qcom,apr.yaml.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../bindings/sound/qcom,q6core.yaml           | 39 +++++++++++++++++++
>  1 file changed, 39 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6core.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 10/11] ASoC: dt-bindings: qcom,q6apm-lpass-dais: Split to separate schema
  2022-11-15 12:02 ` [PATCH v2 10/11] ASoC: dt-bindings: qcom,q6apm-lpass-dais: " Krzysztof Kozlowski
@ 2022-11-16 14:56   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:56 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: quic_srivasam, Krzysztof Kozlowski, devicetree, quic_plai,
	Banajit Goswami, Konrad Dybcio, Srinivas Kandagatla,
	linux-arm-msm, Bjorn Andersson, linux-kernel, Andy Gross,
	Liam Girdwood, alsa-devel, Rob Herring, Mark Brown


On Tue, 15 Nov 2022 13:02:34 +0100, Krzysztof Kozlowski wrote:
> The Qualcomm DSP LPASS Audio DAIs are a bit different than Qualcomm DSP
> Audio FrontEnd (Q6AFE) DAIs - they do not use children nodes for each
> DAI.  None of other properties from qcom,q6dsp-lpass-ports.yaml apply
> here as well, so move the qcom,q6apm-lpass-dais compatible to its own
> binding.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../bindings/sound/qcom,q6apm-lpass-dais.yaml | 32 +++++++++++++++++++
>  .../sound/qcom,q6dsp-lpass-ports.yaml         |  1 -
>  2 files changed, 32 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 11/11] ASoC: dt-bindings: qcom,q6apm: Add SM8450 bedais node
  2022-11-15 12:02 ` [PATCH v2 11/11] ASoC: dt-bindings: qcom,q6apm: Add SM8450 bedais node Krzysztof Kozlowski
@ 2022-11-16 14:56   ` Rob Herring
  0 siblings, 0 replies; 24+ messages in thread
From: Rob Herring @ 2022-11-16 14:56 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Liam Girdwood, devicetree, Andy Gross, Mark Brown,
	Bjorn Andersson, linux-arm-msm, Konrad Dybcio, alsa-devel,
	linux-kernel, quic_srivasam, quic_plai, Banajit Goswami,
	Rob Herring, Krzysztof Kozlowski, Srinivas Kandagatla


On Tue, 15 Nov 2022 13:02:35 +0100, Krzysztof Kozlowski wrote:
> On SM8450 and SC8280XP, the Q6APM is a bit different:
> 1. It is used as a platform DAI link, so it needs #sound-dai-cells.
> 2. It has two DAI children, so add new "bedais" node.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Cc: quic_srivasam@quicinc.com
> Cc: quic_plai@quicinc.com
> ---
>  .../devicetree/bindings/sound/qcom,q6apm.yaml    | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450
  2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
                   ` (10 preceding siblings ...)
  2022-11-15 12:02 ` [PATCH v2 11/11] ASoC: dt-bindings: qcom,q6apm: Add SM8450 bedais node Krzysztof Kozlowski
@ 2022-11-28 16:39 ` Mark Brown
  11 siblings, 0 replies; 24+ messages in thread
From: Mark Brown @ 2022-11-28 16:39 UTC (permalink / raw)
  To: linux-arm-msm, Konrad Dybcio, linux-kernel, alsa-devel,
	devicetree, Andy Gross, Srinivas Kandagatla, Rob Herring,
	Bjorn Andersson, Krzysztof Kozlowski, Liam Girdwood,
	Banajit Goswami, Krzysztof Kozlowski
  Cc: quic_srivasam, quic_plai

On Tue, 15 Nov 2022 13:02:24 +0100, Krzysztof Kozlowski wrote:
> Changes since v1
> ================
> 1. Patch 2: Keep compatibles in qcom,apr.yaml.
> 2. Patch 3: New patch.
> 
> Description
> ===========
> Adding sound support for Qualcomm SM8450 SoC (and later for SC8280XP) brought
> some changes to APR/GPR services bindings.  These bindings are part of
> qcom,apr.yaml:
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next

Thanks!

[01/11] ASoC: dt-bindings: qcom,apr: Add GLINK channel name for SM8450
        commit: 0dd3618e06f86bbdacad3a40b25bf79b8917000c
[02/11] ASoC: dt-bindings: qcom,apr: Split services to shared schema
        commit: 41288c30583646e2b4158c75ccdbddc62597e1fa
[03/11] ASoC: dt-bindings: qcom,apr: Correct and extend example
        commit: cd9ba3d065bb94f3c20e36ed400269a285bfa46d
[04/11] ASoC: dt-bindings: qcom,q6afe: Split to separate schema
        commit: 3e9c0c86267377f1404bc55051f476a0456dcced
[05/11] ASoC: dt-bindings: qcom,q6apm: Split to separate schema
        commit: 6180b3252010f7cccdef896faf305456df4c45cf
[06/11] ASoC: dt-bindings: qcom,q6adm: Split to separate schema
        commit: f26a776ea5ea22b5a92b0619af54d202e4027524
[07/11] ASoC: dt-bindings: qcom,q6asm: Split to separate schema
        commit: 83c8fa5e85e556e6aa3e95e7070ef738964ebd17
[08/11] ASoC: dt-bindings: qcom,q6prm: Split to separate schema
        commit: 8009abe0f14052bbfadcdaba7887226b40dfdb51
[09/11] ASoC: dt-bindings: qcom,q6core: Split to separate schema
        commit: 7eea2bed3602a2b2e71146e0110d42f6edf917f5
[10/11] ASoC: dt-bindings: qcom,q6apm-lpass-dais: Split to separate schema
        commit: 8c7ac825481602e356d96db9424b4d4e23a6a1d3
[11/11] ASoC: dt-bindings: qcom,q6apm: Add SM8450 bedais node
        commit: b386acc043f44a730d5117b71b75e818cede21cc

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2022-11-28 16:39 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-15 12:02 [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Krzysztof Kozlowski
2022-11-15 12:02 ` [PATCH v2 01/11] ASoC: dt-bindings: qcom,apr: Add GLINK channel name " Krzysztof Kozlowski
2022-11-16 14:28   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 02/11] ASoC: dt-bindings: qcom,apr: Split services to shared schema Krzysztof Kozlowski
2022-11-16 14:33   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 03/11] ASoC: dt-bindings: qcom,apr: Correct and extend example Krzysztof Kozlowski
2022-11-16 14:37   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 04/11] ASoC: dt-bindings: qcom,q6afe: Split to separate schema Krzysztof Kozlowski
2022-11-16 14:39   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 05/11] ASoC: dt-bindings: qcom,q6apm: " Krzysztof Kozlowski
2022-11-16 14:39   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 06/11] ASoC: dt-bindings: qcom,q6adm: " Krzysztof Kozlowski
2022-11-16 14:41   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 07/11] ASoC: dt-bindings: qcom,q6asm: " Krzysztof Kozlowski
2022-11-16 14:41   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 08/11] ASoC: dt-bindings: qcom,q6prm: " Krzysztof Kozlowski
2022-11-16 14:55   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 09/11] ASoC: dt-bindings: qcom,q6core: " Krzysztof Kozlowski
2022-11-16 14:55   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 10/11] ASoC: dt-bindings: qcom,q6apm-lpass-dais: " Krzysztof Kozlowski
2022-11-16 14:56   ` Rob Herring
2022-11-15 12:02 ` [PATCH v2 11/11] ASoC: dt-bindings: qcom,q6apm: Add SM8450 bedais node Krzysztof Kozlowski
2022-11-16 14:56   ` Rob Herring
2022-11-28 16:39 ` [PATCH v2 00/11] ASoC: dt-bindings: Rework Qualcomm APR/GPR Sound nodes for SM8450 Mark Brown

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).