ASoC: SOF: Intel: hda: drop display power on/off in D0i3 flows
authorKai Vehmanen <kai.vehmanen@linux.intel.com>
Mon, 22 Mar 2021 14:38:30 +0000 (16:38 +0200)
committerMark Brown <broonie@kernel.org>
Tue, 23 Mar 2021 17:19:01 +0000 (17:19 +0000)
Controller needs to ensure display power is enabled only for
HDA controller reset. Drop the display power-up/down calls from
D0i3 entry/exit paths.

This was previously not possible as codec drivers could not resume the
links, and instead controller kept the reference to display power. The
state of display power had be maintained in the D0i3 entry/exit code.
With commit 87fc20e4a0cb ("ASoC: SOF: Intel: hda: use hdac_ext
fine-grained link management"), this is no longer needed and the code
can be cleaned up.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Keyon Jie <yang.jie@intel.com>
Link: https://lore.kernel.org/r/20210322143830.3880293-1-kai.vehmanen@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/intel/hda-dsp.c

index 6e24e1c..df4cb29 100644 (file)
@@ -727,8 +727,6 @@ int hda_dsp_resume(struct snd_sof_dev *sdev)
 
        /* resume from D0I3 */
        if (sdev->dsp_power_state.state == SOF_DSP_PM_D0) {
-               hda_codec_i915_display_power(sdev, true);
-
 #if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA)
                /* power up links that were active before suspend */
                list_for_each_entry(hlink, &bus->hlink_list, list) {
@@ -839,9 +837,6 @@ int hda_dsp_suspend(struct snd_sof_dev *sdev, u32 target_state)
        cancel_delayed_work_sync(&hda->d0i3_work);
 
        if (target_state == SOF_DSP_PM_D0) {
-               /* we can't keep a wakeref to display driver at suspend */
-               hda_codec_i915_display_power(sdev, false);
-
                /* Set DSP power state */
                ret = snd_sof_dsp_set_power_state(sdev, &target_dsp_state);
                if (ret < 0) {