summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorJerome Brunet <jbrunet@baylibre.com>2024-09-05 16:12:52 +0200
committerTakashi Iwai <tiwai@suse.de>2024-09-06 09:23:54 +0200
commit090624b7dc8389a516df3adb447a25dc0723adfe (patch)
tree42766109d53f0ae8c50e1708f6938eae4ace0549 /sound
parent2994586e2c484c5a3e799ba8e3f218894b8b0bb7 (diff)
downloadlwn-090624b7dc8389a516df3adb447a25dc0723adfe.tar.gz
lwn-090624b7dc8389a516df3adb447a25dc0723adfe.zip
ALSA: pcm: add more sample rate definitions
This adds a sample rate definition for 12kHz, 24kHz and 128kHz. Admittedly, just a few drivers are currently using these sample rates but there is enough of a recurrence to justify adding a definition for them and remove some custom rate constraint code while at it. The new definitions are not added to the interval definitions, such as SNDRV_PCM_RATE_8000_44100, because it would silently add new supported rates to drivers that may or may not support them. For sure the drivers have not been tested for these new rates so it is better to leave them out of interval definitions. That being said, the added rates are multiples of well know rates families, it is very likely that a lot of devices out there actually supports them. 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-1-8371948d3921@baylibre.com
Diffstat (limited to 'sound')
-rw-r--r--sound/core/pcm_native.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c
index 44381514f695..7461a727615c 100644
--- a/sound/core/pcm_native.c
+++ b/sound/core/pcm_native.c
@@ -2418,13 +2418,13 @@ static int snd_pcm_hw_rule_sample_bits(struct snd_pcm_hw_params *params,
return snd_interval_refine(hw_param_interval(params, rule->var), &t);
}
-#if SNDRV_PCM_RATE_5512 != 1 << 0 || SNDRV_PCM_RATE_192000 != 1 << 12
+#if SNDRV_PCM_RATE_5512 != 1 << 0 || SNDRV_PCM_RATE_768000 != 1 << 19
#error "Change this table"
#endif
static const unsigned int rates[] = {
- 5512, 8000, 11025, 16000, 22050, 32000, 44100,
- 48000, 64000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
+ 5512, 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000, 64000,
+ 88200, 96000, 128000, 176400, 192000, 352800, 384000, 705600, 768000,
};
const struct snd_pcm_hw_constraint_list snd_pcm_known_rates = {