missing sound on kernel-5.15

chihhao chen chihhao.chen at mediatek.com
Mon Aug 29 09:56:42 CEST 2022


Hi Takashi,

Because of this problem, is it okay to remove configure_endpoints
function call in snd_usb_hw_params?

Then configure_endpoints would be called in snd_usb_pcm_prepare and USB
control transfers become the same as which in kernel-5.10. There will
be only one SAMPLING_FREQ_CONTROL request and no sound-missing
phenomenon.

Thanks


On Mon, 2022-08-22 at 08:57 -0300, Geraldo Nascimento wrote:
> On Mon, Aug 22, 2022 at 04:06:58PM +0800, chihhao chen wrote:
> > 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?
> 
> Hi Chihhao,
> 
> the commit you're looking for is
> bf6313a0ff766925462e97b4e733d5952de02367
> ("ALSA: usb-audio: Refactor endpoint management")
> 
> Good luck,
> Geraldo Nascimento
> 
> > Or could you provide patch for this problem?
> > 
> > Many thanks
> > Chihhao
> > 



More information about the Alsa-devel mailing list