All of lore.kernel.org
 help / color / mirror / Atom feed
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Geert Uytterhoeven <geert+renesas@glider.be>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Mark Brown <broonie@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Damien Horsley <Damien.Horsley@imgtec.com>,
	Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Cc: alsa-devel@alsa-project.org, devicetree@vger.kernel.org,
	linux-renesas-soc@vger.kernel.org
Subject: Re: [PATCH 1/2] dt-bindings: sound: ti,pcm3168a: Convert to json-schema
Date: Sat, 3 Dec 2022 13:13:24 +0100	[thread overview]
Message-ID: <b105572c-96fe-dbad-c435-43233cfb25a7@linaro.org> (raw)
In-Reply-To: <9f2a2474ec71dcc2a76e868295202a8c425a5d41.1669980383.git.geert+renesas@glider.be>

On 02/12/2022 13:55, Geert Uytterhoeven wrote:
> Convert the Texas Instruments PCM3168A Audio Codec Device Tree binding
> documentation to json-schema.
> 
> Add missing properties.
> Drop unneeded pinctrl properties from example.

Thank you for your patch. There is something to discuss/improve.

> +description:
> +  The Texas Instruments PCM3168A is a 24-bit Multi-channel Audio CODEC with
> +  96/192kHz sampling rate, supporting both SPI and I2C bus access.
> +
> +properties:
> +  compatible:
> +    const: ti,pcm3168a
> +
> +  reg:
> +    maxItems: 1
> +
> +  clocks:
> +    items:
> +      - description: System clock input
> +
> +  clock-names:
> +    items:
> +      - const: scki
> +
> +  reset-gpios:
> +    items:
> +      - description: |
> +          GPIO line connected to the active-low RST pin of the codec.
> +            RST = low: device power-down
> +            RST = high: device is enabled
> +
> +  "#sound-dai-cells":
> +    enum: [0, 1]

This is a bit unexpected. Looking at DTSes:
1. I see in ulcb-kf.dtsi with cells==0, but two endpoints. The dai cells
seem unused? In such case shall dai-cells be skipped if we have endpoints?

2. in k3-j721e-common-proc-board.dts has cells=1, but user's phandle
does not have an argument, so practically it is ==0? The user -
sound/soc/ti/j721e-evm.c - just gets the node and does not use cells,
right? So even though dai-cells==1, it does not matter, because user
gets its own parsing?

3. The pcm3168a driver also does not have any xlate function, but it
registers to DAIs, so all uses should be with cells==1 to select proper
DAI...


> +
> +  VDD1-supply:
> +    description: Digital power supply regulator 1 (+3.3V)
> +
> +  VDD2-supply:
> +    description: Digital power supply regulator 2 (+3.3V)
> +
> +  VCCAD1-supply:
> +    description: ADC power supply regulator 1 (+5V)
> +
> +  VCCAD2-supply:
> +    description: ADC power supply regulator 2 (+5V)
> +
> +  VCCDA1-supply:
> +    description: DAC power supply regulator 1 (+5V)
> +
> +  VCCDA2-supply:
> +    description: DAC power supply regulator 2 (+5V)
> +
> +  ports:
> +    $ref: /schemas/graph.yaml#/properties/ports
> +    properties:
> +      port@0:
> +        $ref: audio-graph-port.yaml#
> +        description: Audio input port.

unevaluatedProperties: false

> +
> +      port@1:
> +        $ref: audio-graph-port.yaml#
> +        description: Audio output port.

unevaluatedProperties: false


> +
> +required:
> +  - compatible
> +  - reg
> +  - clocks
> +  - clock-names
> +  - VDD1-supply
> +  - VDD2-supply
> +  - VCCAD1-supply
> +  - VCCAD2-supply
> +  - VCCDA1-supply
> +  - VCCDA2-supply
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/gpio/gpio.h>
> +
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        pcm3168a: audio-codec@44 {
> +            compatible = "ti,pcm3168a";
> +            reg = <0x44>;
> +            reset-gpios = <&gpio0 4 GPIO_ACTIVE_LOW>;
> +            clocks = <&clk_core 42>;
> +            clock-names = "scki";
> +            VDD1-supply = <&supply3v3>;
> +            VDD2-supply = <&supply3v3>;
> +            VCCAD1-supply = <&supply5v0>;
> +            VCCAD2-supply = <&supply5v0>;
> +            VCCDA1-supply = <&supply5v0>;
> +            VCCDA2-supply = <&supply5v0>;

Can you extend the example with dai cells or with endpoints (or both,
depending on my previous comment...)

> +        };
> +    };

Best regards,
Krzysztof


WARNING: multiple messages have this Message-ID (diff)
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Geert Uytterhoeven <geert+renesas@glider.be>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Mark Brown <broonie@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Damien Horsley <Damien.Horsley@imgtec.com>,
	Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Cc: linux-renesas-soc@vger.kernel.org, devicetree@vger.kernel.org,
	alsa-devel@alsa-project.org
Subject: Re: [PATCH 1/2] dt-bindings: sound: ti,pcm3168a: Convert to json-schema
Date: Sat, 3 Dec 2022 13:13:24 +0100	[thread overview]
Message-ID: <b105572c-96fe-dbad-c435-43233cfb25a7@linaro.org> (raw)
In-Reply-To: <9f2a2474ec71dcc2a76e868295202a8c425a5d41.1669980383.git.geert+renesas@glider.be>

On 02/12/2022 13:55, Geert Uytterhoeven wrote:
> Convert the Texas Instruments PCM3168A Audio Codec Device Tree binding
> documentation to json-schema.
> 
> Add missing properties.
> Drop unneeded pinctrl properties from example.

