Jaroslav Kysela
2112aa0349
ALSA: pcm: Introduce MSBITS subformat interface
...
Improve granularity of format selection for S32/U32 formats by adding
constants representing 20, 24 and MAX most significant bits.
The MAX means the maximum number of significant bits which can
the physical format hold. For 32-bit formats, MAX is related
to 32 bits. For 8-bit formats, MAX is related to 8 bits etc.
As there is only one user currently (format S32_LE), subformat is
represented by a simple u32 and stores flags only for that one user
alone. The approach of subformat being part of struct snd_pcm_hardware
is a compromise between ALSA and ASoC allowing for
hw_params-intersection code to be alloc/free-less while not adding any
new responsibilities to ASoC runtime structures.
Acked-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Co-developed-by: Cezary Rojewski <cezary.rojewski@intel.com>
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Link: https://lore.kernel.org/r/20231117120610.1755254-2-cezary.rojewski@intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2023-11-27 17:24:26 +01:00
..
2023-01-25 09:34:20 +01:00
2023-09-19 13:48:45 +01:00
2023-03-30 17:04:56 +02:00
2017-11-02 11:10:55 +01:00
2023-02-03 12:04:02 +00:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:25:18 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-06-19 17:09:55 +02:00
2017-11-02 11:10:55 +01:00
2023-05-23 12:11:21 +02:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2023-08-17 09:24:15 +02:00
2023-07-21 09:37:47 +02:00
2023-08-17 09:24:33 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-02-08 13:00:28 +00:00
2023-11-20 12:37:01 +01:00
2023-10-06 12:30:27 +01:00
2023-01-31 12:10:46 +00:00
2023-08-18 23:41:54 +01:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:37 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:32 -07:00
2023-05-23 18:49:36 +01:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2023-08-23 13:56:40 +01:00
2023-09-01 15:38:29 +02:00
2019-05-30 11:26:35 -07:00
2023-07-17 09:29:07 +02:00
2019-05-30 11:26:35 -07:00
2021-07-19 16:17:14 +02:00
2019-05-30 11:26:35 -07:00
2023-06-13 07:42:08 +02:00
2021-08-05 08:24:17 +02:00
2023-09-25 14:16:14 +02:00
2020-07-07 11:59:59 +02:00
2017-11-02 11:10:55 +01:00
2023-07-18 14:22:19 +02:00
2019-02-08 16:58:59 +01:00
2019-05-24 17:27:10 +02:00
2023-10-19 14:56:25 +02:00
2023-10-06 11:11:39 +02:00
2020-01-13 13:40:41 +01:00
2022-02-11 15:18:56 +01:00
2023-08-07 23:09:46 +01:00
2023-10-06 14:30:39 +02:00
2023-10-06 14:30:39 +02:00
2022-12-02 14:07:12 +00:00
2023-08-17 09:24:01 +02:00
2019-05-30 11:26:35 -07:00
2023-08-08 14:45:45 +02:00
2020-01-05 16:14:26 +01:00
2022-05-17 11:58:04 +01:00
2022-09-20 12:25:03 +01:00
2022-04-12 12:19:05 +02:00
2022-07-05 13:00:49 +01:00
2023-09-11 12:50:05 +01:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2022-08-24 08:00:26 +02:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2020-07-19 20:49:25 +02:00
2023-10-26 09:43:15 +02:00
2019-05-30 11:26:35 -07:00
2017-11-02 11:10:55 +01:00
2021-06-08 17:05:41 +02:00
2019-05-30 11:26:35 -07:00
2020-09-09 18:43:07 +02:00
2023-03-24 14:52:58 +01:00
2023-11-27 17:24:26 +01:00
2019-05-30 11:26:35 -07:00
2022-05-07 22:55:48 +02:00
2023-08-17 09:24:08 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-11-05 17:25:17 +00:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2023-08-17 15:10:11 +01:00
2023-08-17 15:10:12 +01:00
2023-08-17 15:10:13 +01:00
2023-08-17 15:10:13 +01:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2022-11-28 13:04:24 +00:00
2023-05-23 12:11:33 +02:00
2023-05-23 12:11:21 +02:00
2020-01-03 09:24:19 +01:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-06-19 17:09:55 +02:00
2018-08-02 10:56:59 +01:00
2023-10-23 13:29:45 +01:00
2023-09-26 17:18:45 +02:00
2017-11-13 15:45:57 +01:00
2023-09-16 00:05:56 +01:00
2023-09-12 18:53:48 +01:00
2023-09-25 14:16:13 +02:00
2023-09-01 15:38:49 +02:00
2023-10-27 17:44:04 +01:00
2023-10-10 17:07:17 +01:00
2023-05-19 02:31:14 +09:00
2020-11-30 12:54:02 +00:00
2020-12-09 12:13:38 +00:00
2023-01-30 16:56:41 +00:00
2023-10-10 17:07:17 +01:00
2023-09-19 13:49:13 +01:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:41 -07:00
2023-10-02 14:06:27 +01:00
2023-06-19 12:59:29 +01:00
2023-06-19 12:59:29 +01:00
2017-11-02 11:10:55 +01:00
2019-05-30 11:26:35 -07:00
2020-09-09 18:32:52 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:35 -07:00
2019-06-05 17:37:07 +02:00
2019-06-19 17:09:55 +02:00
2023-06-23 09:56:11 +02:00
2023-06-12 18:22:26 +02:00
2023-08-24 10:03:17 +02:00
2019-05-30 11:26:35 -07:00
2020-01-03 09:24:20 +01:00
2023-10-26 09:43:24 +02:00
2019-05-30 11:26:32 -07:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-10-25 11:06:57 +01:00
2019-05-30 11:26:32 -07:00
2020-06-15 20:58:33 +01:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:35 -07:00