[igt-dev] [PATCH i-g-t] pm_rpm: Require DMC loaded before testing runtime_pm for gen9+
Rodrigo Vivi
rodrigo.vivi at intel.com
Fri Aug 17 21:35:53 UTC 2018
Since we block runtime PM if DMC is not loaded, let's skip
the test.
v2: Use i915_dmc_info presence to detect dmc requirement
instead of gen check as Chris suggested.
v3: Add missing \0 before using buf. (Chris)
Cc: Chris Wilson <chris at chris-wilson.co.uk>
Cc: Imre Deak <imre.deak at intel.com>
Cc: Anusha Srivatsa <anusha.srivatsa at intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
---
tests/pm_rpm.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/tests/pm_rpm.c b/tests/pm_rpm.c
index bbe36e59..fa0d98dc 100644
--- a/tests/pm_rpm.c
+++ b/tests/pm_rpm.c
@@ -693,6 +693,21 @@ static void setup_pc8(void)
has_pc8 = true;
}
+static bool dmc_loaded(void)
+{
+ char buf[15];
+ int len;
+
+ len = igt_sysfs_read(debugfs, "i915_dmc_info", buf, sizeof(buf));
+ if (len < 0)
+ return true; /* no CSR support, no DMC requirement */
+
+ buf[len] = '\0';
+
+ igt_info("DMC: %s\n", buf);
+ return strstr(buf, "fw loaded: yes");
+}
+
static bool setup_environment(void)
{
if (has_runtime_pm)
@@ -715,6 +730,7 @@ static bool setup_environment(void)
igt_info("Runtime PM support: %d\n", has_runtime_pm);
igt_info("PC8 residency support: %d\n", has_pc8);
igt_require(has_runtime_pm);
+ igt_require(dmc_loaded());
out:
disable_all_screens(&ms_data);
--
2.17.1
More information about the igt-dev
mailing list