ALSA: cmipci: drop SNDRV_PCM_RATE_KNOT

The custom rate constraint list was necessary to support 128kHz.
This rate is now available through SNDRV_PCM_RATE_128000.

Use it and drop the custom rate constraint rule.

Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Reviewed-by: David Rhodes <drhodes@opensource.cirrus.com>
Acked-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20240905-alsa-12-24-128-v1-2-8371948d3921@baylibre.com
This commit is contained in:
Jerome Brunet 2024-09-05 16:12:53 +02:00 committed by Takashi Iwai
parent 090624b7dc
commit 91dd20d855

View File

@ -1570,14 +1570,6 @@ static const struct snd_pcm_hardware snd_cmipci_capture_spdif =
.fifo_size = 0, .fifo_size = 0,
}; };
static const unsigned int rate_constraints[] = { 5512, 8000, 11025, 16000, 22050,
32000, 44100, 48000, 88200, 96000, 128000 };
static const struct snd_pcm_hw_constraint_list hw_constraints_rates = {
.count = ARRAY_SIZE(rate_constraints),
.list = rate_constraints,
.mask = 0,
};
/* /*
* check device open/close * check device open/close
*/ */
@ -1649,11 +1641,9 @@ static int snd_cmipci_playback_open(struct snd_pcm_substream *substream)
SNDRV_PCM_RATE_96000; SNDRV_PCM_RATE_96000;
runtime->hw.rate_max = 96000; runtime->hw.rate_max = 96000;
} else if (cm->chip_version == 55) { } else if (cm->chip_version == 55) {
err = snd_pcm_hw_constraint_list(runtime, 0, runtime->hw.rates |= SNDRV_PCM_RATE_88200 |
SNDRV_PCM_HW_PARAM_RATE, &hw_constraints_rates); SNDRV_PCM_RATE_96000 |
if (err < 0) SNDRV_PCM_RATE_128000;
return err;
runtime->hw.rates |= SNDRV_PCM_RATE_KNOT;
runtime->hw.rate_max = 128000; runtime->hw.rate_max = 128000;
} }
snd_pcm_hw_constraint_minmax(runtime, SNDRV_PCM_HW_PARAM_BUFFER_SIZE, 0, 0x10000); snd_pcm_hw_constraint_minmax(runtime, SNDRV_PCM_HW_PARAM_BUFFER_SIZE, 0, 0x10000);
@ -1675,11 +1665,9 @@ static int snd_cmipci_capture_open(struct snd_pcm_substream *substream)
runtime->hw.rate_min = 41000; runtime->hw.rate_min = 41000;
runtime->hw.rates = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000; runtime->hw.rates = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000;
} else if (cm->chip_version == 55) { } else if (cm->chip_version == 55) {
err = snd_pcm_hw_constraint_list(runtime, 0, runtime->hw.rates |= SNDRV_PCM_RATE_88200 |
SNDRV_PCM_HW_PARAM_RATE, &hw_constraints_rates); SNDRV_PCM_RATE_96000 |
if (err < 0) SNDRV_PCM_RATE_128000;
return err;
runtime->hw.rates |= SNDRV_PCM_RATE_KNOT;
runtime->hw.rate_max = 128000; runtime->hw.rate_max = 128000;
} }
snd_pcm_hw_constraint_minmax(runtime, SNDRV_PCM_HW_PARAM_BUFFER_SIZE, 0, 0x10000); snd_pcm_hw_constraint_minmax(runtime, SNDRV_PCM_HW_PARAM_BUFFER_SIZE, 0, 0x10000);
@ -1715,11 +1703,9 @@ static int snd_cmipci_playback2_open(struct snd_pcm_substream *substream)
SNDRV_PCM_RATE_96000; SNDRV_PCM_RATE_96000;
runtime->hw.rate_max = 96000; runtime->hw.rate_max = 96000;
} else if (cm->chip_version == 55) { } else if (cm->chip_version == 55) {
err = snd_pcm_hw_constraint_list(runtime, 0, runtime->hw.rates |= SNDRV_PCM_RATE_88200 |
SNDRV_PCM_HW_PARAM_RATE, &hw_constraints_rates); SNDRV_PCM_RATE_96000 |
if (err < 0) SNDRV_PCM_RATE_128000;
return err;
runtime->hw.rates |= SNDRV_PCM_RATE_KNOT;
runtime->hw.rate_max = 128000; runtime->hw.rate_max = 128000;
} }
snd_pcm_hw_constraint_minmax(runtime, SNDRV_PCM_HW_PARAM_BUFFER_SIZE, 0, 0x10000); snd_pcm_hw_constraint_minmax(runtime, SNDRV_PCM_HW_PARAM_BUFFER_SIZE, 0, 0x10000);