* [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support
@ 2020-05-05 13:20 Anshuman Gupta
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 1/6] tests/i915_pm_lpsp: Nuke the panel-fitter test Anshuman Gupta
` (7 more replies)
0 siblings, 8 replies; 13+ messages in thread
From: Anshuman Gupta @ 2020-05-05 13:20 UTC (permalink / raw)
To: igt-dev; +Cc: jani.nikula
This series adds lpsp igt val platform agnostic support.
v6 has fixed the few review comment provided by Animesh
by adding a new patch in patchset.
Anshuman Gupta (6):
tests/i915_pm_lpsp: Nuke the panel-fitter test
lib/igt_pm: Add lib func to get lpsp capability
tests/i915_pm_lpsp: lpsp platform agnostic support
test/i915_pm_lpsp: Skip screens-disabled test for DC state platforms
tests/i915_pm_lpsp: screens-disabled subtest use igt_wait
tests/i915_pm_rpm: lpsp/non-lpsp screen mode_set_data
lib/igt_pm.c | 29 ++++
lib/igt_pm.h | 1 +
tests/i915/i915_pm_lpsp.c | 308 +++++++++++++++++---------------------
tests/i915/i915_pm_rpm.c | 53 ++++---
4 files changed, 198 insertions(+), 193 deletions(-)
--
2.26.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v6 1/6] tests/i915_pm_lpsp: Nuke the panel-fitter test
2020-05-05 13:20 [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support Anshuman Gupta
@ 2020-05-05 13:20 ` Anshuman Gupta
2020-05-07 5:56 ` Manna, Animesh
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 2/6] lib/igt_pm: Add lib func to get lpsp capability Anshuman Gupta
` (6 subsequent siblings)
7 siblings, 1 reply; 13+ messages in thread
From: Anshuman Gupta @ 2020-05-05 13:20 UTC (permalink / raw)
To: igt-dev; +Cc: jani.nikula
panel-fitter subtest is only applicable to HASWELL/BROADWELL.
It just tests non-lpsp(lpsp disabled) when panel fitter is
enforced by std 1024x768 mode.
There is no ROI to test non-lpsp kind of thing,
If HSW_GLOBAL power well is not enabled we would see
other display issues in other display tests.
Gen9+ platform has display scaling feature in built per
pipe, as lpsp is all about low power single pipe (PIPE A)
usage, gen9+ platforms also don't require panel-fitter subtest.
This should save some CI cycles.
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
---
tests/i915/i915_pm_lpsp.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/tests/i915/i915_pm_lpsp.c b/tests/i915/i915_pm_lpsp.c
index 42938e10..08f82e7c 100644
--- a/tests/i915/i915_pm_lpsp.c
+++ b/tests/i915/i915_pm_lpsp.c
@@ -219,8 +219,6 @@ igt_main
screens_disabled_subtest(drm_fd, drm_res);
igt_subtest("edp-native")
edp_subtest(drm_fd, drm_res, drm_connectors, devid, false);
- igt_subtest("edp-panel-fitter")
- edp_subtest(drm_fd, drm_res, drm_connectors, devid, true);
igt_subtest("non-edp")
non_edp_subtest(drm_fd, drm_res, drm_connectors);
--
2.26.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v6 2/6] lib/igt_pm: Add lib func to get lpsp capability
2020-05-05 13:20 [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support Anshuman Gupta
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 1/6] tests/i915_pm_lpsp: Nuke the panel-fitter test Anshuman Gupta
@ 2020-05-05 13:20 ` Anshuman Gupta
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 3/6] tests/i915_pm_lpsp: lpsp platform agnostic support Anshuman Gupta
` (5 subsequent siblings)
7 siblings, 0 replies; 13+ messages in thread
From: Anshuman Gupta @ 2020-05-05 13:20 UTC (permalink / raw)
To: igt-dev; +Cc: jani.nikula
This lib function evaluate the lpsp capability from
the connector specific debugfs attribute i915_lpsp_info.
v2:
- changed the lib function prefix igt_output_is_lpsp_capable
to i915_output_is_lpsp_capable. [Martin]
v3:
- early return for the connector which doesn't support
lpsp on any platform.
v4:
- debugfs entry changed from i915_lpsp_info to i915_lpsp_capability.
v5:
- return lpsp capability false if i915_lpsp_capability debugfs is not
present. [Animesh]
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
---
lib/igt_pm.c | 29 +++++++++++++++++++++++++++++
lib/igt_pm.h | 1 +
2 files changed, 30 insertions(+)
diff --git a/lib/igt_pm.c b/lib/igt_pm.c
index 9d441e1b..b409ec46 100644
--- a/lib/igt_pm.c
+++ b/lib/igt_pm.c
@@ -37,6 +37,7 @@
#include <dirent.h>
#include "drmtest.h"
+#include "igt_kms.h"
#include "igt_pm.h"
#include "igt_aux.h"
#include "igt_sysfs.h"
@@ -827,3 +828,31 @@ bool igt_pm_pc8_plus_residencies_enabled(int msr_fd)
return true;
}
+
+/**
+ * i915_output_is_lpsp_capable:
+ * @drm_fd: fd to drm device
+ * @output: igt output for which lpsp capability need to be evaluated
+ * Check lpsp capability for a given output.
+ *
+ * Returns:
+ * True if given output is lpsp capable otherwise false.
+ */
+bool i915_output_is_lpsp_capable(int drm_fd, igt_output_t *output)
+{
+ char buf[256];
+ int fd, len;
+
+ fd = igt_debugfs_connector_dir(drm_fd, output->name, O_RDONLY);
+ igt_require(fd >= 0);
+ len = igt_debugfs_simple_read(fd, "i915_lpsp_capability",
+ buf, sizeof(buf));
+
+ /* if i915_lpsp_capability not present return the capability as false */
+ if (len < 0)
+ return false;
+
+ close(fd);
+
+ return strstr(buf, "LPSP: capable");
+}
diff --git a/lib/igt_pm.h b/lib/igt_pm.h
index 5e438452..162d3ca3 100644
--- a/lib/igt_pm.h
+++ b/lib/igt_pm.h
@@ -53,5 +53,6 @@ enum igt_runtime_pm_status igt_get_runtime_pm_status(void);
bool igt_wait_for_pm_status(enum igt_runtime_pm_status status);
bool igt_pm_dmc_loaded(int debugfs);
bool igt_pm_pc8_plus_residencies_enabled(int msr_fd);
+bool i915_output_is_lpsp_capable(int drm_fd, igt_output_t *output);
#endif /* IGT_PM_H */
--
2.26.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v6 3/6] tests/i915_pm_lpsp: lpsp platform agnostic support
2020-05-05 13:20 [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support Anshuman Gupta
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 1/6] tests/i915_pm_lpsp: Nuke the panel-fitter test Anshuman Gupta
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 2/6] lib/igt_pm: Add lib func to get lpsp capability Anshuman Gupta
@ 2020-05-05 13:20 ` Anshuman Gupta
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 4/6] test/i915_pm_lpsp: Skip screens-disabled test for DC state platforms Anshuman Gupta
` (4 subsequent siblings)
7 siblings, 0 replies; 13+ messages in thread
From: Anshuman Gupta @ 2020-05-05 13:20 UTC (permalink / raw)
To: igt-dev; +Cc: jani.nikula
Current implementation of lpsp igt test, assumed that every non-edp
panel isn't a lpsp panel but it is not true on TGL anymore,
any HDMI/DP/DSI panel connected on pipe A and connected to PORT_{A,B,C}
can drive LPSP.
Even on older Gen9 platform a DP panel can drive lpsp on Port A.
This requires complete design change in current lpsp igt for a platform
agnostic support.
The new igt approach is relies on connector specific
i915_lpsp_capability and i915_lpsp_status debugfs attributes,
these debugfs exposes whether an output is capable of driving lpsp
and lpsp is enabled.
Nuking edp-native and non-edp test, introducing a new dynamic
igt subtest kms-lpsp, which validates lpsp on each connected output
and skip the subtest if output is not lpsp capable.
v2:
- CI failures fixup.
v3:
- removed unloading of snd_modules. [Martin]
v4:
- Don't test non-lpsp(if lpsp disabled), no ROI to test that.
- nuke panel-fitter test.
v5:
- Added dynamic subtest and igt changes according to kernel
debugfs i915_lpsp_status changes.
v6:
- Avoided pipe big joiner by using 4k or lesser mode,
so igt will not fail when pipe big joiner patches will
land to kernel.
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
---
tests/i915/i915_pm_lpsp.c | 301 +++++++++++++++++---------------------
1 file changed, 133 insertions(+), 168 deletions(-)
diff --git a/tests/i915/i915_pm_lpsp.c b/tests/i915/i915_pm_lpsp.c
index 08f82e7c..8d2e23fe 100644
--- a/tests/i915/i915_pm_lpsp.c
+++ b/tests/i915/i915_pm_lpsp.c
@@ -25,210 +25,175 @@
*/
#include "igt.h"
+#include "igt_kmod.h"
+#include "igt_pm.h"
+#include "igt_sysfs.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
+#define MAX_SINK_LPSP_INFO_BUF_LEN 4096
-static bool supports_lpsp(uint32_t devid)
-{
- return IS_HASWELL(devid) || IS_BROADWELL(devid);
-}
+#define PWR_DOMAIN_INFO "i915_power_domain_info"
-static bool lpsp_is_enabled(int drm_fd)
+typedef struct {
+ int drm_fd;
+ int debugfs_fd;
+ uint32_t devid;
+ char *pwr_dmn_info;
+ igt_display_t display;
+ struct igt_fb fb;
+ drmModeModeInfo *mode;
+ igt_output_t *output;
+} data_t;
+
+static bool lpsp_is_enabled(data_t *data)
{
- uint32_t val;
+ char buf[MAX_SINK_LPSP_INFO_BUF_LEN];
+ int len;
- val = INREG(HSW_PWR_WELL_CTL2);
- return !(val & HSW_PWR_WELL_STATE_ENABLED);
-}
+ len = igt_debugfs_simple_read(data->debugfs_fd, "i915_lpsp_status",
+ buf, sizeof(buf));
+ if (len < 0)
+ igt_assert_eq(len, -ENODEV);
-/* The LPSP mode is all about an enabled pipe, but we expect to also be in the
- * low power mode when no pipes are enabled, so do this check anyway. */
-static void screens_disabled_subtest(int drm_fd, drmModeResPtr drm_res)
-{
- kmstest_unset_all_crtcs(drm_fd, drm_res);
- igt_assert(lpsp_is_enabled(drm_fd));
+ igt_skip_on(strstr(buf, "LPSP: not supported"));
+
+ return strstr(buf, "LPSP: enabled");
}
-static uint32_t create_fb(int drm_fd, int width, int height)
+/*
+ * The LPSP mode is all about an enabled pipe, but we expect to also be in the
+ * low power mode when no pipes are enabled, so do this check anyway.
+ */
+static void screens_disabled_subtest(data_t *data)
{
- struct igt_fb fb;
+ igt_output_t *output;
+ int valid_output = 0;
+ enum pipe pipe;
+
+ for_each_pipe_with_single_output(&data->display, pipe, output) {
+ data->output = output;
+ igt_output_set_pipe(data->output, PIPE_NONE);
+ igt_display_commit(&data->display);
+ valid_output++;
+ }
- return igt_create_pattern_fb(drm_fd, width, height, DRM_FORMAT_XRGB8888,
- LOCAL_DRM_FORMAT_MOD_NONE, &fb);
+ igt_require_f(valid_output, "No connected output found\n");
+ igt_assert_f(lpsp_is_enabled(data), "lpsp is not enabled\n%s:\n%s\n",
+ PWR_DOMAIN_INFO, data->pwr_dmn_info =
+ igt_sysfs_get(data->debugfs_fd, PWR_DOMAIN_INFO));
}
-static void edp_subtest(int drm_fd, drmModeResPtr drm_res,
- drmModeConnectorPtr *drm_connectors, uint32_t devid,
- bool use_panel_fitter)
+static void setup_lpsp_output(data_t *data)
{
- int i, rc;
- uint32_t crtc_id = 0, buffer_id = 0;
- drmModeConnectorPtr connector = NULL;
- drmModeModeInfoPtr mode = NULL;
- drmModeModeInfo std_1024_mode = {
- .clock = 65000,
- .hdisplay = 1024,
- .hsync_start = 1048,
- .hsync_end = 1184,
- .htotal = 1344,
- .hskew = 0,
- .vdisplay = 768,
- .vsync_start = 771,
- .vsync_end = 777,
- .vtotal = 806,
- .vscan = 0,
- .vrefresh = 60,
- .flags = 0xA,
- .type = 0x40,
- .name = "Custom 1024x768",
- };
-
- kmstest_unset_all_crtcs(drm_fd, drm_res);
-
- for (i = 0; i < drm_res->count_connectors; i++) {
- drmModeConnectorPtr c = drm_connectors[i];
-
- if (c->connector_type != DRM_MODE_CONNECTOR_eDP)
- continue;
- if (c->connection != DRM_MODE_CONNECTED)
- continue;
-
- if (!use_panel_fitter && c->count_modes) {
- connector = c;
- mode = &c->modes[0];
- break;
- }
- if (use_panel_fitter) {
- connector = c;
-
- /* This is one of the modes Xorg creates for panels, so
- * it should work just fine. Notice that Gens that
- * support LPSP are too new for panels with native
- * 1024x768 resolution, so this should force the panel
- * fitter. */
- igt_assert(c->count_modes &&
- c->modes[0].hdisplay > 1024);
- igt_assert(c->count_modes &&
- c->modes[0].vdisplay > 768);
- mode = &std_1024_mode;
- break;
- }
- }
- igt_require(connector);
-
- crtc_id = kmstest_find_crtc_for_connector(drm_fd, drm_res, connector,
- 0);
- buffer_id = create_fb(drm_fd, mode->hdisplay, mode->vdisplay);
-
- igt_assert(buffer_id);
- igt_assert(connector);
- igt_assert(mode);
-
- rc = drmModeSetCrtc(drm_fd, crtc_id, buffer_id, 0, 0,
- &connector->connector_id, 1, mode);
- igt_assert_eq(rc, 0);
-
- if (use_panel_fitter) {
- if (IS_HASWELL(devid))
- igt_assert(!lpsp_is_enabled(drm_fd));
- else
- igt_assert(lpsp_is_enabled(drm_fd));
- } else {
- igt_assert(lpsp_is_enabled(drm_fd));
- }
+ igt_plane_t *primary;
+
+ /* set output pipe = PIPE_A for LPSP */
+ igt_output_set_pipe(data->output, PIPE_A);
+ primary = igt_output_get_plane_type(data->output,
+ DRM_PLANE_TYPE_PRIMARY);
+ igt_plane_set_fb(primary, NULL);
+ igt_create_pattern_fb(data->drm_fd,
+ data->mode->hdisplay, data->mode->vdisplay,
+ DRM_FORMAT_XRGB8888,
+ LOCAL_DRM_FORMAT_MOD_NONE,
+ &data->fb);
+ igt_plane_set_fb(primary, &data->fb);
+ igt_display_commit(&data->display);
}
-static void non_edp_subtest(int drm_fd, drmModeResPtr drm_res,
- drmModeConnectorPtr *drm_connectors)
+static void test_cleanup(data_t *data)
{
- int i, rc;
- uint32_t crtc_id = 0, buffer_id = 0;
- drmModeConnectorPtr connector = NULL;
- drmModeModeInfoPtr mode = NULL;
-
- kmstest_unset_all_crtcs(drm_fd, drm_res);
-
- for (i = 0; i < drm_res->count_connectors; i++) {
- drmModeConnectorPtr c = drm_connectors[i];
-
- if (c->connector_type == DRM_MODE_CONNECTOR_eDP)
- continue;
- if (c->connection != DRM_MODE_CONNECTED)
- continue;
+ igt_plane_t *primary;
+
+ if (!data->output || data->output->pending_pipe == PIPE_NONE)
+ return;
+
+ primary = igt_output_get_plane_type(data->output,
+ DRM_PLANE_TYPE_PRIMARY);
+ igt_plane_set_fb(primary, NULL);
+ igt_output_set_pipe(data->output, PIPE_NONE);
+ igt_display_commit(&data->display);
+ igt_remove_fb(data->drm_fd, &data->fb);
+ data->output = NULL;
+}
- if (c->count_modes) {
- connector = c;
- mode = &c->modes[0];
- break;
+static void test_lpsp(data_t *data)
+{
+ drmModeConnectorPtr c = data->output->config.connector;
+ int i;
+
+ /* LPSP is low power single pipe usages i.e. PIPE_A */
+ igt_require(igt_pipe_connector_valid(PIPE_A, data->output));
+ igt_require_f(i915_output_is_lpsp_capable(data->drm_fd, data->output),
+ "output is not lpsp capable\n");
+
+ data->mode = igt_output_get_mode(data->output);
+
+ /* For LPSP avoid pipe big joiner by atleast 4k mode */
+ if (data->mode->hdisplay > 3860 && data->mode->vdisplay > 2160)
+ for (i = 1; i < c->count_modes; i++) {
+ if (c->modes[i].hdisplay <= 3860 &&
+ c->modes[i].vdisplay <= 2160) {
+ data->mode = &c->modes[i];
+ igt_output_override_mode(data->output,
+ data->mode);
+ break;
+ }
}
- }
- igt_require(connector);
-
- crtc_id = kmstest_find_crtc_for_connector(drm_fd, drm_res, connector,
- 0);
- buffer_id = create_fb(drm_fd, mode->hdisplay, mode->vdisplay);
- igt_assert(buffer_id);
- igt_assert(mode);
+ igt_require(data->mode->hdisplay <= 3860 &&
+ data->mode->vdisplay <= 2160);
- rc = drmModeSetCrtc(drm_fd, crtc_id, buffer_id, 0, 0,
- &connector->connector_id, 1, mode);
- igt_assert_eq(rc, 0);
-
- igt_assert(!lpsp_is_enabled(drm_fd));
+ setup_lpsp_output(data);
+ igt_assert_f(lpsp_is_enabled(data), "%s: lpsp is not enabled\n%s:\n%s\n",
+ data->output->name, PWR_DOMAIN_INFO, data->pwr_dmn_info =
+ igt_sysfs_get(data->debugfs_fd, PWR_DOMAIN_INFO));
}
-#define MAX_CONNECTORS 32
-
-int drm_fd;
-uint32_t devid;
-drmModeResPtr drm_res;
-drmModeConnectorPtr drm_connectors[MAX_CONNECTORS];
-struct intel_mmio_data mmio_data;
+IGT_TEST_DESCRIPTION("These tests validates display Low Power Single Pipe configurations");
igt_main
{
- igt_fixture {
- int i;
-
- drm_fd = drm_open_driver_master(DRIVER_INTEL);
- igt_require(drm_fd >= 0);
-
- devid = intel_get_drm_devid(drm_fd);
+ data_t data = {};
- drm_res = drmModeGetResources(drm_fd);
- igt_require(drm_res);
- igt_assert(drm_res->count_connectors <= MAX_CONNECTORS);
-
- for (i = 0; i < drm_res->count_connectors; i++)
- drm_connectors[i] = drmModeGetConnectorCurrent(drm_fd,
- drm_res->connectors[i]);
+ igt_fixture {
+ data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
+ igt_require(data.drm_fd >= 0);
+ data.debugfs_fd = igt_debugfs_dir(data.drm_fd);
+ igt_require(data.debugfs_fd >= 0);
igt_pm_enable_audio_runtime_pm();
-
- igt_require(supports_lpsp(devid));
-
- intel_register_access_init(&mmio_data, intel_get_pci_device(), 0, drm_fd);
-
kmstest_set_vt_graphics_mode();
+ data.devid = intel_get_drm_devid(data.drm_fd);
+ igt_display_require(&data.display, data.drm_fd);
+ igt_require(igt_pm_dmc_loaded(data.debugfs_fd));
}
+ igt_describe("This test validates lpsp while all crtc are disabled");
igt_subtest("screens-disabled")
- screens_disabled_subtest(drm_fd, drm_res);
- igt_subtest("edp-native")
- edp_subtest(drm_fd, drm_res, drm_connectors, devid, false);
- igt_subtest("non-edp")
- non_edp_subtest(drm_fd, drm_res, drm_connectors);
+ screens_disabled_subtest(&data);
- igt_fixture {
- int i;
+ igt_describe("This test validates lpsp on all connected outputs on low power PIPE_A");
+ igt_subtest_with_dynamic_f("kms-lpsp") {
+ igt_display_t *display = &data.display;
+ igt_output_t *output;
+
+ for_each_connected_output(display, output) {
+ igt_dynamic_f("kms-lpsp-%s",
+ kmstest_connector_type_str(output->config.connector->connector_type)) {
+ data.output = output;
+ test_lpsp(&data);
+ }
- intel_register_access_fini(&mmio_data);
- for (i = 0; i < drm_res->count_connectors; i++)
- drmModeFreeConnector(drm_connectors[i]);
- drmModeFreeResources(drm_res);
- close(drm_fd);
+ test_cleanup(&data);
+ }
+ }
+
+ igt_fixture {
+ free(data.pwr_dmn_info);
+ close(data.drm_fd);
+ igt_display_fini(&data.display);
}
}
--
2.26.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v6 4/6] test/i915_pm_lpsp: Skip screens-disabled test for DC state platforms
2020-05-05 13:20 [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support Anshuman Gupta
` (2 preceding siblings ...)
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 3/6] tests/i915_pm_lpsp: lpsp platform agnostic support Anshuman Gupta
@ 2020-05-05 13:20 ` Anshuman Gupta
2020-05-07 6:26 ` Manna, Animesh
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 5/6] tests/i915_pm_lpsp: screens-disabled subtest use igt_wait Anshuman Gupta
` (3 subsequent siblings)
7 siblings, 1 reply; 13+ messages in thread
From: Anshuman Gupta @ 2020-05-05 13:20 UTC (permalink / raw)
To: igt-dev; +Cc: jani.nikula
screens-disabled test is only valid for the plaforms like HSW/BDW
where PG1 is Always-ON power domain, so these platform test lpsp
with all screen disabled i.e validate PG2 when all screen are
disabled.
DC state i.e DMC f/w supported platforms don't have any ROI to validate
screen-disabled subtest as existing dc*-dpms i915_pm_dc subtest
already validate it implicitly.
This should save some CI-Cycles.
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
---
tests/i915/i915_pm_lpsp.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/tests/i915/i915_pm_lpsp.c b/tests/i915/i915_pm_lpsp.c
index 8d2e23fe..56980de2 100644
--- a/tests/i915/i915_pm_lpsp.c
+++ b/tests/i915/i915_pm_lpsp.c
@@ -172,8 +172,11 @@ igt_main
}
igt_describe("This test validates lpsp while all crtc are disabled");
- igt_subtest("screens-disabled")
+ igt_subtest("screens-disabled") {
+ igt_skip_on_f(openat(data.debugfs_fd, "i915_dmc_info", O_RDONLY) > 0,
+ "DC states supported platform don't have ROI for this subtest\n");
screens_disabled_subtest(&data);
+ }
igt_describe("This test validates lpsp on all connected outputs on low power PIPE_A");
igt_subtest_with_dynamic_f("kms-lpsp") {
--
2.26.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v6 5/6] tests/i915_pm_lpsp: screens-disabled subtest use igt_wait
2020-05-05 13:20 [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support Anshuman Gupta
` (3 preceding siblings ...)
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 4/6] test/i915_pm_lpsp: Skip screens-disabled test for DC state platforms Anshuman Gupta
@ 2020-05-05 13:20 ` Anshuman Gupta
2020-05-07 6:05 ` Manna, Animesh
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 6/6] tests/i915_pm_rpm: lpsp/non-lpsp screen mode_set_data Anshuman Gupta
` (2 subsequent siblings)
7 siblings, 1 reply; 13+ messages in thread
From: Anshuman Gupta @ 2020-05-05 13:20 UTC (permalink / raw)
To: igt-dev; +Cc: jani.nikula
When all screens are disabled, it takes some time to release
eDP/DP AUX IO power domain ref count. Also, delayed audio codec
disabling takes time to release AUDIO power domain ref-count,
using igt_wait to check lpsp after disabling all screens.
v2:
- Added a code comment for delay of igt_wait. [Animesh]
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
---
tests/i915/i915_pm_lpsp.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/tests/i915/i915_pm_lpsp.c b/tests/i915/i915_pm_lpsp.c
index 56980de2..986bfc03 100644
--- a/tests/i915/i915_pm_lpsp.c
+++ b/tests/i915/i915_pm_lpsp.c
@@ -81,7 +81,9 @@ static void screens_disabled_subtest(data_t *data)
}
igt_require_f(valid_output, "No connected output found\n");
- igt_assert_f(lpsp_is_enabled(data), "lpsp is not enabled\n%s:\n%s\n",
+ /* eDP panel may have power_cycle_delay of 600ms, 1sec delay is safer */
+ igt_assert_f(igt_wait(lpsp_is_enabled(data), 1000, 100),
+ "lpsp is not enabled\n%s:\n%s\n",
PWR_DOMAIN_INFO, data->pwr_dmn_info =
igt_sysfs_get(data->debugfs_fd, PWR_DOMAIN_INFO));
}
--
2.26.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v6 6/6] tests/i915_pm_rpm: lpsp/non-lpsp screen mode_set_data
2020-05-05 13:20 [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support Anshuman Gupta
` (4 preceding siblings ...)
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 5/6] tests/i915_pm_lpsp: screens-disabled subtest use igt_wait Anshuman Gupta
@ 2020-05-05 13:20 ` Anshuman Gupta
2020-05-07 6:15 ` Manna, Animesh
2020-05-05 14:11 ` [igt-dev] ✓ Fi.CI.BAT: success for lpsp platform agnostic support (rev9) Patchwork
2020-05-06 1:49 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
7 siblings, 1 reply; 13+ messages in thread
From: Anshuman Gupta @ 2020-05-05 13:20 UTC (permalink / raw)
To: igt-dev; +Cc: jani.nikula
Initialize the mode set params for lpsp/non-lpsp screen
based upon their output lpsp capability instead
of edp/non-edp output type.
v2:
- CI failures fixup.
v3:
- changes according to lib function igt_output_is_lpsp_capable
prefix chnaged to i915_output_is_lpsp_capable.
Acked-by: Martin Peres <martin.peres@linux.intel.com>
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
---
tests/i915/i915_pm_rpm.c | 53 +++++++++++++++++++++++-----------------
1 file changed, 30 insertions(+), 23 deletions(-)
diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c
index fedef872..cb355a53 100644
--- a/tests/i915/i915_pm_rpm.c
+++ b/tests/i915/i915_pm_rpm.c
@@ -94,6 +94,7 @@ struct mode_set_data {
drmModeResPtr res;
drmModeConnectorPtr connectors[MAX_CONNECTORS];
drmModePropertyBlobPtr edids[MAX_CONNECTORS];
+ igt_display_t display;
uint32_t devid;
};
@@ -254,29 +255,29 @@ static bool init_modeset_params_for_type(struct mode_set_data *data,
{
drmModeConnectorPtr connector = NULL;
drmModeModeInfoPtr mode = NULL;
+ igt_output_t *output = NULL;
+ igt_display_t *display = &data->display;
- if (!data->res)
+ if (!data->res || !display)
return false;
- for (int i = 0; i < data->res->count_connectors; i++) {
- drmModeConnectorPtr c = data->connectors[i];
+ for_each_connected_output(display, output) {
+ drmModeConnectorPtr c = output->config.connector;
if (type == SCREEN_TYPE_LPSP &&
- c->connector_type != DRM_MODE_CONNECTOR_eDP)
+ !i915_output_is_lpsp_capable(drm_fd, output))
continue;
if (type == SCREEN_TYPE_NON_LPSP &&
- c->connector_type == DRM_MODE_CONNECTOR_eDP)
+ i915_output_is_lpsp_capable(drm_fd, output))
continue;
- if (c->connection == DRM_MODE_CONNECTED && c->count_modes) {
- connector = c;
- mode = &c->modes[0];
- break;
- }
+ connector = c;
+ mode = igt_output_get_mode(output);
+ break;
}
- if (!connector)
+ if (!connector || !mode)
return false;
igt_create_pattern_fb(drm_fd, mode->hdisplay, mode->vdisplay,
@@ -397,6 +398,7 @@ static void init_mode_set_data(struct mode_set_data *data)
kmstest_set_vt_graphics_mode();
}
+ igt_display_require(&data->display, drm_fd);
data->devid = intel_get_drm_devid(drm_fd);
init_modeset_cached_params(&ms_data);
}
@@ -410,6 +412,8 @@ static void fini_mode_set_data(struct mode_set_data *data)
}
drmModeFreeResources(data->res);
}
+
+ igt_display_fini(&data->display);
}
static void get_drm_info(struct compare_data *data)
@@ -760,7 +764,7 @@ static void dump_file(int dir, const char *filename)
free(contents);
}
-static bool setup_environment(void)
+static bool setup_environment(bool display_disabled)
{
if (has_runtime_pm)
goto out;
@@ -772,7 +776,8 @@ static bool setup_environment(void)
debugfs = igt_debugfs_dir(drm_fd);
igt_require(debugfs != -1);
- init_mode_set_data(&ms_data);
+ if (!display_disabled)
+ init_mode_set_data(&ms_data);
igt_pm_enable_sata_link_power_management();
@@ -785,13 +790,14 @@ static bool setup_environment(void)
igt_require(igt_pm_dmc_loaded(debugfs));
out:
- disable_all_screens(&ms_data);
+ if (!display_disabled)
+ disable_all_screens(&ms_data);
dump_file(debugfs, "i915_runtime_pm_status");
return wait_for_suspended();
}
-static void teardown_environment(void)
+static void teardown_environment(bool display_disabled)
{
close(msr_fd);
if (has_pc8)
@@ -801,7 +807,8 @@ static void teardown_environment(void)
igt_pm_restore_sata_link_power_management();
- fini_mode_set_data(&ms_data);
+ if (!display_disabled)
+ fini_mode_set_data(&ms_data);
close(debugfs);
close(drm_fd);
@@ -2004,7 +2011,7 @@ static struct option long_options[] = {
igt_main_args("", long_options, help_str, opt_handler, NULL)
{
igt_subtest("basic-rte") {
- igt_assert(setup_environment());
+ igt_assert(setup_environment(false));
basic_subtest();
}
@@ -2012,7 +2019,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
* PC8+. We don't want bug reports from cases where the machine is just
* not properly configured. */
igt_fixture
- igt_require(setup_environment());
+ igt_require(setup_environment(false));
if (stay)
igt_subtest("stay")
@@ -2142,7 +2149,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
}
igt_fixture
- teardown_environment();
+ teardown_environment(false);
igt_subtest("module-reload") {
igt_debug("Reload w/o display\n");
@@ -2151,9 +2158,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
igt_kmsg(KMSG_INFO "Reloading i915 w/o display\n");
igt_assert_eq(igt_i915_driver_load("disable_display=1 mmio_debug=-1"), 0);
- igt_assert(setup_environment());
+ igt_assert(setup_environment(true));
igt_assert(igt_wait(device_in_pci_d3(), 2000, 100));
- teardown_environment();
+ teardown_environment(true);
igt_debug("Reload as normal\n");
igt_i915_driver_unload();
@@ -2161,11 +2168,11 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
igt_kmsg(KMSG_INFO "Reloading i915 as normal\n");
igt_assert_eq(igt_i915_driver_load("mmio_debug=-1"), 0);
- igt_assert(setup_environment());
+ igt_assert(setup_environment(false));
igt_assert(igt_wait(device_in_pci_d3(), 2000, 100));
if (enable_one_screen_with_type(&ms_data, SCREEN_TYPE_ANY))
drm_resources_equal_subtest();
- teardown_environment();
+ teardown_environment(false);
/* Remove our mmio_debugging module */
igt_i915_driver_unload();
--
2.26.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for lpsp platform agnostic support (rev9)
2020-05-05 13:20 [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support Anshuman Gupta
` (5 preceding siblings ...)
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 6/6] tests/i915_pm_rpm: lpsp/non-lpsp screen mode_set_data Anshuman Gupta
@ 2020-05-05 14:11 ` Patchwork
2020-05-06 1:49 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2020-05-05 14:11 UTC (permalink / raw)
To: Anshuman Gupta; +Cc: igt-dev
== Series Details ==
Series: lpsp platform agnostic support (rev9)
URL : https://patchwork.freedesktop.org/series/74647/
State : success
== Summary ==
CI Bug Log - changes from IGT_5633 -> IGTPW_4534
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/index.html
Known issues
------------
Here are the changes found in IGTPW_4534 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_pm_rpm@module-reload:
- fi-kbl-8809g: [PASS][1] -> [SKIP][2] ([fdo#109271])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/fi-kbl-8809g/igt@i915_pm_rpm@module-reload.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/fi-kbl-8809g/igt@i915_pm_rpm@module-reload.html
#### Possible fixes ####
* igt@i915_selftest@live@gt_pm:
- fi-bwr-2160: [INCOMPLETE][3] ([i915#489]) -> [PASS][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/fi-bwr-2160/igt@i915_selftest@live@gt_pm.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/fi-bwr-2160/igt@i915_selftest@live@gt_pm.html
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[i915#489]: https://gitlab.freedesktop.org/drm/intel/issues/489
Participating hosts (50 -> 43)
------------------------------
Missing (7): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5633 -> IGTPW_4534
CI-20190529: 20190529
CI_DRM_8430: 2daa6f8cad645f49a898158190a20a893b4aabe3 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_4534: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/index.html
IGT_5633: c8c2e5ed5cd8e4b7a69a903f3f1653612086abcc @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Testlist changes ==
+igt@i915_pm_lpsp@kms-lpsp
-igt@i915_pm_lpsp@edp-native
-igt@i915_pm_lpsp@edp-panel-fitter
-igt@i915_pm_lpsp@non-edp
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for lpsp platform agnostic support (rev9)
2020-05-05 13:20 [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support Anshuman Gupta
` (6 preceding siblings ...)
2020-05-05 14:11 ` [igt-dev] ✓ Fi.CI.BAT: success for lpsp platform agnostic support (rev9) Patchwork
@ 2020-05-06 1:49 ` Patchwork
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2020-05-06 1:49 UTC (permalink / raw)
To: Anshuman Gupta; +Cc: igt-dev
== Series Details ==
Series: lpsp platform agnostic support (rev9)
URL : https://patchwork.freedesktop.org/series/74647/
State : success
== Summary ==
CI Bug Log - changes from IGT_5633_full -> IGTPW_4534_full
====================================================
Summary
-------
**WARNING**
Minor unknown changes coming with IGTPW_4534_full need to be verified
manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_4534_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_4534_full:
### IGT changes ###
#### Warnings ####
* igt@i915_pm_lpsp@screens-disabled:
- shard-tglb: [SKIP][1] ([fdo#109301]) -> [SKIP][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-tglb2/igt@i915_pm_lpsp@screens-disabled.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-tglb6/igt@i915_pm_lpsp@screens-disabled.html
- shard-iclb: [SKIP][3] ([fdo#109301]) -> [SKIP][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-iclb4/igt@i915_pm_lpsp@screens-disabled.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-iclb8/igt@i915_pm_lpsp@screens-disabled.html
New tests
---------
New tests have been introduced between IGT_5633_full and IGTPW_4534_full:
### New IGT tests (5) ###
* igt@i915_pm_lpsp@kms-lpsp:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp:
- Statuses : 2 skip(s)
- Exec time: [0.0] s
* igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-edp:
- Statuses : 2 pass(s)
- Exec time: [0.10, 0.15] s
* igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a:
- Statuses : 2 skip(s)
- Exec time: [0.0] s
* igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-vga:
- Statuses : 2 skip(s)
- Exec time: [0.0] s
Known issues
------------
Here are the changes found in IGTPW_4534_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_busy@close-race:
- shard-hsw: [PASS][5] -> [INCOMPLETE][6] ([i915#61]) +1 similar issue
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-hsw1/igt@gem_busy@close-race.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-hsw7/igt@gem_busy@close-race.html
* igt@i915_pm_lpsp@screens-disabled:
- shard-hsw: [PASS][7] -> [SKIP][8] ([fdo#109271])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-hsw5/igt@i915_pm_lpsp@screens-disabled.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-hsw7/igt@i915_pm_lpsp@screens-disabled.html
* igt@i915_selftest@live@requests:
- shard-tglb: [PASS][9] -> [INCOMPLETE][10] ([i915#1531])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-tglb3/igt@i915_selftest@live@requests.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-tglb8/igt@i915_selftest@live@requests.html
* igt@kms_big_fb@linear-32bpp-rotate-180:
- shard-apl: [PASS][11] -> [FAIL][12] ([i915#1119] / [i915#95])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl8/igt@kms_big_fb@linear-32bpp-rotate-180.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl6/igt@kms_big_fb@linear-32bpp-rotate-180.html
- shard-kbl: [PASS][13] -> [FAIL][14] ([i915#1119] / [i915#93] / [i915#95])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl1/igt@kms_big_fb@linear-32bpp-rotate-180.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl6/igt@kms_big_fb@linear-32bpp-rotate-180.html
* igt@kms_cursor_crc@pipe-c-cursor-suspend:
- shard-kbl: [PASS][15] -> [DMESG-WARN][16] ([i915#180]) +2 similar issues
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl2/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl1/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
* igt@kms_flip_tiling@flip-changes-tiling-yf:
- shard-kbl: [PASS][17] -> [FAIL][18] ([i915#699] / [i915#93] / [i915#95])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl6/igt@kms_flip_tiling@flip-changes-tiling-yf.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl1/igt@kms_flip_tiling@flip-changes-tiling-yf.html
- shard-apl: [PASS][19] -> [FAIL][20] ([i915#95])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl7/igt@kms_flip_tiling@flip-changes-tiling-yf.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl3/igt@kms_flip_tiling@flip-changes-tiling-yf.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes:
- shard-apl: [PASS][21] -> [DMESG-WARN][22] ([i915#180]) +3 similar issues
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl8/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl4/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:
- shard-kbl: [PASS][23] -> [FAIL][24] ([fdo#108145] / [i915#265] / [i915#93] / [i915#95])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl4/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl4/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
- shard-apl: [PASS][25] -> [FAIL][26] ([fdo#108145] / [i915#265] / [i915#95])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl2/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl8/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
* igt@kms_psr@psr2_primary_mmap_cpu:
- shard-iclb: [PASS][27] -> [SKIP][28] ([fdo#109441]) +1 similar issue
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-iclb5/igt@kms_psr@psr2_primary_mmap_cpu.html
* igt@kms_vblank@pipe-b-query-idle-hang:
- shard-kbl: [PASS][29] -> [INCOMPLETE][30] ([i915#95])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl4/igt@kms_vblank@pipe-b-query-idle-hang.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl4/igt@kms_vblank@pipe-b-query-idle-hang.html
#### Possible fixes ####
* igt@gem_softpin@noreloc-s3:
- shard-kbl: [DMESG-WARN][31] ([i915#180]) -> [PASS][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl4/igt@gem_softpin@noreloc-s3.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl6/igt@gem_softpin@noreloc-s3.html
* igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled:
- shard-kbl: [FAIL][33] ([i915#177] / [i915#52] / [i915#54] / [i915#93] / [i915#95]) -> [PASS][34]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl7/igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl3/igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled.html
- shard-apl: [FAIL][35] ([i915#52] / [i915#54] / [i915#95]) -> [PASS][36]
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl6/igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl3/igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled.html
* {igt@kms_flip@flip-vs-suspend@b-vga1}:
- shard-snb: [DMESG-WARN][37] -> [PASS][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-snb6/igt@kms_flip@flip-vs-suspend@b-vga1.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-snb6/igt@kms_flip@flip-vs-suspend@b-vga1.html
* igt@kms_flip_tiling@flip-changes-tiling:
- shard-kbl: [FAIL][39] ([i915#699] / [i915#93] / [i915#95]) -> [PASS][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl4/igt@kms_flip_tiling@flip-changes-tiling.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl3/igt@kms_flip_tiling@flip-changes-tiling.html
* igt@kms_hdmi_inject@inject-audio:
- shard-tglb: [SKIP][41] ([i915#433]) -> [PASS][42]
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-tglb1/igt@kms_hdmi_inject@inject-audio.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-tglb6/igt@kms_hdmi_inject@inject-audio.html
- shard-iclb: [SKIP][43] ([i915#433]) -> [PASS][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-iclb5/igt@kms_hdmi_inject@inject-audio.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-iclb4/igt@kms_hdmi_inject@inject-audio.html
* igt@kms_plane_cursor@pipe-a-viewport-size-64:
- shard-kbl: [FAIL][45] ([i915#1559] / [i915#93] / [i915#95]) -> [PASS][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl7/igt@kms_plane_cursor@pipe-a-viewport-size-64.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl2/igt@kms_plane_cursor@pipe-a-viewport-size-64.html
- shard-apl: [FAIL][47] ([i915#1559] / [i915#95]) -> [PASS][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl7/igt@kms_plane_cursor@pipe-a-viewport-size-64.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl4/igt@kms_plane_cursor@pipe-a-viewport-size-64.html
* {igt@kms_prime@basic-crc@second-to-first}:
- shard-apl: [FAIL][49] ([i915#95]) -> [PASS][50] +1 similar issue
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl6/igt@kms_prime@basic-crc@second-to-first.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl2/igt@kms_prime@basic-crc@second-to-first.html
- shard-kbl: [FAIL][51] ([i915#93] / [i915#95]) -> [PASS][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-kbl7/igt@kms_prime@basic-crc@second-to-first.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-kbl7/igt@kms_prime@basic-crc@second-to-first.html
* igt@kms_psr@psr2_sprite_plane_move:
- shard-iclb: [SKIP][53] ([fdo#109441]) -> [PASS][54] +2 similar issues
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-iclb8/igt@kms_psr@psr2_sprite_plane_move.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html
* igt@kms_vblank@pipe-b-ts-continuation-suspend:
- shard-apl: [DMESG-WARN][55] ([i915#180]) -> [PASS][56]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl8/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl8/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
* {igt@perf@polling-parameterized}:
- shard-hsw: [FAIL][57] ([i915#1542]) -> [PASS][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-hsw6/igt@perf@polling-parameterized.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-hsw1/igt@perf@polling-parameterized.html
#### Warnings ####
* igt@kms_content_protection@atomic-dpms:
- shard-apl: [FAIL][59] ([fdo#110321] / [fdo#110336] / [i915#95]) -> [FAIL][60] ([fdo#110321] / [fdo#110336])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl8/igt@kms_content_protection@atomic-dpms.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl7/igt@kms_content_protection@atomic-dpms.html
* igt@kms_sysfs_edid_timing:
- shard-apl: [FAIL][61] ([IGT#2]) -> [FAIL][62] ([IGT#2] / [i915#95])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5633/shard-apl7/igt@kms_sysfs_edid_timing.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/shard-apl8/igt@kms_sysfs_edid_timing.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[IGT#2]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/2
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109301]: https://bugs.freedesktop.org/show_bug.cgi?id=109301
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#110321]: https://bugs.freedesktop.org/show_bug.cgi?id=110321
[fdo#110336]: https://bugs.freedesktop.org/show_bug.cgi?id=110336
[i915#1119]: https://gitlab.freedesktop.org/drm/intel/issues/1119
[i915#1531]: https://gitlab.freedesktop.org/drm/intel/issues/1531
[i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542
[i915#1559]: https://gitlab.freedesktop.org/drm/intel/issues/1559
[i915#177]: https://gitlab.freedesktop.org/drm/intel/issues/177
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
[i915#52]: https://gitlab.freedesktop.org/drm/intel/issues/52
[i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54
[i915#61]: https://gitlab.freedesktop.org/drm/intel/issues/61
[i915#699]: https://gitlab.freedesktop.org/drm/intel/issues/699
[i915#93]: https://gitlab.freedesktop.org/drm/intel/issues/93
[i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95
Participating hosts (8 -> 8)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5633 -> IGTPW_4534
CI-20190529: 20190529
CI_DRM_8430: 2daa6f8cad645f49a898158190a20a893b4aabe3 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_4534: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/index.html
IGT_5633: c8c2e5ed5cd8e4b7a69a903f3f1653612086abcc @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4534/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v6 1/6] tests/i915_pm_lpsp: Nuke the panel-fitter test
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 1/6] tests/i915_pm_lpsp: Nuke the panel-fitter test Anshuman Gupta
@ 2020-05-07 5:56 ` Manna, Animesh
0 siblings, 0 replies; 13+ messages in thread
From: Manna, Animesh @ 2020-05-07 5:56 UTC (permalink / raw)
To: Anshuman Gupta, igt-dev; +Cc: jani.nikula
[-- Attachment #1.1: Type: text/plain, Size: 1334 bytes --]
On 05-05-2020 18:50, Anshuman Gupta wrote:
> panel-fitter subtest is only applicable to HASWELL/BROADWELL.
> It just tests non-lpsp(lpsp disabled) when panel fitter is
> enforced by std 1024x768 mode.
> There is no ROI to test non-lpsp kind of thing,
> If HSW_GLOBAL power well is not enabled we would see
> other display issues in other display tests.
>
> Gen9+ platform has display scaling feature in built per
> pipe, as lpsp is all about low power single pipe (PIPE A)
> usage, gen9+ platforms also don't require panel-fitter subtest.
> This should save some CI cycles.
>
> Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
Changes looks good to me.
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> ---
> tests/i915/i915_pm_lpsp.c | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/tests/i915/i915_pm_lpsp.c b/tests/i915/i915_pm_lpsp.c
> index 42938e10..08f82e7c 100644
> --- a/tests/i915/i915_pm_lpsp.c
> +++ b/tests/i915/i915_pm_lpsp.c
> @@ -219,8 +219,6 @@ igt_main
> screens_disabled_subtest(drm_fd, drm_res);
> igt_subtest("edp-native")
> edp_subtest(drm_fd, drm_res, drm_connectors, devid, false);
> - igt_subtest("edp-panel-fitter")
> - edp_subtest(drm_fd, drm_res, drm_connectors, devid, true);
> igt_subtest("non-edp")
> non_edp_subtest(drm_fd, drm_res, drm_connectors);
>
[-- Attachment #1.2: Type: text/html, Size: 1961 bytes --]
[-- Attachment #2: Type: text/plain, Size: 154 bytes --]
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v6 5/6] tests/i915_pm_lpsp: screens-disabled subtest use igt_wait
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 5/6] tests/i915_pm_lpsp: screens-disabled subtest use igt_wait Anshuman Gupta
@ 2020-05-07 6:05 ` Manna, Animesh
0 siblings, 0 replies; 13+ messages in thread
From: Manna, Animesh @ 2020-05-07 6:05 UTC (permalink / raw)
To: Anshuman Gupta, igt-dev; +Cc: jani.nikula
[-- Attachment #1.1: Type: text/plain, Size: 1287 bytes --]
On 05-05-2020 18:50, Anshuman Gupta wrote:
> When all screens are disabled, it takes some time to release
> eDP/DP AUX IO power domain ref count. Also, delayed audio codec
> disabling takes time to release AUDIO power domain ref-count,
> using igt_wait to check lpsp after disabling all screens.
>
> v2:
> - Added a code comment for delay of igt_wait. [Animesh]
>
> Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
Looks good to me.
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> ---
> tests/i915/i915_pm_lpsp.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/tests/i915/i915_pm_lpsp.c b/tests/i915/i915_pm_lpsp.c
> index 56980de2..986bfc03 100644
> --- a/tests/i915/i915_pm_lpsp.c
> +++ b/tests/i915/i915_pm_lpsp.c
> @@ -81,7 +81,9 @@ static void screens_disabled_subtest(data_t *data)
> }
>
> igt_require_f(valid_output, "No connected output found\n");
> - igt_assert_f(lpsp_is_enabled(data), "lpsp is not enabled\n%s:\n%s\n",
> + /* eDP panel may have power_cycle_delay of 600ms, 1sec delay is safer */
> + igt_assert_f(igt_wait(lpsp_is_enabled(data), 1000, 100),
> + "lpsp is not enabled\n%s:\n%s\n",
> PWR_DOMAIN_INFO, data->pwr_dmn_info =
> igt_sysfs_get(data->debugfs_fd, PWR_DOMAIN_INFO));
> }
[-- Attachment #1.2: Type: text/html, Size: 1924 bytes --]
[-- Attachment #2: Type: text/plain, Size: 154 bytes --]
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v6 6/6] tests/i915_pm_rpm: lpsp/non-lpsp screen mode_set_data
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 6/6] tests/i915_pm_rpm: lpsp/non-lpsp screen mode_set_data Anshuman Gupta
@ 2020-05-07 6:15 ` Manna, Animesh
0 siblings, 0 replies; 13+ messages in thread
From: Manna, Animesh @ 2020-05-07 6:15 UTC (permalink / raw)
To: Anshuman Gupta, igt-dev; +Cc: jani.nikula
[-- Attachment #1.1: Type: text/plain, Size: 6109 bytes --]
On 05-05-2020 18:50, Anshuman Gupta wrote:
> Initialize the mode set params for lpsp/non-lpsp screen
> based upon their output lpsp capability instead
> of edp/non-edp output type.
>
> v2:
> - CI failures fixup.
> v3:
> - changes according to lib function igt_output_is_lpsp_capable
> prefix chnaged to i915_output_is_lpsp_capable.
>
> Acked-by: Martin Peres <martin.peres@linux.intel.com>
> Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
Changes looks good to me.
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> ---
> tests/i915/i915_pm_rpm.c | 53 +++++++++++++++++++++++-----------------
> 1 file changed, 30 insertions(+), 23 deletions(-)
>
> diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c
> index fedef872..cb355a53 100644
> --- a/tests/i915/i915_pm_rpm.c
> +++ b/tests/i915/i915_pm_rpm.c
> @@ -94,6 +94,7 @@ struct mode_set_data {
> drmModeResPtr res;
> drmModeConnectorPtr connectors[MAX_CONNECTORS];
> drmModePropertyBlobPtr edids[MAX_CONNECTORS];
> + igt_display_t display;
>
> uint32_t devid;
> };
> @@ -254,29 +255,29 @@ static bool init_modeset_params_for_type(struct mode_set_data *data,
> {
> drmModeConnectorPtr connector = NULL;
> drmModeModeInfoPtr mode = NULL;
> + igt_output_t *output = NULL;
> + igt_display_t *display = &data->display;
>
> - if (!data->res)
> + if (!data->res || !display)
> return false;
>
> - for (int i = 0; i < data->res->count_connectors; i++) {
> - drmModeConnectorPtr c = data->connectors[i];
> + for_each_connected_output(display, output) {
> + drmModeConnectorPtr c = output->config.connector;
>
> if (type == SCREEN_TYPE_LPSP &&
> - c->connector_type != DRM_MODE_CONNECTOR_eDP)
> + !i915_output_is_lpsp_capable(drm_fd, output))
> continue;
>
> if (type == SCREEN_TYPE_NON_LPSP &&
> - c->connector_type == DRM_MODE_CONNECTOR_eDP)
> + i915_output_is_lpsp_capable(drm_fd, output))
> continue;
>
> - if (c->connection == DRM_MODE_CONNECTED && c->count_modes) {
> - connector = c;
> - mode = &c->modes[0];
> - break;
> - }
> + connector = c;
> + mode = igt_output_get_mode(output);
> + break;
> }
>
> - if (!connector)
> + if (!connector || !mode)
> return false;
>
> igt_create_pattern_fb(drm_fd, mode->hdisplay, mode->vdisplay,
> @@ -397,6 +398,7 @@ static void init_mode_set_data(struct mode_set_data *data)
> kmstest_set_vt_graphics_mode();
> }
>
> + igt_display_require(&data->display, drm_fd);
> data->devid = intel_get_drm_devid(drm_fd);
> init_modeset_cached_params(&ms_data);
> }
> @@ -410,6 +412,8 @@ static void fini_mode_set_data(struct mode_set_data *data)
> }
> drmModeFreeResources(data->res);
> }
> +
> + igt_display_fini(&data->display);
> }
>
> static void get_drm_info(struct compare_data *data)
> @@ -760,7 +764,7 @@ static void dump_file(int dir, const char *filename)
> free(contents);
> }
>
> -static bool setup_environment(void)
> +static bool setup_environment(bool display_disabled)
> {
> if (has_runtime_pm)
> goto out;
> @@ -772,7 +776,8 @@ static bool setup_environment(void)
> debugfs = igt_debugfs_dir(drm_fd);
> igt_require(debugfs != -1);
>
> - init_mode_set_data(&ms_data);
> + if (!display_disabled)
> + init_mode_set_data(&ms_data);
>
> igt_pm_enable_sata_link_power_management();
>
> @@ -785,13 +790,14 @@ static bool setup_environment(void)
> igt_require(igt_pm_dmc_loaded(debugfs));
>
> out:
> - disable_all_screens(&ms_data);
> + if (!display_disabled)
> + disable_all_screens(&ms_data);
> dump_file(debugfs, "i915_runtime_pm_status");
>
> return wait_for_suspended();
> }
>
> -static void teardown_environment(void)
> +static void teardown_environment(bool display_disabled)
> {
> close(msr_fd);
> if (has_pc8)
> @@ -801,7 +807,8 @@ static void teardown_environment(void)
>
> igt_pm_restore_sata_link_power_management();
>
> - fini_mode_set_data(&ms_data);
> + if (!display_disabled)
> + fini_mode_set_data(&ms_data);
>
> close(debugfs);
> close(drm_fd);
> @@ -2004,7 +2011,7 @@ static struct option long_options[] = {
> igt_main_args("", long_options, help_str, opt_handler, NULL)
> {
> igt_subtest("basic-rte") {
> - igt_assert(setup_environment());
> + igt_assert(setup_environment(false));
> basic_subtest();
> }
>
> @@ -2012,7 +2019,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
> * PC8+. We don't want bug reports from cases where the machine is just
> * not properly configured. */
> igt_fixture
> - igt_require(setup_environment());
> + igt_require(setup_environment(false));
>
> if (stay)
> igt_subtest("stay")
> @@ -2142,7 +2149,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
> }
>
> igt_fixture
> - teardown_environment();
> + teardown_environment(false);
>
> igt_subtest("module-reload") {
> igt_debug("Reload w/o display\n");
> @@ -2151,9 +2158,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
> igt_kmsg(KMSG_INFO "Reloading i915 w/o display\n");
> igt_assert_eq(igt_i915_driver_load("disable_display=1 mmio_debug=-1"), 0);
>
> - igt_assert(setup_environment());
> + igt_assert(setup_environment(true));
> igt_assert(igt_wait(device_in_pci_d3(), 2000, 100));
> - teardown_environment();
> + teardown_environment(true);
>
> igt_debug("Reload as normal\n");
> igt_i915_driver_unload();
> @@ -2161,11 +2168,11 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
> igt_kmsg(KMSG_INFO "Reloading i915 as normal\n");
> igt_assert_eq(igt_i915_driver_load("mmio_debug=-1"), 0);
>
> - igt_assert(setup_environment());
> + igt_assert(setup_environment(false));
> igt_assert(igt_wait(device_in_pci_d3(), 2000, 100));
> if (enable_one_screen_with_type(&ms_data, SCREEN_TYPE_ANY))
> drm_resources_equal_subtest();
> - teardown_environment();
> + teardown_environment(false);
>
> /* Remove our mmio_debugging module */
> igt_i915_driver_unload();
[-- Attachment #1.2: Type: text/html, Size: 6547 bytes --]
[-- Attachment #2: Type: text/plain, Size: 154 bytes --]
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v6 4/6] test/i915_pm_lpsp: Skip screens-disabled test for DC state platforms
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 4/6] test/i915_pm_lpsp: Skip screens-disabled test for DC state platforms Anshuman Gupta
@ 2020-05-07 6:26 ` Manna, Animesh
0 siblings, 0 replies; 13+ messages in thread
From: Manna, Animesh @ 2020-05-07 6:26 UTC (permalink / raw)
To: Anshuman Gupta, igt-dev; +Cc: jani.nikula
[-- Attachment #1.1: Type: text/plain, Size: 1743 bytes --]
On 05-05-2020 18:50, Anshuman Gupta wrote:
> screens-disabled test is only valid for the plaforms like HSW/BDW
> where PG1 is Always-ON power domain, so these platform test lpsp
> with all screen disabled i.e validate PG2 when all screen are
> disabled.
> DC state i.e DMC f/w supported platforms don't have any ROI to validate
> screen-disabled subtest as existing dc*-dpms i915_pm_dc subtest
> already validate it implicitly.
> This should save some CI-Cycles.
>
> Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
> ---
> tests/i915/i915_pm_lpsp.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/tests/i915/i915_pm_lpsp.c b/tests/i915/i915_pm_lpsp.c
> index 8d2e23fe..56980de2 100644
> --- a/tests/i915/i915_pm_lpsp.c
> +++ b/tests/i915/i915_pm_lpsp.c
> @@ -172,8 +172,11 @@ igt_main
> }
>
> igt_describe("This test validates lpsp while all crtc are disabled");
> - igt_subtest("screens-disabled")
> + igt_subtest("screens-disabled") {
> + igt_skip_on_f(openat(data.debugfs_fd, "i915_dmc_info", O_RDONLY) > 0,
> + "DC states supported platform don't have ROI for this subtest\n");
> screens_disabled_subtest(&data);
> + }
I agree from gen9 onward dmc support is present and same time we have multiple power-well having different pipe.
To avoid platform specific change I feel ok to check dmc info. Changes looks good to me.
Can you please club together the changes of this patch with previous one (3/6) where screens_disabled_subtest is implemented to give a better clarity on which platform it is targeted for.
Regards,
Animesh
>
> igt_describe("This test validates lpsp on all connected outputs on low power PIPE_A");
> igt_subtest_with_dynamic_f("kms-lpsp") {
[-- Attachment #1.2: Type: text/html, Size: 2291 bytes --]
[-- Attachment #2: Type: text/plain, Size: 154 bytes --]
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2020-05-07 6:26 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-05 13:20 [igt-dev] [PATCH i-g-t v6 0/6] lpsp platform agnostic support Anshuman Gupta
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 1/6] tests/i915_pm_lpsp: Nuke the panel-fitter test Anshuman Gupta
2020-05-07 5:56 ` Manna, Animesh
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 2/6] lib/igt_pm: Add lib func to get lpsp capability Anshuman Gupta
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 3/6] tests/i915_pm_lpsp: lpsp platform agnostic support Anshuman Gupta
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 4/6] test/i915_pm_lpsp: Skip screens-disabled test for DC state platforms Anshuman Gupta
2020-05-07 6:26 ` Manna, Animesh
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 5/6] tests/i915_pm_lpsp: screens-disabled subtest use igt_wait Anshuman Gupta
2020-05-07 6:05 ` Manna, Animesh
2020-05-05 13:20 ` [igt-dev] [PATCH i-g-t v6 6/6] tests/i915_pm_rpm: lpsp/non-lpsp screen mode_set_data Anshuman Gupta
2020-05-07 6:15 ` Manna, Animesh
2020-05-05 14:11 ` [igt-dev] ✓ Fi.CI.BAT: success for lpsp platform agnostic support (rev9) Patchwork
2020-05-06 1:49 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.