[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <s5ha6webdn2.wl-tiwai@suse.de>
Date: Thu, 22 Oct 2020 15:20:49 +0200
From: Takashi Iwai <tiwai@...e.de>
To: Maxime Ripard <maxime@...no.tech>
Cc: Jaroslav Kysela <perex@...ex.cz>, Takashi Iwai <tiwai@...e.com>,
Liam Girdwood <lgirdwood@...il.com>,
Mark Brown <broonie@...nel.org>, alsa-devel@...a-project.org,
linux-kernel@...r.kernel.org, Dom Cobley <dom@...pberrypi.com>,
Dave Stevenson <dave.stevenson@...pberrypi.com>,
Nicolas Saenz Julienne <nsaenzjulienne@...e.de>
Subject: Re: Context expectations in ALSA
On Thu, 22 Oct 2020 14:57:41 +0200,
Maxime Ripard wrote:
>
> On Thu, Oct 22, 2020 at 12:03:19PM +0200, Jaroslav Kysela wrote:
> > Dne 22. 10. 20 v 11:50 Maxime Ripard napsal(a):
> >
> > > So, I'm not really sure what I'm supposed to do here. The drivers
> > > involved don't appear to be doing anything extraordinary, but the issues
> > > lockdep report are definitely valid too. What are the expectations in
> > > terms of context from ALSA when running the callbacks, and how can we
> > > fix it?
> >
> > I think that you should set the non-atomic flag and wake up the workqueue or
> > so from interrupt handler in this case. Call snd_pcm_period_elapsed() from the
> > workqueue not the interrupt handler context.
>
> Yeah, that was my first guess too. However, the DMA driver uses some
> kind of generic helpers using a tasklet, so getting rid of it would take
> some work and would very likely not be eligible for stable.
Who sets the nonatomic flag for vc4? I couldn't find the relevant
code in the latest upstream.
Ideally dmaengine PCM helper should support the nonatomic mode, but
until then, the other side needs to drop the nonatomic flag, I
suppose.
thanks,
Takashi
Powered by blists - more mailing lists