Merge tag 'asoc-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound...
[linux-2.6-microblaze.git] / sound / soc / codecs / hdac_hdmi.c
index db709ee..3ab2949 100644 (file)
@@ -2074,13 +2074,7 @@ static int hdac_hdmi_dev_probe(struct hdac_device *hdev)
         * Turned off in the runtime_suspend during the first explicit
         * pm_runtime_suspend call.
         */
-       ret = snd_hdac_display_power(hdev->bus, true);
-       if (ret < 0) {
-               dev_err(&hdev->dev,
-                       "Cannot turn on display power on i915 err: %d\n",
-                       ret);
-               return ret;
-       }
+       snd_hdac_display_power(hdev->bus, hdev->addr, true);
 
        ret = hdac_hdmi_parse_and_map_nid(hdev, &hdmi_dais, &num_dais);
        if (ret < 0) {
@@ -2108,6 +2102,8 @@ static int hdac_hdmi_dev_remove(struct hdac_device *hdev)
        struct hdac_hdmi_port *port, *port_next;
        int i;
 
+       snd_hdac_display_power(hdev->bus, hdev->addr, false);
+
        list_for_each_entry_safe(pcm, pcm_next, &hdmi->pcm_list, head) {
                pcm->cvt = NULL;
                if (list_empty(&pcm->port_list))
@@ -2213,7 +2209,6 @@ static int hdac_hdmi_runtime_suspend(struct device *dev)
        struct hdac_device *hdev = dev_to_hdac_dev(dev);
        struct hdac_bus *bus = hdev->bus;
        struct hdac_ext_link *hlink = NULL;
-       int err;
 
        dev_dbg(dev, "Enter: %s\n", __func__);
 
@@ -2239,11 +2234,9 @@ static int hdac_hdmi_runtime_suspend(struct device *dev)
 
        snd_hdac_ext_bus_link_put(bus, hlink);
 
-       err = snd_hdac_display_power(bus, false);
-       if (err < 0)
-               dev_err(dev, "Cannot turn off display power on i915\n");
+       snd_hdac_display_power(bus, hdev->addr, false);
 
-       return err;
+       return 0;
 }
 
 static int hdac_hdmi_runtime_resume(struct device *dev)
@@ -2251,7 +2244,6 @@ static int hdac_hdmi_runtime_resume(struct device *dev)
        struct hdac_device *hdev = dev_to_hdac_dev(dev);
        struct hdac_bus *bus = hdev->bus;
        struct hdac_ext_link *hlink = NULL;
-       int err;
 
        dev_dbg(dev, "Enter: %s\n", __func__);
 
@@ -2267,11 +2259,7 @@ static int hdac_hdmi_runtime_resume(struct device *dev)
 
        snd_hdac_ext_bus_link_get(bus, hlink);
 
-       err = snd_hdac_display_power(bus, true);
-       if (err < 0) {
-               dev_err(dev, "Cannot turn on display power on i915\n");
-               return err;
-       }
+       snd_hdac_display_power(bus, hdev->addr, true);
 
        hdac_hdmi_skl_enable_all_pins(hdev);
        hdac_hdmi_skl_enable_dp12(hdev);