|
@@ -1180,6 +1180,10 @@ static int snd_ice1712_playback_pro_open(struct snd_pcm_substream *substream)
|
|
|
snd_pcm_set_sync(substream);
|
|
|
snd_pcm_hw_constraint_msbits(runtime, 0, 32, 24);
|
|
|
snd_pcm_hw_constraint_list(runtime, 0, SNDRV_PCM_HW_PARAM_RATE, &hw_constraints_rates);
|
|
|
+ if (is_pro_rate_locked(ice)) {
|
|
|
+ runtime->hw.rate_min = PRO_RATE_DEFAULT;
|
|
|
+ runtime->hw.rate_max = PRO_RATE_DEFAULT;
|
|
|
+ }
|
|
|
|
|
|
if (ice->spdif.ops.open)
|
|
|
ice->spdif.ops.open(ice, substream);
|
|
@@ -1197,6 +1201,11 @@ static int snd_ice1712_capture_pro_open(struct snd_pcm_substream *substream)
|
|
|
snd_pcm_set_sync(substream);
|
|
|
snd_pcm_hw_constraint_msbits(runtime, 0, 32, 24);
|
|
|
snd_pcm_hw_constraint_list(runtime, 0, SNDRV_PCM_HW_PARAM_RATE, &hw_constraints_rates);
|
|
|
+ if (is_pro_rate_locked(ice)) {
|
|
|
+ runtime->hw.rate_min = PRO_RATE_DEFAULT;
|
|
|
+ runtime->hw.rate_max = PRO_RATE_DEFAULT;
|
|
|
+ }
|
|
|
+
|
|
|
return 0;
|
|
|
}
|
|
|
|