On Tue, 30 Aug 2022 07:54:59 +0200, Takashi Iwai wrote:
On Mon, 29 Aug 2022 20:15:33 +0200, Takashi Iwai wrote:
On Mon, 29 Aug 2022 14:16:27 +0200, Takashi Iwai wrote:
On Mon, 29 Aug 2022 10:50:58 +0200, chihhao chen wrote:
Hi Takashi,
Yes.
To issue SAMPLING_FREQ_CONTROL USB request two times is root cause of this issue.
Hm, is it a UAC1 device? Such a device should work with multiple SAMPLING_FREQ_CONTROL invocations, but some device might be not tolerant or buggy... The multiple init_sample_rate() invocations may happen with the older kernel under certain situations, so maybe we need a different fix.
How about the patch like below?
It's missing the clearance for suspend/resume. The revised patch is below.
... and after reading the mail again, I noticed that it's all rubbish, scratch the previous ones.
Have you tested it with the later kernel? I guess this has been already addressed. In the recent kernel, the rate is set per assigned clock, hence it won't be set up twice unnecessarily.
That said, try to cherry-pick the upstream commit c11117b634f4f832c4420d3cf41c44227f140ce1.
If this is confirmed to work, we can ask Greg to merge it into 5.15.y stable tree.
Takashi