Questions about driver implementation (1 I2S controller to 2 codecs)
Paul Cercueil
paul at crapouillou.net
Fri Jun 24 22:33:01 CEST 2022
Hi,
I'm trying to add support for a new board that uses the Ingenic JZ4770
SoC.
This SoC has a I2S/AC97 controller, and has an internal codec. The
controller has a register switch to select either the internal codec,
or an external codec; both cannot be enabled at the same time.
On this board, the external speakers / audio line are wired to the
internal codec, while a HDMI chip (ITE66121) is wired as the external
codec.
I'm having a hard time trying to figure out how the codec selection
switch should be exported. Should it be a regular widget, and the user
is responsible for selecting the right codec? Should it be a DAPM, and
plugging the HDMI cable auto-enables the switch? Is this configuration
(one controller to two codecs) already somehow supported by ALSA?
Right now we're using a "simple-audio-card" in the device tree, and
trying to add HDMI sound support. I am not even sure if we should be
using one sound card with the two codecs, or one sound card per codec,
sharing the same I2S controller?
Any thoughts?
Thanks,
-Paul
More information about the Alsa-devel
mailing list