From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: luca.ceresoli@bootlin.com, alsa-devel@alsa-project.org,
linux-rockchip@lists.infradead.org
Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>, Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Heiko Stuebner <heiko@sntech.de>,
Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>,
Nicolas Frattaroli <frattaroli.nicolas@gmail.com>,
Philipp Zabel <p.zabel@pengutronix.de>,
Johan Jonker <jbx6244@gmail.com>,
Chris Morgan <macromorgan@hotmail.com>
Subject: Re: [PATCH 1/8] ASoC: rockchip: rk3308: add internal audio codec bindings
Date: Thu, 8 Sep 2022 13:53:39 +0200 [thread overview]
Message-ID: <d447edf0-1726-d742-d932-d24707657691@linaro.org> (raw)
In-Reply-To: <20220907142124.2532620-2-luca.ceresoli@bootlin.com>
On 07/09/2022 16:21, luca.ceresoli@bootlin.com wrote:
> From: Luca Ceresoli <luca.ceresoli@bootlin.com>
>
> Add device tree bindings document for the internal audio codec of the
> Rockchip RK3308 SoC.
>
> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Use subject prefixes matching the subsystem (git log --oneline -- ...).
> ---
> .../bindings/sound/rockchip,rk3308-codec.yaml | 102 ++++++++++++++++++
> MAINTAINERS | 6 ++
> .../dt-bindings/sound/rockchip,rk3308-codec.h | 15 +++
> 3 files changed, 123 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/sound/rockchip,rk3308-codec.yaml
> create mode 100644 include/dt-bindings/sound/rockchip,rk3308-codec.h
>
> diff --git a/Documentation/devicetree/bindings/sound/rockchip,rk3308-codec.yaml b/Documentation/devicetree/bindings/sound/rockchip,rk3308-codec.yaml
> new file mode 100644
> index 000000000000..f3458f86ef06
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/rockchip,rk3308-codec.yaml
> @@ -0,0 +1,102 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/rockchip,rk3308-codec.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Rockchip RK3308 Internal Codec
> +
> +description: |
> + This is the audio codec embedded in the Rockchip RK3308
> + SoC. It has 8 24-bit ADCs and 2 24-bit DACs. The maximum supported
> + sampling rate is 192 kHz.
> +
> + It is connected internally to one out of a selection of the internal I2S
> + controllers.
> +
> + The RK3308 audio codec has 8 independent capture channels, but some
> + features work on stereo pairs called groups:
> + * grp 0 -- MIC1 / MIC2
> + * grp 1 -- MIC3 / MIC4
> + * grp 2 -- MIC5 / MIC6
> + * grp 3 -- MIC7 / MIC8
> +
> +maintainers:
> + - Luca Ceresoli <luca.ceresoli@bootlin.com>
> +
> +properties:
> + compatible:
> + const: rockchip,rk3308-codec
> +
> + reg:
> + maxItems: 1
> +
> + rockchip,grf:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description:
> + Phandle to the General Register Files (GRF)
> +
> + clocks:
> + items:
> + - description: clock for TX
> + - description: clock for RX
> + - description: AHB clock driving the interface
> +
> + clock-names:
> + items:
> + - const: mclk_tx
> + - const: mclk_rx
> + - const: hclk
> +
> + resets: true
maxItems: 1
> +
> + reset-names:
> + items:
> + - const: "acodec"
No quotes.
> +
> + "#sound-dai-cells":
> + const: 0
> +
> + rockchip,micbias-avdd-multiplier:
> + description: |
> + Voltage setting for the MICBIAS pins expressed as a multiplier of
> + AVDD.
> +
> + E.g. if rockchip,micbias-avdd-multiplier = 7 (x0.85) and AVDD = 3v3,
> + then MIC BIAS voltage will be 3.3 V * 0.85 = 2.805 V.
> +
> + Value 0: multiplier = 0.50
> + Value N: multiplier = 0.50 + 0.05 * N
> + Value 7: multiplier = 0.85
Use logical values/units. The units is 0.05, so "-percent" in node name.
https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/property-units.yaml
Then drop ref and use enum.
> +
> + $ref: /schemas/types.yaml#/definitions/uint32
> + maximum: 7
> +
> +required:
> + - compatible
> + - reg
> + - rockchip,grf
> + - clocks
> + - resets
> + - "#sound-dai-cells"
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/clock/rk3308-cru.h>
> +
> + acodec: acodec@ff560000 {
codec
Node names should be generic.
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
> + compatible = "rockchip,rk3308-codec";
> + reg = <0xff560000 0x10000>;
> + rockchip,grf = <&grf>;
> + clock-names = "mclk_tx", "mclk_rx", "hclk";
> + clocks = <&cru SCLK_I2S2_8CH_TX_OUT>,
> + <&cru SCLK_I2S2_8CH_RX_OUT>,
> + <&cru PCLK_ACODEC>;
> + reset-names = "acodec";
> + resets = <&cru SRST_ACODEC_P>;
> + #sound-dai-cells = <0>;
> + };
> +
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 895e8ace80dd..d53a8e74cb1e 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -17588,6 +17588,12 @@ S: Maintained
> F: Documentation/devicetree/bindings/media/rockchip-rga.yaml
> F: drivers/media/platform/rockchip/rga/
>
> +ROCKCHIP RK3308 INTERNAL AUDIO CODEC
> +M: Luca Ceresoli <luca.ceresoli@bootlin.com>
> +S: Maintained
> +F: Documentation/devicetree/bindings/sound/rockchip,rk3308-codec.yaml
> +F: include/dt-bindings/sound/rockchip,rk3308-codec.h
> +
> ROCKCHIP VIDEO DECODER DRIVER
> M: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
> L: linux-media@vger.kernel.org
> diff --git a/include/dt-bindings/sound/rockchip,rk3308-codec.h b/include/dt-bindings/sound/rockchip,rk3308-codec.h
> new file mode 100644
> index 000000000000..9f1b210a048e
> --- /dev/null
> +++ b/include/dt-bindings/sound/rockchip,rk3308-codec.h
> @@ -0,0 +1,15 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
Dual license.
> +#ifndef __DT_BINDINGS_ROCKCHIP_RK3308_CODEC_H__
> +#define __DT_BINDINGS_ROCKCHIP_RK3308_CODEC_H__
> +
> +#define RK3308_CODEC_MICBIAS_AVDD_x_0_50 0
> +#define RK3308_CODEC_MICBIAS_AVDD_x_0_55 1
> +#define RK3308_CODEC_MICBIAS_AVDD_x_0_60 2
> +#define RK3308_CODEC_MICBIAS_AVDD_x_0_65 3
> +#define RK3308_CODEC_MICBIAS_AVDD_x_0_70 4
> +#define RK3308_CODEC_MICBIAS_AVDD_x_0_75 5
> +#define RK3308_CODEC_MICBIAS_AVDD_x_0_80 6
> +#define RK3308_CODEC_MICBIAS_AVDD_x_0_85 7
You store register values in the bindings. Nope. Bindings are not for this.
Best regards,
Krzysztof
next prev parent reply other threads:[~2022-09-08 11:53 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-07 14:21 [PATCH 0/8] Add support for the internal RK3308 audio codec luca.ceresoli
2022-09-07 14:21 ` [PATCH 1/8] ASoC: rockchip: rk3308: add internal audio codec bindings luca.ceresoli
2022-09-08 11:53 ` Krzysztof Kozlowski [this message]
2022-09-07 14:21 ` [PATCH 2/8] ASoC: rockchip: rk3308: add audio card bindings luca.ceresoli
2022-09-08 11:49 ` Krzysztof Kozlowski
2022-09-08 15:20 ` Luca Ceresoli
2022-09-08 15:28 ` Krzysztof Kozlowski
2022-09-07 14:21 ` [PATCH 3/8] arm64: dts: rockchip: add i2s_8ch_2 and i2s_8ch_3 luca.ceresoli
2022-09-07 14:21 ` [PATCH 4/8] arm64: dts: rockchip: add the internal audio codec luca.ceresoli
2022-09-08 11:53 ` Krzysztof Kozlowski
2022-09-07 14:21 ` [PATCH 5/8] ASoC: rockchip: i2s-tdm: Fix clk_id usage in .set_sysclk() luca.ceresoli
2022-09-08 16:36 ` Mark Brown
2022-09-07 14:21 ` [PATCH 6/8] ASoC: audio-graph: let dai_link->init be overridable luca.ceresoli
2022-09-07 14:21 ` [PATCH 7/8] ASoC: codecs: Add RK3308 internal audio codec driver luca.ceresoli
2022-09-07 17:40 ` kernel test robot
2022-09-07 19:53 ` kernel test robot
[not found] ` <202209082103.F4ICyyHT-lkp@intel.com>
2022-09-08 15:33 ` Luca Ceresoli
2022-09-08 16:27 ` Mark Brown
2022-09-09 17:11 ` Luca Ceresoli
2022-09-09 23:15 ` kernel test robot
2022-09-07 14:21 ` [PATCH 8/8] ASoC: rockchip: add new RK3308 sound card luca.ceresoli
2022-09-07 15:41 ` [PATCH 0/8] Add support for the internal RK3308 audio codec Mark Brown
2022-09-07 17:15 ` Luca Ceresoli
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=d447edf0-1726-d742-d932-d24707657691@linaro.org \
--to=krzysztof.kozlowski@linaro.org \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=frattaroli.nicolas@gmail.com \
--cc=heiko@sntech.de \
--cc=jbx6244@gmail.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=luca.ceresoli@bootlin.com \
--cc=macromorgan@hotmail.com \
--cc=p.zabel@pengutronix.de \
--cc=perex@perex.cz \
--cc=robh+dt@kernel.org \
--cc=tiwai@suse.com \
/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 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).