This stores the autoresume delay provided via igt_set_autoresume_delay
for use during suspend via rtc wake scheduling. This delay was
previously only used for pm_test suspendm while the function suggests
it should be applied to all autoresume cases.

There is also definitely a use case for configuring the rtc wake delay,
so this implements it.

Signed-off-by: Paul Kocialkowski <paul.kocialkow...@linux.intel.com>
---
 lib/igt_aux.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/lib/igt_aux.c b/lib/igt_aux.c
index eb563f72..882dba06 100644
--- a/lib/igt_aux.c
+++ b/lib/igt_aux.c
@@ -680,6 +680,8 @@ void igt_cleanup_aperture_trashers(void)
        free(trash_bos);
 }
 
+static int autoresume_delay;
+
 static const char *suspend_state_name[] = {
        [SUSPEND_STATE_FREEZE] = "freeze",
        [SUSPEND_STATE_STANDBY] = "standby",
@@ -746,7 +748,10 @@ static void suspend_via_rtcwake(enum igt_suspend_state 
state)
 
        igt_assert(state < SUSPEND_STATE_NUM);
 
-       delay = state == SUSPEND_STATE_DISK ? 30 : 15;
+       if (autoresume_delay)
+               delay = autoresume_delay;
+       else
+               delay = state == SUSPEND_STATE_DISK ? 30 : 15;
 
        /*
         * Skip if rtcwake would fail for a reason not related to the kernel's
@@ -889,6 +894,8 @@ void igt_set_autoresume_delay(int delay_secs)
        igt_require(write(delay_fd, delay_str, strlen(delay_str)));
 
        close(delay_fd);
+
+       autoresume_delay = delay_secs;
 }
 
 /**
-- 
2.13.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to