From d1b08a89edeab5df3c1ca10cb74a5b527fee84d3 Mon Sep 17 00:00:00 2001 From: Paul Kocialkowki Date: Tue, 27 Jun 2017 13:53:05 +0300 Subject: lib/igt_aux: Use provided autoresume delay for rtc wake 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 Reviewed-by: Lyude Paul --- lib/igt_aux.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'lib/igt_aux.c') 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; } /** -- cgit v1.2.3