[PATCH] ALSA: hda: Reduce udelay() at SKL+ position reporting
Takashi Iwai
tiwai at suse.de
Wed Sep 29 09:14:01 CEST 2021
On Tue, 28 Sep 2021 17:00:32 +0200,
Pierre-Louis Bossart wrote:
>
>
> >> I think what you need to use is use azx_get_pos_posbuf(chip, azx_dev);
> >> unconditionally, both for capture and playback, and remove the use of
> >> the skylake specific stuff and the delay.
> >
> > When I measured, I saw a slight difference between values in DPIB and
> > posbuf, so I wonder which is actually more accurate. The latter is
> > sometimes a bit behind the former.
> >
> > If the posbuf is more correct in the sense for the PCM pointer, we can
> > simply move back to the posbuf like other platforms.
>
> DPIB registers are known to be updated 'too early' in the case of VC1
> traffic, the recommendation is to use posbuf as a 'safer' alternative.
> And it's certainly 'more correct' that the current work-arounds which
> apply different solutions on capture and playback for no apparent reason.
OK, thanks for clarification. I'll send a v2 patch set to reflect
that.
Takashi
More information about the Alsa-devel
mailing list