lpsp platform agnostic support
v4 cover lpsp platform agnostic support
This series adds lpsp igt val platform agnostic support. This has been a big gap on igt validation side in order to validate low power single pipe use cases.
v4 has added new pacthes to patchset to remove the unnecessary subtests.
This should be test with i915 lpsp support, which adds i915_lpsp_info debugfs.
Anshuman Gupta (6):
tests/i915_pm_lpsp: rename non-edp test to non-edp-lpsp 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 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 | 36 +++++ lib/igt_pm.h | 1 + tests/i915/i915_pm_lpsp.c | 296 +++++++++++++++++--------------------- tests/i915/i915_pm_rpm.c | 53 ++++--- 4 files changed, 202 insertions(+), 184 deletions(-)
Signature · 6 lines
2.26.0 _______________________________________________ igt-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/igt-dev
PATCH v4 1/6 tests/i915_pm_lpsp: rename non-edp test to non-edp-lpsp
HASWELL/BROADWELL tests non-edp panel for non-lpsp i.e. tests HSW_GLOBAL power well should be enabled. There is ROI to check whethter power well enabled, if power well is not enabled then we would see all other types of display issue in other igt test.
It make sense to rename the non-edp test to non-edp-lpsp as on gen9+ non-edp panel can also drive lpsp.
--- tests/i915/i915_pm_lpsp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
tests/i915/i915_pm_lpsp.c +1 -1
@@ -221,7 +221,7 @@ igt_mainedp_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") + igt_subtest("non-edp-lpsp")non_edp_subtest (drm_fd, drm_res, drm_connectors); igt_fixture {
Signature · 6 lines
2.26.0 _______________________________________________ igt-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/igt-dev
PATCH v4 2/6 tests/i915_pm_lpsp: Nuke the panel-fitter test.
In reply to Anshuman Guptapanel-fitter subtest is only applicable to HASWELL/BROADWELL. It just test 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.
--- tests/i915/i915_pm_lpsp.c | 2 -- 1 file changed, 2 deletions(-)
tests/i915/i915_pm_lpsp.c +0 -2
@@ -219,8 +219,6 @@ igt_mainscreens_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-lpsp")non_edp_subtest (drm_fd, drm_res, drm_connectors);
Signature · 6 lines
2.26.0 _______________________________________________ igt-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/igt-dev
PATCH v4 3/6 lib/igt_pm: Add lib func to get lpsp capability
In reply to Anshuman GuptaThis 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.
--- lib/igt_pm.c | 36 ++++++++++++++++++++++++++++++++++++ lib/igt_pm.h | 1 + 2 files changed, 37 insertions(+)
lib/igt_pm.c +36 -0
@@ -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,38 @@ 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) +{ +drmModeConnectorPtr c = output->config.connector; +char buf[256 ]; +int fd, len; + +/* only eDP/DP/DSI/HDMI can support LPSP */ +if (c->connector_type != DRM_MODE_CONNECTOR_eDP && + c->connector_type !=DRM_MODE_CONNECTOR_DSI && + c->connector_type != DRM_MODE_CONNECTOR_DisplayPort && + c->connector_type !=DRM_MODE_CONNECTOR_HDMIA && + c->connector_type !=DRM_MODE_CONNECTOR_HDMIB ) +return false; + + fd =igt_debugfs_connector_dir (drm_fd, output->name,O_RDONLY ); +igt_require (fd >=0 ); + len =igt_debugfs_simple_read (fd,"i915_lpsp_info" , buf,sizeof (buf)); + +if (len <0 ) +igt_assert_eq (len, -ENODEV ); + +close (fd); + +return strstr (buf,"LPSP capable" ); +}
lib/igt_pm.h +1 -0
@@ -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 */
Signature · 6 lines
2.26.0 _______________________________________________ igt-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/igt-dev
PATCH v4 4/6 tests/i915_pm_lpsp: lpsp platform agnostic support
In reply to Anshuman GuptaCurrent 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 debugfs attribute i915_lpsp_info, which exposes whether an output is capable of driving lpsp and whether lpsp is enabled.
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.
--- tests/i915/i915_pm_lpsp.c | 291 +++++++++++++++++--------------------- 1 file changed, 133 insertions(+), 158 deletions(-)
tests/i915/i915_pm_lpsp.c +133 -158
@@ -25,210 +25,185 @@*/ #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 5000 -static bool supports_lpsp (uint32_t devid) +#define PWR_DOMAIN_INFO "i915_power_domain_info" + +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 void debugfs_read (int fd,const char *param,char *buf,int len) { -return IS_HASWELL (devid) ||IS_BROADWELL (devid); + len =igt_debugfs_simple_read (fd, param, buf, len); +if (len <0 ) +igt_assert_eq (len, -ENODEV ); } -static bool lpsp_is_enabled (int drm_fd) +static bool lpsp_is_enabled (data_t *data) { -uint32_t val; +char buf[MAX_SINK_LPSP_INFO_BUF_LEN ]; +int fd; - val =INREG (HSW_PWR_WELL_CTL2 ); -return !(val &HSW_PWR_WELL_STATE_ENABLED ); -} + fd =igt_debugfs_connector_dir (data->drm_fd, data->output->name, +O_RDONLY ); +igt_require (fd >=0 ); -/* 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)); +debugfs_read (fd,"i915_lpsp_info" , buf,sizeof (buf)); +close (fd); + +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; +igt_plane_t *primary; +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),"%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 )); } -static void edp_subtest (int drm_fd,drmModeResPtr drm_res, -drmModeConnectorPtr *drm_connectors,uint32_t devid, -bool use_panel_fitter) +static void check_output_lpsp (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 output is not capable of lpsp there is no ROI to check for +* non-lpsp i.e. !lpsp_is_enabled(), test should pass in that case. +*/ +if (i915_output_is_lpsp_capable (data->drm_fd, data->output)) +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 )); +} -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)); - } +static void setup_lpsp_output (data_t *data) +{ +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 cleanup_lpsp_output (data_t *data) { -int i, rc; -uint32_t crtc_id =0 , buffer_id =0 ; -drmModeConnectorPtr connector =NULL ; -drmModeModeInfoPtr mode =NULL ; +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 ; +} -kmstest_unset_all_crtcs (drm_fd, drm_res); +static void lpsp_subtest (data_t *data,bool is_edp) +{ +igt_display_t *display = &data->display; +igt_output_t *output; +int valid_output =0 ; -for (i =0 ; i < drm_res->count_connectors; i++) { -drmModeConnectorPtr c = drm_connectors[i]; +for_each_connected_output (display, output) { +drmModeConnectorPtr c = output->config.connector; -if (c->connector_type == DRM_MODE_CONNECTOR_eDP) +if (is_edp && c->connector_type != DRM_MODE_CONNECTOR_eDP) +continue ; +if (!is_edp && c->connector_type == DRM_MODE_CONNECTOR_eDP)continue ;if (c->connection !=DRM_MODE_CONNECTED )continue ; +if (!igt_pipe_connector_valid (PIPE_A , output)) +continue ; -if (c->count_modes) { - connector = c; - mode = &c->modes[0 ]; -break ; - } + data->output = output; + data->mode =igt_output_get_mode (output); +setup_lpsp_output (data); +check_output_lpsp (data); +cleanup_lpsp_output (data); + valid_output++; } -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); - - 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)); +igt_require_f (valid_output,"No valid output found\n" ); } -#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; +data_t data = {}; - drm_fd =drm_open_driver_master (DRIVER_INTEL ); -igt_require (drm_fd >=0 ); - - devid =intel_get_drm_devid (drm_fd); - - 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); +screens_disabled_subtest (&data); +igt_describe ("This test validates lpsp on eDP panel" ); igt_subtest("edp-native") -edp_subtest (drm_fd, drm_res, drm_connectors, devid, false); +lpsp_subtest (&data, true); +igt_fixture + cleanup_lpsp_output(&data); +igt_describe ("This test validates lpsp on DP/HDMI/DSI panels" ); igt_subtest("non-edp-lpsp") -non_edp_subtest (drm_fd, drm_res, drm_connectors); +lpsp_subtest (&data, false); +igt_fixture + cleanup_lpsp_output(&data); igt_fixture { -int i; - -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); +free (data.pwr_dmn_info); +close (data.drm_fd); +igt_display_fini (&data.display); } }
Signature · 6 lines
2.26.0 _______________________________________________ igt-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/igt-dev
PATCH v4 5/6 tests/i915_pm_lpsp: screens-disabled subtest use igt_wait
In reply to Anshuman GuptaWhen 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.
--- tests/i915/i915_pm_lpsp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
tests/i915/i915_pm_lpsp.c +2 -1
@@ -89,7 +89,8 @@ 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),"%s: lpsp is not enabled\n%s:\n%s\n" , +igt_assert_f (igt_wait (lpsp_is_enabled (data),1000 ,100 ), +"%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 )); }
Signature · 6 lines
2.26.0 _______________________________________________ igt-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/igt-dev
PATCH v4 6/6 tests/i915_pm_rpm: lpsp/non-lpsp screen mode_set_data
In reply to Anshuman GuptaInitialize 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.
--- tests/i915/i915_pm_rpm.c | 53 +++++++++++++++++++++++----------------- 1 file changed, 30 insertions(+), 23 deletions(-)
tests/i915/i915_pm_rpm.c +30 -23
@@ -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);
@@ -2008,7 +2015,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 (); }
@@ -2016,7 +2023,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" )
@@ -2146,7 +2153,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" );
@@ -2155,9 +2162,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 ();
@@ -2165,11 +2172,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 ();
Signature · 6 lines
2.26.0 _______________________________________________ igt-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/igt-dev
Patchwork
CI[igt-dev] ✗ Fi.CI.BAT: failure for lpsp platform agnostic support (rev6)
In reply to Anshuman Gupta== Series Details ==
== Series Details ==
Series: lpsp platform agnostic support (rev6)
URL : https://patchwork.freedesktop.org/series/74647/
State : failure
== Summary ==
CI Bug Log - changes from IGT_5548 -> IGTPW_4379
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_4379 absolutely need to be verified manually.
If you think the reported changes have nothing to do with the changes introduced in IGTPW_4379, 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_4379/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_4379:
### IGT changes ###
#### Possible regressions ####
* igt@i915_pm_rpm@basic-pci-d3-state:
- fi-glk-dsi: [PASS][1] -> [FAIL][2] +2 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-glk-dsi/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-glk-dsi/igt@[email protected]
- fi-hsw-peppy: [PASS][3] -> [FAIL][4] +2 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-hsw-peppy/igt@[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-hsw-peppy/igt@[email protected]
- fi-icl-u2: [PASS][5] -> [FAIL][6] +1 similar issue
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-icl-u2/igt@[email protected]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-icl-u2/igt@[email protected]
- fi-kbl-r: [PASS][7] -> [FAIL][8] +2 similar issues
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-kbl-r/igt@[email protected]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-kbl-r/igt@[email protected]
- fi-byt-n2820: [PASS][9] -> [FAIL][10] +2 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-byt-n2820/igt@[email protected]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-byt-n2820/igt@[email protected]
- fi-icl-guc: [PASS][11] -> [FAIL][12] +2 similar issues
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-icl-guc/igt@[email protected]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-icl-guc/igt@[email protected]
- fi-bdw-5557u: [PASS][13] -> [FAIL][14] +2 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-bdw-5557u/igt@[email protected]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-bdw-5557u/igt@[email protected]
- fi-kbl-soraka: [PASS][15] -> [FAIL][16] +2 similar issues
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-kbl-soraka/igt@[email protected]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-kbl-soraka/igt@[email protected]
* igt@i915_pm_rpm@basic-rte:
- fi-kbl-7500u: [PASS][17] -> [FAIL][18] +2 similar issues
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-kbl-7500u/igt@[email protected]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-kbl-7500u/igt@[email protected]
- fi-skl-lmem: [PASS][19] -> [FAIL][20] +2 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-skl-lmem/igt@[email protected]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-skl-lmem/igt@[email protected]
- fi-cml-u2: [PASS][21] -> [FAIL][22] +2 similar issues
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-cml-u2/igt@[email protected]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-cml-u2/igt@[email protected]
- fi-bxt-dsi: [PASS][23] -> [FAIL][24] +2 similar issues
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-bxt-dsi/igt@[email protected]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-bxt-dsi/igt@[email protected]
- fi-byt-j1900: [PASS][25] -> [FAIL][26] +2 similar issues
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-byt-j1900/igt@[email protected]
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-byt-j1900/igt@[email protected]
- fi-apl-guc: [PASS][27] -> [FAIL][28] +2 similar issues
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-apl-guc/igt@[email protected]
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-apl-guc/igt@[email protected]
* igt@i915_pm_rpm@module-reload:
- fi-cfl-8109u: [PASS][29] -> [FAIL][30] +2 similar issues
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-cfl-8109u/igt@[email protected]
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-cfl-8109u/igt@[email protected]
- fi-skl-6600u: [PASS][31] -> [FAIL][32] +2 similar issues
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-skl-6600u/igt@[email protected]
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-skl-6600u/igt@[email protected]
- fi-cfl-8700k: [PASS][33] -> [FAIL][34] +2 similar issues
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-cfl-8700k/igt@[email protected]
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-cfl-8700k/igt@[email protected]
- fi-bsw-kefka: [PASS][35] -> [FAIL][36] +2 similar issues
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-bsw-kefka/igt@[email protected]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-bsw-kefka/igt@[email protected]
- fi-kbl-x1275: [PASS][37] -> [FAIL][38] +2 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-kbl-x1275/igt@[email protected]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-kbl-x1275/igt@[email protected]
- fi-icl-dsi: [PASS][39] -> [FAIL][40] +2 similar issues
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-icl-dsi/igt@[email protected]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-icl-dsi/igt@[email protected]
- fi-skl-guc: [PASS][41] -> [FAIL][42] +2 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-skl-guc/igt@[email protected]
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-skl-guc/igt@[email protected]
- fi-bsw-n3050: NOTRUN -> [FAIL][43] +2 similar issues
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-bsw-n3050/igt@[email protected]
- fi-skl-6700k2: [PASS][44] -> [FAIL][45] +2 similar issues
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-skl-6700k2/igt@[email protected]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-skl-6700k2/igt@[email protected]
- fi-cfl-guc: [PASS][46] -> [FAIL][47] +2 similar issues
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-cfl-guc/igt@[email protected]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-cfl-guc/igt@[email protected]
- fi-icl-y: [PASS][48] -> [FAIL][49] +2 similar issues
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-icl-y/igt@[email protected]
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-icl-y/igt@[email protected]
- fi-cml-s: [PASS][50] -> [FAIL][51] +2 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-cml-s/igt@[email protected]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-cml-s/igt@[email protected]
#### Warnings ####
* igt@i915_pm_rpm@basic-pci-d3-state:
- fi-snb-2600: [SKIP][52] ([fdo#109271]) -> [FAIL][53] +2 similar issues
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-snb-2600/igt@[email protected]
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-snb-2600/igt@[email protected]
* igt@i915_pm_rpm@module-reload:
- fi-ilk-650: [SKIP][54] ([fdo#109271]) -> [FAIL][55] +2 similar issues
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-ilk-650/igt@[email protected]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-ilk-650/igt@[email protected]
- fi-elk-e7500: [SKIP][56] ([fdo#109271]) -> [FAIL][57] +2 similar issues
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-elk-e7500/igt@[email protected]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-elk-e7500/igt@[email protected]
- fi-icl-u2: [DMESG-WARN][58] ([i915#289]) -> [FAIL][59]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-icl-u2/igt@[email protected]
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-icl-u2/igt@[email protected]
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses. They do not affect the overall result.
* igt@i915_pm_rpm@basic-rte:
- {fi-ehl-1}: [PASS][60] -> [FAIL][61] +2 similar issues
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-ehl-1/igt@[email protected]
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-ehl-1/igt@[email protected]
- {fi-tgl-u}: [PASS][62] -> [FAIL][63] +2 similar issues
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-tgl-u/igt@[email protected]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-tgl-u/igt@[email protected]
Known issues
------------
Here are the changes found in IGTPW_4379 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_pm_rpm@module-reload:
- fi-kbl-8809g: [PASS][64] -> [SKIP][65] ([fdo#109271])
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-kbl-8809g/igt@[email protected]
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-kbl-8809g/igt@[email protected]
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-cml-u2: [PASS][66] -> [DMESG-WARN][67] ([IGT#4])
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-cml-u2/igt@[email protected]
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-cml-u2/igt@[email protected]
#### Possible fixes ####
* igt@i915_selftest@live@execlists:
- fi-kbl-7500u: [INCOMPLETE][68] ([CI#80] / [i915#656]) -> [PASS][69]
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5548/fi-kbl-7500u/igt@i915_selftest@[email protected]
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/fi-kbl-7500u/igt@i915_selftest@[email protected]
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[CI#80]: https://gitlab.freedesktop.org/gfx-ci/i915-infra/issues/80
[IGT#4]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/4
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[i915#289]: https://gitlab.freedesktop.org/drm/intel/issues/289
[i915#656]: https://gitlab.freedesktop.org/drm/intel/issues/656
Participating hosts (47 -> 41)
------------------------------
Additional (1): fi-bsw-n3050
Missing (7): fi-hsw-4200u fi-skl-6770hq fi-bsw-cyan fi-ctg-p8600 fi-gdg-551 fi-kbl-7560u fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5548 -> IGTPW_4379
CI-20190529: 20190529
CI_DRM_8222: 6970d295e51e3b03d7ee3f781522398402d3a35d @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_4379: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4379/index.html
IGT_5548: d9e70dc1b35633b7d5c81cbfa165e331189eb260 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Testlist changes ==
+igt@i915_pm_lpsp@non-edp-lpsp
-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_4379/index.html
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev