Re: [PATCH 1/3] arm64: dts: rockchip: add ES8316 codec for Rock Pi4

From: Johan Jonker
Date: Fri Jun 18 2021 - 05:55:06 EST


Hi Alex,

On 6/17/21 6:49 AM, Alex Bee wrote:
> Rock Pi4 boards have the codec connected to i2s0 and it is accessible
> via i2c1 address 0x11.
> Add an audio-graph-card it.
>
> Signed-off-by: Alex Bee <knaerzche@xxxxxxxxx>
> ---
> .../boot/dts/rockchip/rk3399-rock-pi-4.dtsi | 28 +++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
> index 7d0a7c697703..e5c1083174ff 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
> +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
> @@ -36,6 +36,12 @@ sdio_pwrseq: sdio-pwrseq {
> reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
> };
>
> + sound {
> + compatible = "audio-graph-card";

> + label = "rockchip,rk3399";

See previous discussion:

https://lore.kernel.org/linux-rockchip/e5ab2c62-ad00-4cdf-8b0a-24fda59c980b@xxxxxxxxx/

It seems that aplay/linux? adds "-1" to it and removes the comma and
"-", so we get:

hdmisound
rockchiprk3399
rockchiprk339_1

Shouldn't we label it with something that reflect the function/output.
Shouldn't we standardize to SPDIF, HDMI and Analog similar to rk3318/rk3328?
Make a shorter label without spaces or special chars, so that chars
don't get removed?

Proposal:

Analog
HDMI
ES8316 <---
SPDIF


Possible example solutions:

[PATCH] arm64: dts: rockchip: more user friendly name of sound nodes
https://lore.kernel.org/lkml/20210110151913.3615326-1-katsuhiro@xxxxxxxxxxxxx/

===

Johan

> + dais = <&i2s0_p0>;
> + };
> +
> vcc12v_dcin: dc-12v {
> compatible = "regulator-fixed";
> regulator-name = "vcc12v_dcin";
> @@ -422,6 +428,20 @@ &i2c1 {
> i2c-scl-rising-time-ns = <300>;
> i2c-scl-falling-time-ns = <15>;
> status = "okay";
> +
> + es8316: codec@11 {
> + compatible = "everest,es8316";
> + reg = <0x11>;
> + clocks = <&cru SCLK_I2S_8CH_OUT>;
> + clock-names = "mclk";
> + #sound-dai-cells = <0>;
> +
> + port {
> + es8316_p0_0: endpoint {
> + remote-endpoint = <&i2s0_p0_0>;
> + };
> + };
> + };
> };
>
> &i2c3 {
> @@ -441,6 +461,14 @@ &i2s0 {
> rockchip,capture-channels = <2>;
> rockchip,playback-channels = <2>;
> status = "okay";
> +
> + i2s0_p0: port {
> + i2s0_p0_0: endpoint {
> + dai-format = "i2s";
> + mclk-fs = <256>;
> + remote-endpoint = <&es8316_p0_0>;
> + };
> + };
> };
>
> &i2s1 {
>