>> >> >> > It's likely the issues with the implicit feedback.
>> >> >> >
>> >> >> > The latest development tree (either linux-next tree or
>> >> >> > topic/usb-audio-refactoring branch of my sound.git tree) contains the
>> >> >> > improvements of the implicit feedback mode.
>> >> >> >
>> >> >> >
>> >> >> > Takashi
>> >> When I try to play a file now this happens:
>> >> $ aplay -D plughw:CARD=UR22 ./file.wav
>> >> Playing WAVE './file.wav' : Signed 16 bit Little Endian, Rate 44100
>> >> Hz, Stereo
>> >> aplay: set_params:1407: Unable to install hw params:
>> >
>> > It's a known side-effect of the implicit feedback mode, and the latest
>> > patchset I mentioned earlier addresses the issue.
>> >
>> >
>> > Takashi
>>
>> I'm already running the kernel built from the linux-next tree...
>> I built next-20201208 from
>> git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
>> Is there another patch set that I'm missing?
>
> Hm, strange.
>
> Please check the contents of /proc/asound/card*/stream* file. With
> the latest patches and the implicit feedback mode, you should see the
> lines like "Sync Endpoint: 0x...." and "Implicit Feedback Mode: yes".
>
>
> Takashi
Yes, I see this:
Yamaha Corporation Steinberg UR22 at usb-0000:00:1a.7-3, high speed :
USB Audio
Playback:
Status: Stop
Interface 1
Altset 1
Format: S24_3LE
Channels: 2
Endpoint: 0x07 (7 OUT) (ASYNC)
Rates: 44100, 48000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 2
Sync EP Altset: 1
Implicit Feedback Mode: Yes
Interface 1
Altset 2
Format: S24_3LE
Channels: 2
Endpoint: 0x07 (7 OUT) (ASYNC)
Rates: 88200, 96000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 2
Sync EP Altset: 1
Implicit Feedback Mode: Yes
Interface 1
Altset 3
Format: S24_3LE
Channels: 2
Endpoint: 0x07 (7 OUT) (ASYNC)
Rates: 176400, 192000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 2
Sync EP Altset: 1
Implicit Feedback Mode: Yes
Capture:
Status: Stop
Interface 2
Altset 1
Format: S24_3LE
Channels: 2
Endpoint: 0x86 (6 IN) (ASYNC)
Rates: 44100, 48000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Interface 2
Altset 2
Format: S24_3LE
Channels: 2
Endpoint: 0x86 (6 IN) (ASYNC)
Rates: 88200, 96000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Interface 2
Altset 3
Format: S24_3LE
Channels: 2
Endpoint: 0x86 (6 IN) (ASYNC)
Rates: 176400, 192000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
OK, then it means that your device isn't compatible with UR22C.
It has a different endpoint assignment.
What happens if you run this kernel without quirk_alias option?
Is the implicit feedback still set?
Takashi
When running it without the quirk_alias option implicit feedback isn't
set. I have appended the output at the end of this mail. Does this mean
the card runs with explicit feedback, or with no feedback at all? I've
tested this on other linux distros (Fedora 33, Kernel 5.8 and Ubuntu
14.04.6 LTS Kernel 4.4 or 4.6, don't remember exactly), problem still
exists, so this doesn't look like a regression to me.
Just to be sure: the last commits to pcm.c and implicit.h in my tree are
from Nov. 23. Is that correct? I don't find the
topic/usb-audio-refactoring branch on the public git mirrors of
tiwai/sound, so not sure I'm running the latest changes.
Yamaha Corporation Steinberg UR22 at usb-0000:00:1a.7-3, high speed :
USB Audio
Playback:
Status: Stop
Interface 1
Altset 1
Format: S24_3LE
Channels: 2
Endpoint: 0x07 (7 OUT) (ASYNC)
Rates: 44100, 48000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Interface 1
Altset 2
Format: S24_3LE
Channels: 2
Endpoint: 0x07 (7 OUT) (ASYNC)
Rates: 88200, 96000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Interface 1
Altset 3
Format: S24_3LE
Channels: 2
Endpoint: 0x07 (7 OUT) (ASYNC)
Rates: 176400, 192000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Capture:
Status: Stop
Interface 2
Altset 1
Format: S24_3LE
Channels: 2
Endpoint: 0x86 (6 IN) (ASYNC)
Rates: 44100, 48000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Interface 2
Altset 2
Format: S24_3LE
Channels: 2
Endpoint: 0x86 (6 IN) (ASYNC)
Rates: 88200, 96000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Interface 2
Altset 3
Format: S24_3LE
Channels: 2
Endpoint: 0x86 (6 IN) (ASYNC)
Rates: 176400, 192000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR