From: Cezary Rojewski <cezary.rojewski@intel.com>
To: broonie@kernel.org, tiwai@suse.com, perex@perex.cz
Cc: alsa-devel@alsa-project.org, linux-sound@vger.kernel.org,
amadeuszx.slawinski@linux.intel.com,
pierre-louis.bossart@linux.intel.com, hdegoede@redhat.com,
Cezary Rojewski <cezary.rojewski@intel.com>
Subject: [PATCH v5 12/16] ASoC: SOF: Intel: Switch to new stream-format interface
Date: Fri, 17 Nov 2023 13:06:06 +0100 [thread overview]
Message-ID: <20231117120610.1755254-13-cezary.rojewski@intel.com> (raw)
In-Reply-To: <20231117120610.1755254-1-cezary.rojewski@intel.com>
To provide option for selecting different bit-per-sample than just the
maximum one, use the new format calculation mechanism.
Acked-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
---
sound/soc/sof/intel/hda-dai-ops.c | 21 +++++++++++----------
1 file changed, 11 insertions(+), 10 deletions(-)
diff --git a/sound/soc/sof/intel/hda-dai-ops.c b/sound/soc/sof/intel/hda-dai-ops.c
index 87935554b1e4..55ce75db23e5 100644
--- a/sound/soc/sof/intel/hda-dai-ops.c
+++ b/sound/soc/sof/intel/hda-dai-ops.c
@@ -208,14 +208,16 @@ static unsigned int hda_calc_stream_format(struct snd_sof_dev *sdev,
struct snd_soc_dai *codec_dai = snd_soc_rtd_to_codec(rtd, 0);
unsigned int link_bps;
unsigned int format_val;
+ unsigned int bits;
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK)
link_bps = codec_dai->driver->playback.sig_bits;
else
link_bps = codec_dai->driver->capture.sig_bits;
- format_val = snd_hdac_calc_stream_format(params_rate(params), params_channels(params),
- params_format(params), link_bps, 0);
+ bits = snd_hdac_stream_format_bits(params_format(params), SNDRV_PCM_SUBFORMAT_STD,
+ link_bps);
+ format_val = snd_hdac_stream_format(params_channels(params), bits, params_rate(params));
dev_dbg(sdev->dev, "format_val=%#x, rate=%d, ch=%d, format=%d\n", format_val,
params_rate(params), params_channels(params), params_format(params));
@@ -238,11 +240,11 @@ static unsigned int generic_calc_stream_format(struct snd_sof_dev *sdev,
struct snd_pcm_hw_params *params)
{
unsigned int format_val;
+ unsigned int bits;
- format_val = snd_hdac_calc_stream_format(params_rate(params), params_channels(params),
- params_format(params),
- params_physical_width(params),
- 0);
+ bits = snd_hdac_stream_format_bits(params_format(params), SNDRV_PCM_SUBFORMAT_STD,
+ params_physical_width(params));
+ format_val = snd_hdac_stream_format(params_channels(params), bits, params_rate(params));
dev_dbg(sdev->dev, "format_val=%#x, rate=%d, ch=%d, format=%d\n", format_val,
params_rate(params), params_channels(params), params_format(params));
@@ -258,6 +260,7 @@ static unsigned int dmic_calc_stream_format(struct snd_sof_dev *sdev,
snd_pcm_format_t format;
unsigned int channels;
unsigned int width;
+ unsigned int bits;
channels = params_channels(params);
format = params_format(params);
@@ -269,10 +272,8 @@ static unsigned int dmic_calc_stream_format(struct snd_sof_dev *sdev,
width = 32;
}
- format_val = snd_hdac_calc_stream_format(params_rate(params), channels,
- format,
- width,
- 0);
+ bits = snd_hdac_stream_format_bits(format, SNDRV_PCM_SUBFORMAT_STD, width);
+ format_val = snd_hdac_stream_format(channels, bits, params_rate(params));
dev_dbg(sdev->dev, "format_val=%#x, rate=%d, ch=%d, format=%d\n", format_val,
params_rate(params), channels, format);
--
2.25.1
next prev parent reply other threads:[~2023-11-17 12:04 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-17 12:05 [PATCH v5 00/16] ALSA/ASoC: hda: Address format selection limitations and ambiguity Cezary Rojewski
2023-11-17 12:05 ` [PATCH v5 01/16] ALSA: pcm: Introduce MSBITS subformat interface Cezary Rojewski
2023-11-17 12:05 ` [PATCH v5 02/16] ALSA: hda: Honor subformat when querying PCMs Cezary Rojewski
2023-11-17 12:05 ` [PATCH v5 03/16] ASoC: pcm: Honor subformat when configuring runtime Cezary Rojewski
2023-11-17 12:05 ` [PATCH v5 04/16] ALSA: hda: Upgrade stream-format infrastructure Cezary Rojewski
2023-11-17 12:05 ` [PATCH v5 05/16] ALSA: hda: Switch to new stream-format interface Cezary Rojewski
2023-11-17 12:06 ` [PATCH v5 06/16] ALSA: hda/hdmi: " Cezary Rojewski
2023-11-17 12:06 ` [PATCH v5 07/16] ALSA: hda/ca0132: " Cezary Rojewski
2023-11-17 12:06 ` [PATCH v5 08/16] ASoC: codecs: hda: " Cezary Rojewski
2023-11-17 12:06 ` [PATCH v5 09/16] ASoC: codecs: hdac_hda: " Cezary Rojewski
2023-11-17 12:06 ` [PATCH v5 10/16] ASoC: codecs: hdac_hdmi: " Cezary Rojewski
2023-11-17 12:06 ` [PATCH v5 11/16] ASoC: Intel Skylake: " Cezary Rojewski
2023-11-17 12:06 ` Cezary Rojewski [this message]
2023-11-17 12:06 ` [PATCH v5 13/16] ASoC: Intel: avs: " Cezary Rojewski
2023-11-17 12:06 ` [PATCH v5 14/16] ALSA: hda: Drop snd_hdac_calc_stream_format() Cezary Rojewski
2023-11-17 12:06 ` [PATCH v5 15/16] ASoC: Intel: avs: Kill S24_LE format Cezary Rojewski
2023-11-17 12:06 ` [PATCH v5 16/16] ASoC: Intel: avs: Unhardcode HDAudio BE DAI drivers description Cezary Rojewski
2023-11-27 9:37 ` [PATCH v5 00/16] ALSA/ASoC: hda: Address format selection limitations and ambiguity Takashi Iwai
2023-11-27 10:13 ` Jaroslav Kysela
2023-11-27 16:30 ` Takashi Iwai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231117120610.1755254-13-cezary.rojewski@intel.com \
--to=cezary.rojewski@intel.com \
--cc=alsa-devel@alsa-project.org \
--cc=amadeuszx.slawinski@linux.intel.com \
--cc=broonie@kernel.org \
--cc=hdegoede@redhat.com \
--cc=linux-sound@vger.kernel.org \
--cc=perex@perex.cz \
--cc=pierre-louis.bossart@linux.intel.com \
--cc=tiwai@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox