Re: [PATCH v2] ASoC: dt-bindings: simple-card: add triggers properties

From: Rob Herring
Date: Tue Jul 18 2023 - 18:09:38 EST


On Sat, Jul 15, 2023 at 11:30:43AM +0300, Maxim Kochetkov wrote:
> The trigger-start/stop properties allows to specify DAI link
> trigger ordering method.

Obviously. Why do you need these? What problem does it solve?

I don't think these belong in simple-card. What's next? What if you need
delays between each step? This is the problem with 'simple' or 'generic'
bindings. It's a never ending addition of properties which are not well
thought out.

>
> Signed-off-by: Maxim Kochetkov <fido_max@xxxxxxxx>
> ---
> .../bindings/sound/simple-card.yaml | 31 +++++++++++++++++++
> 1 file changed, 31 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/sound/simple-card.yaml b/Documentation/devicetree/bindings/sound/simple-card.yaml
> index 59ac2d1d1ccf..f1878d470d83 100644
> --- a/Documentation/devicetree/bindings/sound/simple-card.yaml
> +++ b/Documentation/devicetree/bindings/sound/simple-card.yaml
> @@ -99,6 +99,28 @@ definitions:
> description: the widget names for which pin switches must be created.
> $ref: /schemas/types.yaml#/definitions/string-array
>
> + trigger-start:
> + description: |-
> + Start trigger ordering method:
> + default: Link->Component->DAI
> + ldc: Link->DAI->Component
> + $ref: /schemas/types.yaml#/definitions/string
> + items:
> + enum:
> + - default

Why do you need a value of 'default'? What's the default when the
property is not present?

> + - ldc
> +
> + trigger-stop:
> + description: |-
> + Stop trigger ordering method:
> + default: DAI->Component->Link
> + ldc: Component->DAI->Link
> + $ref: /schemas/types.yaml#/definitions/string
> + items:
> + enum:
> + - default
> + - ldc
> +
> format:
> description: audio format.
> items:
> @@ -210,6 +232,10 @@ properties:
> maxItems: 1
> simple-audio-card,mic-det-gpio:
> maxItems: 1
> + simple-audio-card,trigger-start:
> + $ref: "#/definitions/trigger-start"
> + simple-audio-card,trigger-stop:
> + $ref: "#/definitions/trigger-stop"

Don't continue this 'simple-audio-card,' prefix pattern. With it, no
other binding can use these properties.

>
> patternProperties:
> "^simple-audio-card,cpu(@[0-9a-f]+)?$":
> @@ -259,6 +285,11 @@ patternProperties:
> maxItems: 1
> mic-det-gpio:
> maxItems: 1
> + trigger-start:
> + $ref: "#/definitions/trigger-start"
> + trigger-stop:
> + $ref: "#/definitions/trigger-stop"
> +
>
> patternProperties:
> "^cpu(-[0-9]+)?$":
> --
> 2.40.1
>