Hi Takashi, I tried the patch but this problem still happens. I add some logs in snd_usb_init_sample_rate() in kernel-5.10 [ 146.260105][T1702328] writer: usb 1-1: [name:snd_usb_audio&]2:2 Set sample rate 96000, clock 0 protocol 0 [ 146.289892][T1002328] writer: usb 1-1: [name:snd_usb_audio&]2:2 Set sample rate 48000, clock 0 protocol 0 Because TinyAlsa tends to set highest rate for initialization and real rate for playback, it will still trigger two-times SAMPLING_FREQ_CONTROL USB requests. Which kernel version should I try? kernel-5.19 or? Thanks On Tue, 2022-08-30 at 07:54 +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. > > > Takashi