[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201218095001.GF9673@ediswmail.ad.cirrus.com>
Date: Fri, 18 Dec 2020 09:50:01 +0000
From: Charles Keepax <ckeepax@...nsource.cirrus.com>
To: Jerome Brunet <jbrunet@...libre.com>
CC: Mark Brown <broonie@...nel.org>,
Liam Girdwood <lgirdwood@...il.com>,
<alsa-devel@...a-project.org>, <linux-kernel@...r.kernel.org>,
<linux-amlogic@...ts.infradead.org>,
Kevin Hilman <khilman@...libre.com>
Subject: Re: [PATCH] ASoC: meson: axg-tdm-interface: fix loopback
On Thu, Dec 17, 2020 at 04:08:12PM +0100, Jerome Brunet wrote:
> When the axg-tdm-interface was introduced, the backend DAI was marked as an
> endpoint when DPCM was walking the DAPM graph to find a its BE.
>
> It is no longer the case since this
> commit 8dd26dff00c0 ("ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks")
> Because of this, when DPCM finds a BE it does everything it needs on the
> DAIs but it won't power up the widgets between the FE and the BE if there
> is no actual endpoint after the BE.
>
> On meson-axg HWs, the loopback is a special DAI of the tdm-interface BE.
> It is only linked to the dummy codec since there no actual HW after it.
> >From the DAPM perspective, the DAI has no endpoint. Because of this, the TDM
> decoder, which is a widget between the FE and BE is not powered up.
>
> >From the user perspective, everything seems fine but no data is produced.
>
> Connecting the Loopback DAI to a dummy DAPM endpoint solves the problem.
>
> Fixes: 8dd26dff00c0 ("ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks")
> Cc: Charles Keepax <ckeepax@...nsource.cirrus.com>
> Signed-off-by: Jerome Brunet <jbrunet@...libre.com>
> ---
Reviewed-by: Charles Keepax <ckeepax@...nsource.cirrus.com>
Thanks,
Charles
Powered by blists - more mailing lists