Hello,

On 3/25/22 10:18 AM, Daft Soft wrote:
> Hi!
> Is FEX-file applicable on 5.x kernel?

No, mainline Linux describes the audio routing in the device tree, not via FEX.

> On Monday, 7 March 2022 at 13:25:27 UTC+3 mullappil...@gmail.com wrote:
> 
>     i have a board with A20 and  PAM8620 audio amplifier. 3.4 kernel works 
> with
>     good audio along with patches on sunxi-codec.c, now moved to kernel 5.16,
>     and audio is not working.
>     the fex file has following entry
> 
>     [audio_para]
>     audio_used = 1
>     audio_pa_ctrl = port:PH15<1><default><default><0>
>     audio_mute_ctrl = port:PH25<1><default><default><0>
> 
>     any help is appreciated

Normally, external amplifiers use the "simple-audio-amplifier" binding here:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/sound/simple-audio-amplifier.yaml

The amplifier node is an "auxiliary device" referenced from the sound card via
an "aux-devs" property, and the amplifier DAPM widgets (INL, INR, OUTL, OUTR)
are added to the "allwinner,audio-routing" property.

This setup with an external amplifier is common on A64 boards, for example:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi?h=v5.17#n436

The problem with the A20 codec is that the mainline driver does not currently
support an "aux-devs" property. You would need to add a call from
sun4i_codec_create_card() to something like:

    snd_soc_of_parse_aux_devs(card, "allwinner,aux-devs");

Then you could use the binding I described above.

Regards,
Samuel

-- 
You received this message because you are subscribed to the Google Groups 
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
To view this discussion on the web, visit 
https://groups.google.com/d/msgid/linux-sunxi/0acdc596-e381-5fd2-0bd2-b0aa7990ddc6%40sholland.org.

Reply via email to