@@ -373,7 +373,6 @@ static int set_sample_rate_v2(struct snd_usb_audio *chip, int iface,
if (chip->usb_id == USB_ID(0x0e41, 0x4244) && rate == 48000)
return 0;
-
if (clock < 0)
return clock;
@@ -888,6 +888,8 @@ int snd_usb_endpoint_set_params(struct snd_usb_endpoint *ep,
if (snd_usb_get_speed(ep->chip->dev) == USB_SPEED_FULL)
ep->freqn = get_usb_full_speed_rate(rate);
+ else if (USB_ID(0x0e41, 0x4244))
+ ep->freqn = get_usb_high_speed_rate(rate + 5); // ugly helix hack, readout from focusrite scarlett on same usbbus
else
ep->freqn = get_usb_high_speed_rate(rate);
@@ -305,7 +305,7 @@ static int parse_audio_format_rates_v2(struct snd_usb_audio *chip,
if (chip->usb_id == USB_ID(0x0e41, 0x4244)) {
fp->nr_rates = 1;
fp->rate_min = 48000;
- fp->rate_max = 48000;
+ fp->rate_max = 48000;
fp->rates = SNDRV_PCM_RATE_48000;
fp->rate_table = kmalloc(sizeof(int), GFP_KERNEL);
fp->rate_table[0] = 48000;