diff options
Diffstat (limited to 'sound/pci/ice1712/ice1712.c')
| -rw-r--r-- | sound/pci/ice1712/ice1712.c | 11 | 
1 files changed, 10 insertions, 1 deletions
| diff --git a/sound/pci/ice1712/ice1712.c b/sound/pci/ice1712/ice1712.c index c7cff6f8168a..4fc6d8bc637e 100644 --- a/sound/pci/ice1712/ice1712.c +++ b/sound/pci/ice1712/ice1712.c @@ -106,7 +106,7 @@ module_param_array(dxr_enable, int, NULL, 0444);  MODULE_PARM_DESC(dxr_enable, "Enable DXR support for Terratec DMX6FIRE."); -static const struct pci_device_id snd_ice1712_ids[] = { +static DEFINE_PCI_DEVICE_TABLE(snd_ice1712_ids) = {  	{ PCI_VDEVICE(ICE, PCI_DEVICE_ID_ICE_1712), 0 },   /* ICE1712 */  	{ 0, }  }; @@ -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;  } | 
