Re: [PATCH v2] ALSA: usb-audio: add sample-rate quirk for Yamaha 01V96i
From: Takashi Iwai
Date: Mon Oct 05 2026 - 06:35:42 EST
On Sun, 04 Oct 2026 21:20:50 +0200,
Justin Bacle wrote:
>
> The Yamaha 01V96i exposes its audio streaming interfaces as
> vendor-specific USB class 0xff and ships no class-specific endpoint
> descriptor. parse_uac_endpoint_attributes() therefore returns no
> attributes for the device, and without UAC_EP_CS_ATTR_SAMPLE_RATE the
> driver never issues the SET_CUR sampling-frequency request the hardware
> needs to start its USB audio stream. The playback and capture PCMs are
> reported as RUNNING and their pointers advance, but the mixer passes no
> audio in either direction.
>
> The vendor (Yamaha Steinberg) driver on Windows sends this request at
> startup; the generic driver does not. Add the 01V96i to
> snd_usb_audioformat_attributes_quirk() to force the attribute on, so the
> stream is initialised the same way.
>
> Confirmed against a usbmon capture of the Windows vendor driver: SET_CUR
> CS_SAMPLING_FREQ_CONTROL to endpoints 0x07 and 0x86 is the only
> non-standard control transfer it issues that completes successfully.
>
> Verified on a mainline 7.2.9 kernel with a loopback test: playing a
> 440 Hz tone on USB channels 1/2 and recording USB channels 9/10 returns
> the tone unchanged at 44100, 48000, 88200 and 96000 Hz.
>
> Tested-by: Justin Bacle <justin.bacle@xxxxxxxxx>
> Signed-off-by: Justin Bacle <justin.bacle@xxxxxxxxx>
Applied to for-next branch now. Thanks.
Takashi