Commit 0843e043 authored by Pierre-Louis Bossart's avatar Pierre-Louis Bossart Committed by Takashi Iwai

ALSA: x86: Use config base depending on the pipe

Now the pipe that is being used is passed over i915 notification, we
can re-setup the relevant register offset depending on pipe assignments
during hotplug.
This allows playback on single port machines such Zotac Pi330 or
dual-port machines such as Dell Wyse 3040 box
Signed-off-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 964ca808
...@@ -463,6 +463,22 @@ static void notify_audio_lpe(void *audio_ptr) ...@@ -463,6 +463,22 @@ static void notify_audio_lpe(void *audio_ptr)
} else if (eld != NULL) { } else if (eld != NULL) {
switch (eld->pipe_id) {
case 0:
ctx->had_config_offset = AUDIO_HDMI_CONFIG_A;
break;
case 1:
ctx->had_config_offset = AUDIO_HDMI_CONFIG_B;
break;
case 2:
ctx->had_config_offset = AUDIO_HDMI_CONFIG_C;
break;
default:
dev_dbg(&hlpe_pdev->dev, "Invalid pipe %d\n",
eld->pipe_id);
break;
}
hdmi_set_eld(eld->eld_data); hdmi_set_eld(eld->eld_data);
mid_hdmi_audio_signal_event(HAD_EVENT_HOT_PLUG); mid_hdmi_audio_signal_event(HAD_EVENT_HOT_PLUG);
...@@ -560,15 +576,15 @@ static int hdmi_lpe_audio_probe(struct platform_device *pdev) ...@@ -560,15 +576,15 @@ static int hdmi_lpe_audio_probe(struct platform_device *pdev)
ctx->mmio_start = mmio_start; ctx->mmio_start = mmio_start;
ctx->tmds_clock_speed = DIS_SAMPLE_RATE_148_5; ctx->tmds_clock_speed = DIS_SAMPLE_RATE_148_5;
if (pci_dev_present(cherryview_ids)) { if (pci_dev_present(cherryview_ids))
dev_dbg(&hlpe_pdev->dev, "%s: Cherrytrail LPE - Detected\n", dev_dbg(&hlpe_pdev->dev, "%s: Cherrytrail LPE - Detected\n",
__func__); __func__);
ctx->had_config_offset = AUDIO_HDMI_CONFIG_C; else
} else {
dev_dbg(&hlpe_pdev->dev, "%s: Baytrail LPE - Assume\n", dev_dbg(&hlpe_pdev->dev, "%s: Baytrail LPE - Assume\n",
__func__); __func__);
ctx->had_config_offset = AUDIO_HDMI_CONFIG_A;
} /* assume pipe A as default */
ctx->had_config_offset = AUDIO_HDMI_CONFIG_A;
pdata = pdev->dev.platform_data; pdata = pdev->dev.platform_data;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment