[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210728173649.GA1290628@robh.at.kernel.org>
Date: Wed, 28 Jul 2021 11:36:49 -0600
From: Rob Herring <robh@...nel.org>
To: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>
Cc: bjorn.andersson@...aro.org, broonie@...nel.org,
plai@...eaurora.org, tiwai@...e.de, devicetree@...r.kernel.org,
perex@...ex.cz, alsa-devel@...a-project.org,
linux-kernel@...r.kernel.org, lgirdwood@...il.com,
bgoswami@...eaurora.org
Subject: Re: [PATCH v2 04/16] ASoC: qcom: dt-bindings: add bindings Audio
Processing manager
On Wed, Jul 14, 2021 at 04:30:27PM +0100, Srinivas Kandagatla wrote:
> 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.
This all looks fairly similar to the prior Qcom audio binding(s). It
would be nice to not see this all re-invented.
>
> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>
> ---
> .../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@...aro.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]+$':
This means '.*apm' for the node name. Did you need a '^'?
> + 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>
Why add this indirection? Rename the file if you need something to cover
both.
> +
> +#endif /* __DT_BINDINGS_Q6_APM_H__ */
> --
> 2.21.0
>
>
Powered by blists - more mailing lists