On Wed, May 15, 2019 at 06:27:49PM +0300, Georgii Staroselskii wrote: > On Wed, May 15, 2019 at 03:58:13PM +0200, Maxime Ripard wrote: > > > diff --git a/sound/soc/sunxi/sun4i-codec.c b/sound/soc/sunxi/sun4i-codec.c > > > index 15d08e3..e0099519 100644 > > > --- a/sound/soc/sunxi/sun4i-codec.c > > > +++ b/sound/soc/sunxi/sun4i-codec.c > > > @@ -1329,6 +1329,15 @@ static int sun4i_codec_spk_event(struct snd_soc_dapm_widget *w, > > > gpiod_set_value_cansleep(scodec->gpio_pa, > > > !!SND_SOC_DAPM_EVENT_ON(event)); > > > > > > + if (SND_SOC_DAPM_EVENT_ON(event)) { > > > + /* > > > + * Need a delay to have the amplifier up. 700ms seems the best > > > + * compromise between the time to let the amplifier up and the > > > + * time not to feel this delay while playing a sound. > > > + */ > > > + msleep(700); > > > + } > > > + > > > > Since this is an external amplifier, I guess they would have different > > warm-up time depending on the exact part being used? > > I guess I might've used Speaker wrong and bumped into an existing > issue. The issue first arose when I needed to connect a speaker and > use a mute GPIO pin to toggle it. I bumped into the lag similar to > the one that has been fixed in bf14da7. The word "amplifier" here in > my comments might be wrong and misleding. Sorry for that. I just > measured the latency on the speaker I'm using and it is well under > 1ms so this is the Allwinner DAC that is pushing the data with a > lag. Or some other thing, I'm not sure. > > I want to stress again that I might've experienced the issue because > I was abusing "Speaker" routing. I basically just needed the analog > audio stream and mute GPIO handling done automatically. Ok. I guess the comment should just be reflecting that then. Maxime -- Maxime Ripard, Bootlin Embedded Linux and Kernel engineering https://bootlin.com _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel