[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Enabling (HDMI) audio on rk3328/rk3399 (Rock64/RockPro64)



On maandag 10 mei 2021 13:12:12 CEST Punit Agrawal wrote:
> Not sure if it's still helpful but ...

Yes it is, thanks :)

> The board is already using device tree from upstream kernels so I didn't
> have to mess with them to enable the devices. I checked the nodes with
> fdtget and they showed status "okay" for both the nodes.

Excellent.
I made the request without doing ('proper') research into rk3399/RockPro64, 
but I just took a look based on your msg and it appears that the dts[i] files 
for rk3399/RockPro64 are far more 'evolved' (more detailed/enabled nodes).

> Diederik de Haas <didi.debian@cknow.org> writes:
> > But those settings are actually in rk3328.dtsi. And there is a similar
> > file rk3399.dtsi where it seems the same (simple) change is needed.

Since my initial email I've become slightly less noob-ish, so for the other 
noobs trying to learn about DTs, here's a correction. (Hopefully correct ;))

You (normally) wouldn't change those general files, but 'override' them 
in board specific files like rk3328-rock64.dts where you reference the 
nodes defined in those general files.
Programmers analogy: you don't change the class definition, but change 
the (board) implementation.

> On my RockPro64 and see the following output -
>     rockpro64:~$ uname -a
>     Linux rockpro64 5.10.0-6-arm64 #1 SMP Debian 5.10.28-1 (2021-04-09)
> aarch64 GNU/Linux
>     rockpro64:~$ aplay -l
>     **** List of PLAYBACK Hardware Devices ****
>     card 0: hdmisound [hdmi-sound], device 0: ff8a0000.i2s-i2s-hifi
> i2s-hifi-0 [ff8a0000.i2s-i2s-hifi i2s-hifi-0] Subdevices: 1/1
>       Subdevice #0: subdevice #0
> 
>     rockpro64:~$ grep SND_AUDIO /boot/config-5.10.0-6-arm64
>     # CONFIG_SND_AUDIO_GRAPH_CARD is not set
> 
> It seems the config doesn't need enabling for sound on this
> device at least.

Awesome.
Apparently some use audio-graph-card while others use simple-audio-card and 
in kernel 5.12 the Rock64 switches from one to the other:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=25572fb5aa986bdbb35d06c0fb52a9b9d9b3b2c9

"For newly adding nodes, ASoC guys recommend to use audio-graph-card.
But all other sound nodes for rk3328 have already been defined by
simple-audio-card. In this time, I chose for consistent sound nodes."

I may be wrong here, but it appears that for the Rock64, 'audio-graph-card' is 
used for 'sound' while 'simple-audio-card' is used for 'hdmi-sound'.

So, to get "better multimedia support in Debian kernels" it very much appears
that having both 'simple-audio-card' and 'audio-graph-card' seems desirable.

Cheers,
  Diederik

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: