soundwire: intel_ace2x: simplify check_wake()
[linux-block.git] / drivers / soundwire / intel_ace2x.c
index 8812527af4a8ea026fdc9f9b9492739560513c42..75e629c938dcf63b4f940732fb10d03c6bdeb152 100644 (file)
@@ -51,22 +51,12 @@ static void intel_shim_vs_set_clock_source(struct sdw_intel *sdw, u32 source)
 
 static int intel_shim_check_wake(struct sdw_intel *sdw)
 {
-       u16 lsdiid = 0;
-       u16 wake_sts;
-       int ret;
-
-       /* find out which bits are set in LSDIID for this sublink */
-       ret = hdac_bus_eml_sdw_get_lsdiid_unlocked(sdw->link_res->hbus, sdw->instance, &lsdiid);
-       if (ret < 0)
-               return ret;
-
        /*
-        * we need to use the global HDaudio WAKEEN/STS to be able to detect
-        * wakes in low-power modes
+        * We follow the HDaudio example and resume unconditionally
+        * without checking the WAKESTS bit for that specific link
         */
-       wake_sts = snd_hdac_chip_readw(sdw->link_res->hbus, STATESTS);
 
-       return wake_sts & lsdiid;
+       return 1;
 }
 
 static void intel_shim_wake(struct sdw_intel *sdw, bool wake_enable)