missing sound on kernel-5.15

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I am testing many headsets on Android platform with different kernel
versions.

On kernel-5.10, calling sequence for playback is
1. snd_usb_hw_params -> set highest sampling rate, no
SAMPLING_FREQ_CONTROL USB request sent in this stage
2. snd_pcm_release
3. snd_usb_hw_params -> set proper sampling rate, still no
SAMPLING_FREQ_CONTROL USB request 
4. snd_usb_pcm_parepare -> in configure_endpoint SAMPLING_FREQ_CONTROL
USB request was sent on USB bus

With the same calling sequence, a slightly behavior change on kernel-
5.15 is
1. snd_usb_hw_params -> set highest sampling rate,
SAMPLING_FREQ_CONTROL USB request  was sent on USB bus
2. snd_pcm_release
3. snd_usb_hw_params -> set proper sampling rate, SAMPLING_FREQ_CONTROL
USB request  was sent too
(because configure_endpoint was moved to snd_usb_hw_params function)
4. snd_usb_pcm_parepare -> no SAMPLING_FREQ_CONTROL USB
request  because of USB EP flag check

I checked all USB packets and confirmed audio data output was correct.
But there may be missing sound problem for the first sound with many
headsets (for example Samsung headset).
I found this issue is related to two-times sampling rate set request.
(I tried to forcibly skip first USB request, everything became okay.)
So do you guys know why configure_endpoint was moved to
snd_usb_hw_params?
Or could you provide patch for this problem?

Many thanks
Chihhao




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux