Re: [v3 2/3] ASoC: mediatek: mt8186: correct the HDMI widgets

From: Mark Brown
Date: Wed Aug 02 2023 - 12:39:12 EST


On Wed, Aug 02, 2023 at 02:52:57PM +0000, Jiaxin Yu (俞家鑫) wrote:
> On Mon, 2023-07-31 at 12:50 +0100, Mark Brown wrote:
> > On Mon, Jul 31, 2023 at 02:08:02AM +0800, Jiaxin Yu wrote:

> > > Use SND_SOC_DAPM_LINE instead of SND_SOC_DAPM_OUTPUT to trigger
> > > DAPM events to hdmi-codec when userspace control the DPAM pin.

> > Why?

> I have defined an SOC_DAPM_PIN_SWITCH that named as "HDMI1", if I use
> SND_SOC_DAPM_OUTPUT, it can't be controlled by HDMI1's PIN_SWITCH.

...

> 2762 if (w->dapm->card->fully_routed)
> 2763 return;
> 2764 ep = SND_SOC_DAPM_EP_SINK;
> 2765 snd_soc_dapm_widget_for_each_sink_path(w, p) {
> 2766 if (p->sink->id == snd_soc_dapm_spk ||
> 2767 p->sink->id == snd_soc_dapm_hp ||
> 2768 p->sink->id == snd_soc_dapm_line
> ||
> 2769 p->sink->id == snd_soc_dapm_input)
> {
> 2770 ep = 0;

The expectation here is that you'll connect the output to a widget that
corresponds to the physical output on your board and put the pin switch
on that, ideally with a label that corresponds to case markings or what
the physical output is called on the board.

Attachment: signature.asc
Description: PGP signature