[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGcaFA3SdBVtOiPJQG82YwBX01s5_mJszeM4LNSc5Pn74S2Cvw@mail.gmail.com>
Date: Tue, 12 Nov 2024 15:11:07 +0100
From: Marek Maślanka <mmaslanka@...gle.com>
To: Mark Brown <broonie@...nel.org>
Cc: LKML <linux-kernel@...r.kernel.org>,
Support Opensource <support.opensource@...semi.com>, Liam Girdwood <lgirdwood@...il.com>,
Jaroslav Kysela <perex@...ex.cz>, Takashi Iwai <tiwai@...e.com>, linux-sound@...r.kernel.org
Subject: Re: [PATCH] ASoC: da7219-aad: Fix detection of plugged jack after resume
Hi Mark,
On Tue, Nov 12, 2024 at 2:16 PM Mark Brown <broonie@...nel.org> wrote:
>
> On Tue, Nov 12, 2024 at 07:40:47AM +0000, Marek Maslanka wrote:
> > Don't notify and mark the jack as unplugged during the "set_jack" action,
> > because this action is called very late in during the resume process, forcing
> > the jack to be unplugged after the resume, even if the jack is plugged in. Let's
> > leave the responsibility of managing the insertion of the jack to IRQ.
>
> > @@ -33,10 +33,6 @@ void da7219_aad_jack_det(struct snd_soc_component *component, struct snd_soc_jac
> > struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component);
> >
> > da7219->aad->jack = jack;
> > - da7219->aad->jack_inserted = false;
> > -
> > - /* Send an initial empty report */
> > - snd_soc_jack_report(jack, 0, DA7219_AAD_REPORT_ALL_MASK);
> >
> > /* Enable/Disable jack detection */
> > snd_soc_component_update_bits(component, DA7219_ACCDET_CONFIG_1,
>
> This path is also (AFAICT only?) called when registering the jack by
> da7219_set_jack(), I'm not immediately seeing the path for resume. This
> suggests that what's going on here is an issue with the machine driver
> unregistering the jack over suspend?
In my case the da7219_set_jack() is directly called from avs_card_resume_post()
(sound/soc/intel/avs/boards/da7219.c) so that could be a problem too.
Powered by blists - more mailing lists