mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-09 06:33:34 +00:00
ASoC: hdac_hdmi: use set_stream() instead of set_tdm_slots()
hdac_hdmi was not updated to use set_stream() instead of set_tdm_slots()
in the original commit so HDMI no longer produces audio.
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/regressions/CAJD_bPKQdtaExvVEKxhQ47G-ZXDA=k+gzhMJRHLBe=mysPnuKA@mail.gmail.com/
Fixes: 636110411c
("ASoC: Intel/SOF: use set_stream() instead of set_tdm_slots() for HDAudio")
Signed-off-by: Jason Montleon <jmontleo@redhat.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20230324170711.2526-1-jmontleo@redhat.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
a4a3203426
commit
f6887a71bd
@ -436,23 +436,28 @@ static int hdac_hdmi_setup_audio_infoframe(struct hdac_device *hdev,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int hdac_hdmi_set_tdm_slot(struct snd_soc_dai *dai,
|
||||
unsigned int tx_mask, unsigned int rx_mask,
|
||||
int slots, int slot_width)
|
||||
static int hdac_hdmi_set_stream(struct snd_soc_dai *dai,
|
||||
void *stream, int direction)
|
||||
{
|
||||
struct hdac_hdmi_priv *hdmi = snd_soc_dai_get_drvdata(dai);
|
||||
struct hdac_device *hdev = hdmi->hdev;
|
||||
struct hdac_hdmi_dai_port_map *dai_map;
|
||||
struct hdac_hdmi_pcm *pcm;
|
||||
struct hdac_stream *hstream;
|
||||
|
||||
dev_dbg(&hdev->dev, "%s: strm_tag: %d\n", __func__, tx_mask);
|
||||
if (!stream)
|
||||
return -EINVAL;
|
||||
|
||||
hstream = (struct hdac_stream *)stream;
|
||||
|
||||
dev_dbg(&hdev->dev, "%s: strm_tag: %d\n", __func__, hstream->stream_tag);
|
||||
|
||||
dai_map = &hdmi->dai_map[dai->id];
|
||||
|
||||
pcm = hdac_hdmi_get_pcm_from_cvt(hdmi, dai_map->cvt);
|
||||
|
||||
if (pcm)
|
||||
pcm->stream_tag = (tx_mask << 4);
|
||||
pcm->stream_tag = (hstream->stream_tag << 4);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -1544,7 +1549,7 @@ static const struct snd_soc_dai_ops hdmi_dai_ops = {
|
||||
.startup = hdac_hdmi_pcm_open,
|
||||
.shutdown = hdac_hdmi_pcm_close,
|
||||
.hw_params = hdac_hdmi_set_hw_params,
|
||||
.set_tdm_slot = hdac_hdmi_set_tdm_slot,
|
||||
.set_stream = hdac_hdmi_set_stream,
|
||||
};
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user