Hello,

Sorry for late, thank you for your comments.

On 2018年10月03日 18:53, Chen-Yu Tsai wrote:
Hi,

On Mon, Sep 17, 2018 at 8:28 PM Katsuhiro Suzuki
<[email protected]> wrote:

This patch adds sound card node for rock64. Currently we can support
S/PDIF only. It seems the lack of codec driver of rk3328 to enable
analog audio out.

Signed-off-by: Katsuhiro Suzuki <[email protected]>
---
  .../arm64/boot/dts/rockchip/rk3328-rock64.dts | 29 +++++++++++++++++++
  1 file changed, 29 insertions(+)

diff --git a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts 
b/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts
index 5852061e497b..9ee4f57557f3 100644
--- a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts
@@ -62,6 +62,23 @@
                 regulator-min-microvolt = <5000000>;
                 regulator-max-microvolt = <5000000>;
         };
+
+       sound {
+               compatible = "audio-graph-card";
+               label = "rockchip,rk3328";

I understand that this patch has been merged. However, seeing this label
I wonder how this works when the analog codec and HDMI audio out are added,
and how userspace is supposed to select an output.


I don't know detail of HDMI audio of RK3328, but maybe it has cpu or codec DAIs. The audio-graph-card is supporting to use multiple DAIs on
a card. This is same as simple-audio-card.

For example, add I2S0 device as hw:X,0
(and move SPDIF to hw:X,0 -> hw:X,1)

sound {
        compatible = "audio-graph-card";
        label = "rockchip,rk3328";
        dais = <&i2s0_p0
                &spdif_p0>;
};

&i2s0 {
        status = "okay";
        #sound-dai-cells = <0>;

        i2s0_p0: port {
                i2s0_p0_0: endpoint {
                        dai-format = "i2s";
                        remote-endpoint = <&some_codec_abcd>;
                };
        };
};

We should write special card driver for RK3328 sound if audio-graph-card
is not enough to deal with HDMI audio.


On the side, it seems that extra codecs, such as the rock64 add-on board,
are easier dealt with by adding a separate simple-audio-card node to couple
the codec and i2s nodes.

I think multiple DAIs on single card and single DAI on multiple cards
are both OK to work. But I cannot decide the way for this issue.



ChenYu


Regards,
--
Katsuhiro Suzuki

Reply via email to