diff options
Diffstat (limited to 'sound/usb/clock.c')
-rw-r--r-- | sound/usb/clock.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sound/usb/clock.c b/sound/usb/clock.c index 0b030d8fe3fa..17673f37fcc8 100644 --- a/sound/usb/clock.c +++ b/sound/usb/clock.c | |||
@@ -587,8 +587,15 @@ int snd_usb_init_sample_rate(struct snd_usb_audio *chip, int iface, | |||
587 | default: | 587 | default: |
588 | return set_sample_rate_v1(chip, iface, alts, fmt, rate); | 588 | return set_sample_rate_v1(chip, iface, alts, fmt, rate); |
589 | 589 | ||
590 | case UAC_VERSION_2: | ||
591 | case UAC_VERSION_3: | 590 | case UAC_VERSION_3: |
591 | if (chip->badd_profile >= UAC3_FUNCTION_SUBCLASS_GENERIC_IO) { | ||
592 | if (rate != UAC3_BADD_SAMPLING_RATE) | ||
593 | return -ENXIO; | ||
594 | else | ||
595 | return 0; | ||
596 | } | ||
597 | /* fall through */ | ||
598 | case UAC_VERSION_2: | ||
592 | return set_sample_rate_v2v3(chip, iface, alts, fmt, rate); | 599 | return set_sample_rate_v2v3(chip, iface, alts, fmt, rate); |
593 | } | 600 | } |
594 | } | 601 | } |