Thank you for your patch. There is something to discuss/improve.

> +description:
> +  The Texas Instruments PCM3168A is a 24-bit Multi-channel Audio CODEC with
> +  96/192kHz sampling rate, supporting both SPI and I2C bus access.
> +
> +properties:
> +  compatible:
> +    const: ti,pcm3168a
> +
> +  reg:
> +    maxItems: 1
> +
> +  clocks:
> +    items:
> +      - description: System clock input
> +
> +  clock-names:
> +    items:
> +      - const: scki
> +
> +  reset-gpios:
> +    items:
> +      - description: |
> +          GPIO line connected to the active-low RST pin of the codec.
> +            RST = low: device power-down
> +            RST = high: device is enabled
> +
> +  "#sound-dai-cells":
> +    enum: [0, 1]

This is a bit unexpected. Looking at DTSes:
1. I see in ulcb-kf.dtsi with cells==0, but two endpoints. The dai cells
seem unused? In such case shall dai-cells be skipped if we have endpoints?

2. in k3-j721e-common-proc-board.dts has cells=1, but user's phandle
does not have an argument, so practically it is ==0? The user -
sound/soc/ti/j721e-evm.c - just gets the node and does not use cells,
right? So even though dai-cells==1, it does not matter, because user
gets its own parsing?

3. The pcm3168a driver also does not have any xlate function, but it
registers to DAIs, so all uses should be with cells==1 to select proper
DAI...


> +
> +  VDD1-supply:
> +    description: Digital power supply regulator 1 (+3.3V)
> +
> +  VDD2-supply:
> +    description: Digital power supply regulator 2 (+3.3V)
> +
> +  VCCAD1-supply:
> +    description: ADC power supply regulator 1 (+5V)
> +
> +  VCCAD2-supply:
> +    description: ADC power supply regulator 2 (+5V)
> +
> +  VCCDA1-supply:
> +    description: DAC power supply regulator 1 (+5V)
> +
> +  VCCDA2-supply:
> +    description: DAC power supply regulator 2 (+5V)
> +
> +  ports:
> +    $ref: /schemas/graph.yaml#/properties/ports
> +    properties:
> +      port@0:
> +        $ref: audio-graph-port.yaml#
> +        description: Audio input port.

unevaluatedProperties: false

> +
> +      port@1:
> +        $ref: audio-graph-port.yaml#
> +        description: Audio output port.

unevaluatedProperties: false


> +
> +required:
> +  - compatible
> +  - reg
> +  - clocks
> +  - clock-names
> +  - VDD1-supply
> +  - VDD2-supply
> +  - VCCAD1-supply
> +  - VCCAD2-supply
> +  - VCCDA1-supply
> +  - VCCDA2-supply
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/gpio/gpio.h>
> +
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        pcm3168a: audio-codec@44 {
> +            compatible = "ti,pcm3168a";
> +            reg = <0x44>;
> +            reset-gpios = <&gpio0 4 GPIO_ACTIVE_LOW>;
> +            clocks = <&clk_core 42>;
> +            clock-names = "scki";
> +            VDD1-supply = <&supply3v3>;
> +            VDD2-supply = <&supply3v3>;
> +            VCCAD1-supply = <&supply5v0>;
> +            VCCAD2-supply = <&supply5v0>;
> +            VCCDA1-supply = <&supply5v0>;
> +            VCCDA2-supply = <&supply5v0>;

Can you extend the example with dai cells or with endpoints (or both,
depending on my previous comment...)

> +        };
> +    };

Best regards,
Krzysztof


  reply	other threads:[~2022-12-03 12:13 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-02 12:55 [PATCH 0/2] dt-bindings: sound: ti,pcm3168a: json-schema conversion and fixes Geert Uytterhoeven
2022-12-02 12:55 ` [PATCH 0/2] dt-bindings: sound: ti, pcm3168a: " Geert Uytterhoeven
2022-12-02 12:55 ` [PATCH 1/2] dt-bindings: sound: ti,pcm3168a: Convert to json-schema Geert Uytterhoeven
2022-12-02 12:55   ` Geert Uytterhoeven
2022-12-03 12:13   ` Krzysztof Kozlowski [this message]
2022-12-03 12:13     ` Krzysztof Kozlowski
2022-12-05  8:00     ` Geert Uytterhoeven
2022-12-05  8:00       ` [PATCH 1/2] dt-bindings: sound: ti, pcm3168a: " Geert Uytterhoeven
2022-12-06  9:16       ` [PATCH 1/2] dt-bindings: sound: ti,pcm3168a: " Krzysztof Kozlowski
2022-12-06  9:16         ` Krzysztof Kozlowski
2022-12-02 12:55 ` [PATCH/RFC 2/2] arm64: dts: renesas: ulcb-kf: Fix pcm3168a audio codec node Geert Uytterhoeven
2022-12-02 12:55   ` Geert Uytterhoeven
2022-12-07  0:36   ` Kuninori Morimoto
2022-12-07  0:36     ` Kuninori Morimoto
2022-12-12 23:49     ` Kuninori Morimoto
2022-12-12 23:49       ` Kuninori Morimoto
2022-12-13  8:31       ` Geert Uytterhoeven
2022-12-13  8:31         ` Geert Uytterhoeven
2022-12-13 23:10         ` Kuninori Morimoto
2022-12-13 23:10           ` Kuninori Morimoto

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b105572c-96fe-dbad-c435-43233cfb25a7@linaro.org \
    --to=krzysztof.kozlowski@linaro.org \
    --cc=Damien.Horsley@imgtec.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=geert+renesas@glider.be \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=kuninori.morimoto.gx@renesas.com \
    --cc=lgirdwood@gmail.com \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.