[PATCH 14/41] ALSA: usb-audio: Create endpoint objects at parsing phase - Pioneer DJ DJM-250MK2 stopped working

Takashi Iwai tiwai at suse.de
Sun Jan 3 18:19:30 CET 2021


On Sun, 03 Jan 2021 18:09:41 +0100,
František Kučera wrote:
> 
> Dne 23. 11. 20 v 9:53 Takashi Iwai napsal(a):
> > Currently snd_usb_endpoint objects are created at first when the
> > substream is opened and tries to assign the endpoints corresponding to
> > the matching audioformat.  But since basically the all endpoints have
> > been already parsed and the information have been obtained, we may
> > create the endpoint objects statically at the init phase.  It's easier
> > to manage for the implicit fb case, for example.
> >
> > This patch changes the endpoint object management and lets the parser
> > to create the all endpoint objects.
> >
> > This change shouldn't bring any functional changes.
> 
> The Pioneer DJ DJM-250MK2 (implemented in 73d8c9408434, 14335d8b9e1a, cdc01a1558de) stopped working.
> 
> After bisecting, it seems that it worked in 5fd255f4fe97 and stopped working in 54cb31901b83.
> 
> The arecord says: set_params:1407: Unable to install hw params
> 
> And even playback is impossible in this version. But there is no error in the log. However in later versions (e.g. eda809aef534) I found errors in kern.log:
> 
> usb 1-3: Cannot find EP 0x1 to open
> 
> usb 1-3: Cannot find EP 0x82 to open
> 
> (each repeats 20 or more times, seems to be in pcm.c in subs->data_endpoint = snd_usb_endpoint_open(chip, fmt, hw_params, false);)
> 
> Could you please check it? I am not sure whether it should be fixed in the DJM-250MK2 specific code or here.

Could you give lsusb -v output as well as /proc/asound/card*/usbmixer
and stream* files?  The proc files are at best from both older and new
kernels.


thanks,

Takashi


More information about the Alsa-devel mailing list