* Re: [igt-dev] [PATCH i-g-t 1/2] DC3CO PSR2 helpers
[not found] ` <1572343926-22949-2-git-send-email-jeevan.b@intel.com>
@ 2019-10-29 12:30 ` Arkadiusz Hiler
0 siblings, 0 replies; 6+ messages in thread
From: Arkadiusz Hiler @ 2019-10-29 12:30 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev
On Tue, Oct 29, 2019 at 03:42:05PM +0530, Jeevan B wrote:
> From: Anshuman Gupta <anshuman.gupta@intel.com>
>
> Add DC3CO IGT validation prerequisites stuff
> so we can enable DC3CO IGT test.
>
> v2: Removed psr2_idle_wait_entry and get_psr2_status function.
> v3: Changed macro definition and removed extra line.
> v4: Simplified edp_psr2_enabled function as per Arek's comments.
>
> Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
> Signed-off-by: Jeevan B <jeevan.b@intel.com>
> Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> ---
> tests/i915/i915_pm_dc.c | 34 +++++++++++++++++++++++++++-------
> 1 file changed, 27 insertions(+), 7 deletions(-)
>
> diff --git a/tests/i915/i915_pm_dc.c b/tests/i915/i915_pm_dc.c
> index ce3319b..44c6538 100644
> --- a/tests/i915/i915_pm_dc.c
> +++ b/tests/i915/i915_pm_dc.c
> @@ -34,8 +34,9 @@
> #include "limits.h"
>
> /* DC State Flags */
> -#define CHECK_DC5 1
> -#define CHECK_DC6 2
> +#define CHECK_DC5 (1 << 0)
> +#define CHECK_DC6 (1 << 1)
> +#define CHECK_DC3CO (1 << 2)
>
> typedef struct {
> int drm_fd;
> @@ -88,6 +89,16 @@ static bool edp_psr_sink_support(data_t *data)
> return strstr(buf, "Sink support: yes");
> }
>
> +static bool edp_psr2_enabled(data_t *data)
> +{
> + char buf[512];
> +
> + igt_debugfs_simple_read(data->debugfs_fd, "i915_edp_psr_status",
> + buf, sizeof(buf));
> +
> + return strstr(buf, "PSR mode: PSR2 enabled") != NULL;
> +}
> +
> static void cleanup_dc_psr(data_t *data)
> {
> igt_plane_t *primary;
> @@ -141,12 +152,18 @@ static uint32_t read_dc_counter(uint32_t drm_fd, int dc_flag)
> str = strstr(buf, "DC3 -> DC5 count");
> else if (dc_flag & CHECK_DC6)
> str = strstr(buf, "DC5 -> DC6 count");
> + else if (dc_flag & CHECK_DC3CO)
> + str = strstr(buf, "DC3CO count");
>
> - /* Check DC5/DC6 counter is available for the platform.
> + /* Check DC counter is available for the platform.
> * Skip the test if counter is not available.
> */
> - igt_skip_on_f(!str, "DC%d counter is not available\n",
> - dc_flag & CHECK_DC5 ? 5 : 6);
> + if (dc_flag & CHECK_DC3CO)
> + igt_skip_on_f(!str, "DC%d counter is not available\n",
> + dc_flag & CHECK_DC5 ? 5 : 6);
Why are you printing DC5/6 for DC3CO check here? Seems like a copy and
paste without the required edit.
You can just move those up so you don't have to check the flags twice,
something like:
diff --git a/tests/i915/i915_pm_dc.c b/tests/i915/i915_pm_dc.c
index 46db1356..43af86d4 100644
--- a/tests/i915/i915_pm_dc.c
+++ b/tests/i915/i915_pm_dc.c
@@ -203,22 +203,17 @@ static uint32_t read_dc_counter(uint32_t drm_fd, int dc_flag)
igt_debugfs_read(drm_fd, "i915_dmc_info", buf);
- if (dc_flag & CHECK_DC5)
+ if (dc_flag & CHECK_DC5) {
str = strstr(buf, "DC3 -> DC5 count");
- else if (dc_flag & CHECK_DC6)
+ igt_skip_on_f(!str, "DC5 counter is not available\n");
+ } else if (dc_flag & CHECK_DC6) {
str = strstr(buf, "DC5 -> DC6 count");
- else if (dc_flag & CHECK_DC3CO)
+ igt_skip_on_f(!str, "DC6 counter is not available\n");
+ } else if (dc_flag & CHECK_DC3CO) {
str = strstr(buf, "DC3CO count");
+ igt_skip_on_f(!str, "DC3CO counter is not available\n");
+ }
- /* Check DC counter is available for the platform.
- * Skip the test if counter is not available.
- */
- if (dc_flag & CHECK_DC3CO)
- igt_skip_on_f(!str, "DC%d counter is not available\n",
- dc_flag & CHECK_DC5 ? 5 : 6);
- else
- igt_skip_on_f(!str, "DC%d counter is not available\n",
- dc_flag & CHECK_DC5 ? 5 : 6);
return get_dc_counter(str);
}
> + else
> + igt_skip_on_f(!str, "DC%d counter is not available\n",
> + dc_flag & CHECK_DC5 ? 5 : 6);
> return get_dc_counter(str);
> }
>
> @@ -158,9 +175,12 @@ static bool dc_state_wait_entry(int drm_fd, int dc_flag, int prev_dc_count)
>
> static void check_dc_counter(int drm_fd, int dc_flag, uint32_t prev_dc_count)
> {
> + char tmp[64];
> +
> + snprintf(tmp, sizeof(tmp), "%s", dc_flag & CHECK_DC3CO ? "DC3CO" :
> + (dc_flag & CHECK_DC5 ? "DC5" : "DC6"));
> igt_assert_f(dc_state_wait_entry(drm_fd, dc_flag, prev_dc_count),
> - "DC%d state is not achieved\n",
> - dc_flag & CHECK_DC5 ? 5 : 6);
> + "%s state is not achieved\n", tmp);
> }
>
> static void test_dc_state_psr(data_t *data, int dc_flag)
> --
> 2.7.4
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Add a new IGT test to validate DC3CO state. (rev8)
[not found] <1572355751-24313-1-git-send-email-jeevan.b@intel.com>
@ 2019-10-29 16:00 ` Patchwork
2019-10-30 4:08 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2019-10-29 16:00 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev
== Series Details ==
Series: Add a new IGT test to validate DC3CO state. (rev8)
URL : https://patchwork.freedesktop.org/series/66648/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_7211 -> IGTPW_3631
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_3631:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* {igt@i915_selftest@live_perf}:
- {fi-tgl-u}: NOTRUN -> [DMESG-FAIL][1]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/fi-tgl-u/igt@i915_selftest@live_perf.html
* igt@runner@aborted:
- {fi-tgl-u}: NOTRUN -> [FAIL][2]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/fi-tgl-u/igt@runner@aborted.html
Known issues
------------
Here are the changes found in IGTPW_3631 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_mmap_gtt@basic-write-cpu-read-gtt:
- fi-icl-u3: [PASS][3] -> [DMESG-WARN][4] ([fdo#107724])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/fi-icl-u3/igt@gem_mmap_gtt@basic-write-cpu-read-gtt.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/fi-icl-u3/igt@gem_mmap_gtt@basic-write-cpu-read-gtt.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [PASS][5] -> [FAIL][6] ([fdo#111407])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
* igt@kms_frontbuffer_tracking@basic:
- fi-hsw-peppy: [PASS][7] -> [DMESG-WARN][8] ([fdo#102614])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html
#### Possible fixes ####
* igt@gem_ringfill@basic-default-forked:
- fi-icl-u3: [DMESG-WARN][9] ([fdo#107724]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/fi-icl-u3/igt@gem_ringfill@basic-default-forked.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/fi-icl-u3/igt@gem_ringfill@basic-default-forked.html
* igt@gem_sync@basic-store-all:
- {fi-tgl-u}: [INCOMPLETE][11] ([fdo#111880]) -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/fi-tgl-u/igt@gem_sync@basic-store-all.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/fi-tgl-u/igt@gem_sync@basic-store-all.html
* igt@i915_selftest@live_hangcheck:
- {fi-icl-guc}: [INCOMPLETE][13] ([fdo#107713] / [fdo#108569]) -> [PASS][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/fi-icl-guc/igt@i915_selftest@live_hangcheck.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/fi-icl-guc/igt@i915_selftest@live_hangcheck.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
[fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
[fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407
[fdo#111880]: https://bugs.freedesktop.org/show_bug.cgi?id=111880
Participating hosts (51 -> 44)
------------------------------
Additional (1): fi-kbl-soraka
Missing (8): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-icl-y fi-tgl-y fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5249 -> IGTPW_3631
CI-20190529: 20190529
CI_DRM_7211: 14d687e92e966b48dd74091352a07b825c13eb46 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_3631: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/index.html
IGT_5249: aee019cec9d7f3002371f6ddf102cb67d9976b71 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Testlist changes ==
+igt@i915_pm_dc@dc3co-vpb-simulation
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Add a new IGT test to validate DC3CO state. (rev8)
[not found] <1572355751-24313-1-git-send-email-jeevan.b@intel.com>
2019-10-29 16:00 ` [igt-dev] ✓ Fi.CI.BAT: success for Add a new IGT test to validate DC3CO state. (rev8) Patchwork
@ 2019-10-30 4:08 ` Patchwork
2019-10-30 12:57 ` [igt-dev] [PATCH i-g-t 0/2] Add a new IGT test to validate DC3CO state Arkadiusz Hiler
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2019-10-30 4:08 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev
== Series Details ==
Series: Add a new IGT test to validate DC3CO state. (rev8)
URL : https://patchwork.freedesktop.org/series/66648/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_7211_full -> IGTPW_3631_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_3631_full:
### IGT changes ###
#### Possible regressions ####
* {igt@i915_pm_dc@dc3co-vpb-simulation} (NEW):
- shard-iclb: NOTRUN -> [SKIP][1]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb3/igt@i915_pm_dc@dc3co-vpb-simulation.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* {igt@gem_exec_suspend@basic-s0}:
- {shard-tglb}: NOTRUN -> [INCOMPLETE][2] +1 similar issue
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-tglb3/igt@gem_exec_suspend@basic-s0.html
* {igt@i915_pm_dc@dc5-dpms}:
- shard-hsw: [SKIP][3] ([fdo#109271]) -> [FAIL][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-hsw7/igt@i915_pm_dc@dc5-dpms.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-hsw7/igt@i915_pm_dc@dc5-dpms.html
* {igt@i915_pm_dc@dc6-dpms}:
- shard-apl: [SKIP][5] ([fdo#109271]) -> [FAIL][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-apl1/igt@i915_pm_dc@dc6-dpms.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-apl2/igt@i915_pm_dc@dc6-dpms.html
* igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
- {shard-tglb}: [PASS][7] -> [INCOMPLETE][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-tglb5/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-tglb6/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html
* igt@perf@buffer-fill:
- {shard-tglb}: NOTRUN -> [SKIP][9] +6 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-tglb8/igt@perf@buffer-fill.html
New tests
---------
New tests have been introduced between CI_DRM_7211_full and IGTPW_3631_full:
### New IGT tests (1) ###
* igt@i915_pm_dc@dc3co-vpb-simulation:
- Statuses : 6 skip(s)
- Exec time: [0.0, 0.02] s
Known issues
------------
Here are the changes found in IGTPW_3631_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_busy@busy-vcs1:
- shard-iclb: [PASS][10] -> [SKIP][11] ([fdo#112080]) +5 similar issues
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb4/igt@gem_busy@busy-vcs1.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb5/igt@gem_busy@busy-vcs1.html
* igt@gem_exec_schedule@preemptive-hang-bsd:
- shard-iclb: [PASS][12] -> [SKIP][13] ([fdo#112146]) +5 similar issues
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb6/igt@gem_exec_schedule@preemptive-hang-bsd.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb1/igt@gem_exec_schedule@preemptive-hang-bsd.html
* igt@gem_exec_schedule@promotion-bsd1:
- shard-iclb: [PASS][14] -> [SKIP][15] ([fdo#109276]) +13 similar issues
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb2/igt@gem_exec_schedule@promotion-bsd1.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb8/igt@gem_exec_schedule@promotion-bsd1.html
* igt@gem_userptr_blits@map-fixed-invalidate-busy:
- shard-snb: [PASS][16] -> [DMESG-WARN][17] ([fdo#111870]) +3 similar issues
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-snb2/igt@gem_userptr_blits@map-fixed-invalidate-busy.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-snb5/igt@gem_userptr_blits@map-fixed-invalidate-busy.html
* igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy:
- shard-hsw: [PASS][18] -> [DMESG-WARN][19] ([fdo#111870])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-hsw4/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-hsw2/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html
* igt@i915_suspend@debugfs-reader:
- shard-iclb: [PASS][20] -> [DMESG-WARN][21] ([fdo#111764])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb5/igt@i915_suspend@debugfs-reader.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb5/igt@i915_suspend@debugfs-reader.html
* igt@kms_cursor_crc@pipe-a-cursor-suspend:
- shard-kbl: [PASS][22] -> [DMESG-WARN][23] ([fdo#108566]) +4 similar issues
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-kbl2/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-kbl2/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
* igt@kms_flip@flip-vs-expired-vblank:
- shard-glk: [PASS][24] -> [FAIL][25] ([fdo#105363])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-glk1/igt@kms_flip@flip-vs-expired-vblank.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-glk8/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-apl: [PASS][26] -> [DMESG-WARN][27] ([fdo#108566]) +1 similar issue
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-apl1/igt@kms_flip@flip-vs-suspend-interruptible.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-apl6/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw:
- shard-iclb: [PASS][28] -> [FAIL][29] ([fdo#103167]) +3 similar issues
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb3/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
* igt@kms_psr@psr2_sprite_plane_move:
- shard-iclb: [PASS][30] -> [SKIP][31] ([fdo#109441]) +1 similar issue
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb4/igt@kms_psr@psr2_sprite_plane_move.html
#### Possible fixes ####
* igt@gem_busy@close-race:
- {shard-tglb}: [INCOMPLETE][32] ([fdo#111747]) -> [PASS][33] +1 similar issue
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-tglb6/igt@gem_busy@close-race.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-tglb2/igt@gem_busy@close-race.html
* igt@gem_ctx_exec@basic-invalid-context-vcs1:
- shard-iclb: [SKIP][34] ([fdo#112080]) -> [PASS][35] +9 similar issues
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb8/igt@gem_ctx_exec@basic-invalid-context-vcs1.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb4/igt@gem_ctx_exec@basic-invalid-context-vcs1.html
* igt@gem_ctx_switch@all-light:
- {shard-tglb}: [INCOMPLETE][36] ([fdo#111672]) -> [PASS][37]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-tglb7/igt@gem_ctx_switch@all-light.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-tglb8/igt@gem_ctx_switch@all-light.html
* igt@gem_exec_balancer@smoke:
- shard-iclb: [SKIP][38] ([fdo#110854]) -> [PASS][39]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb7/igt@gem_exec_balancer@smoke.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb4/igt@gem_exec_balancer@smoke.html
* igt@gem_exec_schedule@promotion-bsd:
- shard-iclb: [SKIP][40] ([fdo#112146]) -> [PASS][41] +1 similar issue
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb4/igt@gem_exec_schedule@promotion-bsd.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb8/igt@gem_exec_schedule@promotion-bsd.html
* igt@gem_exec_schedule@wide-bsd2:
- shard-kbl: [INCOMPLETE][42] ([fdo#103665]) -> [PASS][43]
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-kbl7/igt@gem_exec_schedule@wide-bsd2.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-kbl4/igt@gem_exec_schedule@wide-bsd2.html
* igt@gem_persistent_relocs@forked-thrash-inactive:
- shard-iclb: [INCOMPLETE][44] ([fdo#107713] / [fdo#112068 ]) -> [PASS][45]
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb2/igt@gem_persistent_relocs@forked-thrash-inactive.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb7/igt@gem_persistent_relocs@forked-thrash-inactive.html
* igt@gem_persistent_relocs@forked-thrashing:
- shard-hsw: [FAIL][46] ([fdo#112037]) -> [PASS][47] +1 similar issue
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-hsw7/igt@gem_persistent_relocs@forked-thrashing.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-hsw2/igt@gem_persistent_relocs@forked-thrashing.html
* igt@gem_sync@basic-store-each:
- shard-iclb: [INCOMPLETE][48] ([fdo#107713] / [fdo#109100]) -> [PASS][49]
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb7/igt@gem_sync@basic-store-each.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb7/igt@gem_sync@basic-store-each.html
* igt@gem_userptr_blits@dmabuf-sync:
- shard-snb: [DMESG-WARN][50] ([fdo#111870]) -> [PASS][51] +2 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-snb1/igt@gem_userptr_blits@dmabuf-sync.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-snb6/igt@gem_userptr_blits@dmabuf-sync.html
* igt@gem_userptr_blits@map-fixed-invalidate-busy-gup:
- shard-hsw: [DMESG-WARN][52] ([fdo#111870]) -> [PASS][53] +2 similar issues
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-hsw4/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-hsw1/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html
* {igt@i915_pm_dc@dc6-dpms}:
- shard-iclb: [FAIL][54] ([fdo#110548]) -> [PASS][55]
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb3/igt@i915_pm_dc@dc6-dpms.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb6/igt@i915_pm_dc@dc6-dpms.html
* {igt@i915_selftest@live_gt_timelines}:
- {shard-tglb}: [INCOMPLETE][56] ([fdo#111831]) -> [PASS][57]
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-tglb4/igt@i915_selftest@live_gt_timelines.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-tglb7/igt@i915_selftest@live_gt_timelines.html
* igt@kms_flip@2x-flip-vs-expired-vblank:
- shard-glk: [FAIL][58] ([fdo#105363]) -> [PASS][59]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-glk3/igt@kms_flip@2x-flip-vs-expired-vblank.html
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-glk2/igt@kms_flip@2x-flip-vs-expired-vblank.html
* igt@kms_flip@flip-vs-suspend:
- shard-apl: [DMESG-WARN][60] ([fdo#108566]) -> [PASS][61]
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-apl6/igt@kms_flip@flip-vs-suspend.html
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-apl8/igt@kms_flip@flip-vs-suspend.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-hsw: [INCOMPLETE][62] ([fdo#103540]) -> [PASS][63]
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-hsw1/igt@kms_flip@flip-vs-suspend-interruptible.html
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-hsw6/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_frontbuffer_tracking@basic:
- shard-iclb: [FAIL][64] ([fdo#103167]) -> [PASS][65] +1 similar issue
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb6/igt@kms_frontbuffer_tracking@basic.html
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb2/igt@kms_frontbuffer_tracking@basic.html
* igt@kms_frontbuffer_tracking@fbc-suspend:
- shard-kbl: [DMESG-WARN][66] ([fdo#108566]) -> [PASS][67] +6 similar issues
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-kbl7/igt@kms_frontbuffer_tracking@fbc-suspend.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-kbl3/igt@kms_frontbuffer_tracking@fbc-suspend.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-cpu:
- {shard-tglb}: [FAIL][68] ([fdo#103167]) -> [PASS][69] +1 similar issue
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-tglb8/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-cpu.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-tglb2/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-cpu.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes:
- {shard-tglb}: [INCOMPLETE][70] ([fdo#111832] / [fdo#111850]) -> [PASS][71]
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-tglb4/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-tglb6/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
* igt@kms_psr@psr2_sprite_mmap_gtt:
- shard-iclb: [SKIP][72] ([fdo#109441]) -> [PASS][73] +2 similar issues
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb7/igt@kms_psr@psr2_sprite_mmap_gtt.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_gtt.html
* igt@kms_vblank@pipe-d-ts-continuation-suspend:
- {shard-tglb}: [INCOMPLETE][74] ([fdo#111850]) -> [PASS][75]
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-tglb8/igt@kms_vblank@pipe-d-ts-continuation-suspend.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-tglb2/igt@kms_vblank@pipe-d-ts-continuation-suspend.html
* igt@perf_pmu@enable-race-vecs0:
- shard-apl: [INCOMPLETE][76] ([fdo#103927]) -> [PASS][77] +1 similar issue
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-apl4/igt@perf_pmu@enable-race-vecs0.html
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-apl2/igt@perf_pmu@enable-race-vecs0.html
* igt@prime_busy@hang-bsd2:
- shard-iclb: [SKIP][78] ([fdo#109276]) -> [PASS][79] +17 similar issues
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb8/igt@prime_busy@hang-bsd2.html
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb2/igt@prime_busy@hang-bsd2.html
* igt@prime_vgem@sync-vebox:
- shard-iclb: [INCOMPLETE][80] ([fdo#107713]) -> [PASS][81]
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb2/igt@prime_vgem@sync-vebox.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb3/igt@prime_vgem@sync-vebox.html
* igt@tools_test@tools_test:
- shard-snb: [SKIP][82] ([fdo#109271]) -> [PASS][83]
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-snb7/igt@tools_test@tools_test.html
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-snb7/igt@tools_test@tools_test.html
#### Warnings ####
* igt@gem_ctx_isolation@vcs1-nonpriv:
- shard-iclb: [SKIP][84] ([fdo#109276] / [fdo#112080]) -> [FAIL][85] ([fdo#111329])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb5/igt@gem_ctx_isolation@vcs1-nonpriv.html
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb2/igt@gem_ctx_isolation@vcs1-nonpriv.html
* igt@gem_mocs_settings@mocs-isolation-bsd2:
- shard-iclb: [FAIL][86] ([fdo#111330]) -> [SKIP][87] ([fdo#109276]) +1 similar issue
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb4/igt@gem_mocs_settings@mocs-isolation-bsd2.html
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb6/igt@gem_mocs_settings@mocs-isolation-bsd2.html
* igt@runner@aborted:
- shard-iclb: ([FAIL][88], [FAIL][89]) ([fdo#110275] / [fdo#111093]) -> [FAIL][90] ([fdo#111093])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb2/igt@runner@aborted.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7211/shard-iclb7/igt@runner@aborted.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/shard-iclb5/igt@runner@aborted.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#104782]: https://bugs.freedesktop.org/show_bug.cgi?id=104782
[fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
[fdo#109100]: https://bugs.freedesktop.org/show_bug.cgi?id=109100
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#110275]: https://bugs.freedesktop.org/show_bug.cgi?id=110275
[fdo#110548]: https://bugs.freedesktop.org/show_bug.cgi?id=110548
[fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
[fdo#111093]: https://bugs.freedesktop.org/show_bug.cgi?id=111093
[fdo#111329]: https://bugs.freedesktop.org/show_bug.cgi?id=111329
[fdo#111330]: https://bugs.freedesktop.org/show_bug.cgi?id=111330
[fdo#111646]: https://bugs.freedesktop.org/show_bug.cgi?id=111646
[fdo#111671]: https://bugs.freedesktop.org/show_bug.cgi?id=111671
[fdo#111672]: https://bugs.freedesktop.org/show_bug.cgi?id=111672
[fdo#111747]: https://bugs.freedesktop.org/show_bug.cgi?id=111747
[fdo#111764]: https://bugs.freedesktop.org/show_bug.cgi?id=111764
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111831]: https://bugs.freedesktop.org/show_bug.cgi?id=111831
[fdo#111832]: https://bugs.freedesktop.org/show_bug.cgi?id=111832
[fdo#111850]: https://bugs.freedesktop.org/show_bug.cgi?id=111850
[fdo#111870]: https://bugs.freedesktop.org/show_bug.cgi?id=111870
[fdo#112037]: https://bugs.freedesktop.org/show_bug.cgi?id=112037
[fdo#112068 ]: https://bugs.freedesktop.org/show_bug.cgi?id=112068
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
[fdo#112168]: https://bugs.freedesktop.org/show_bug.cgi?id=112168
Participating hosts (11 -> 8)
------------------------------
Missing (3): pig-skl-6260u pig-glk-j5005 pig-hsw-4770r
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5249 -> IGTPW_3631
* Piglit: piglit_4509 -> None
CI-20190529: 20190529
CI_DRM_7211: 14d687e92e966b48dd74091352a07b825c13eb46 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_3631: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/index.html
IGT_5249: aee019cec9d7f3002371f6ddf102cb67d9976b71 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
piglit_4509: fdc5a4ca11124ab8413c7988896
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3631/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/2] Add a new IGT test to validate DC3CO state.
[not found] <1572355751-24313-1-git-send-email-jeevan.b@intel.com>
2019-10-29 16:00 ` [igt-dev] ✓ Fi.CI.BAT: success for Add a new IGT test to validate DC3CO state. (rev8) Patchwork
2019-10-30 4:08 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2019-10-30 12:57 ` Arkadiusz Hiler
[not found] ` <1572355751-24313-2-git-send-email-jeevan.b@intel.com>
[not found] ` <1572355751-24313-3-git-send-email-jeevan.b@intel.com>
4 siblings, 0 replies; 6+ messages in thread
From: Arkadiusz Hiler @ 2019-10-30 12:57 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev
On Tue, Oct 29, 2019 at 06:59:09PM +0530, Jeevan B wrote:
> This test is creating a vpb scenario for
> selective frame update and validating
> that DC state stays in DC3CO during execution.
Thanks for doing the requested changes!
The series is
Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] DC3CO PSR2 helpers
[not found] ` <1572355751-24313-2-git-send-email-jeevan.b@intel.com>
@ 2019-11-05 5:26 ` Ramalingam C
0 siblings, 0 replies; 6+ messages in thread
From: Ramalingam C @ 2019-11-05 5:26 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev
On 2019-10-29 at 18:59:10 +0530, Jeevan B wrote:
> From: Anshuman Gupta <anshuman.gupta@intel.com>
>
> Add DC3CO IGT validation prerequisites stuff
> so we can enable DC3CO IGT test.
>
> v2: Removed psr2_idle_wait_entry and get_psr2_status function.
> v3: Changed macro definition and removed extra line.
> v4: Simplified edp_psr2_enabled function as per Arek's comments.
> v5: Simplified read_dc_counter function as per Arek's comments.
Thanks for the patch. Merged with Arkadiusz's Ack.
-Ram
>
> Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
> Signed-off-by: Jeevan B <jeevan.b@intel.com>
> Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> ---
> tests/i915/i915_pm_dc.c | 37 ++++++++++++++++++++++++++-----------
> 1 file changed, 26 insertions(+), 11 deletions(-)
>
> diff --git a/tests/i915/i915_pm_dc.c b/tests/i915/i915_pm_dc.c
> index ce3319b..6132ebd 100644
> --- a/tests/i915/i915_pm_dc.c
> +++ b/tests/i915/i915_pm_dc.c
> @@ -34,8 +34,9 @@
> #include "limits.h"
>
> /* DC State Flags */
> -#define CHECK_DC5 1
> -#define CHECK_DC6 2
> +#define CHECK_DC5 (1 << 0)
> +#define CHECK_DC6 (1 << 1)
> +#define CHECK_DC3CO (1 << 2)
>
> typedef struct {
> int drm_fd;
> @@ -88,6 +89,16 @@ static bool edp_psr_sink_support(data_t *data)
> return strstr(buf, "Sink support: yes");
> }
>
> +static bool edp_psr2_enabled(data_t *data)
> +{
> + char buf[512];
> +
> + igt_debugfs_simple_read(data->debugfs_fd, "i915_edp_psr_status",
> + buf, sizeof(buf));
> +
> + return strstr(buf, "PSR mode: PSR2 enabled") != NULL;
> +}
> +
> static void cleanup_dc_psr(data_t *data)
> {
> igt_plane_t *primary;
> @@ -137,16 +148,17 @@ static uint32_t read_dc_counter(uint32_t drm_fd, int dc_flag)
>
> igt_debugfs_read(drm_fd, "i915_dmc_info", buf);
>
> - if (dc_flag & CHECK_DC5)
> + if (dc_flag & CHECK_DC5) {
> str = strstr(buf, "DC3 -> DC5 count");
> - else if (dc_flag & CHECK_DC6)
> + igt_skip_on_f(!str, "DC5 counter is not available\n");
> + } else if (dc_flag & CHECK_DC6) {
> str = strstr(buf, "DC5 -> DC6 count");
> + igt_skip_on_f(!str, "DC6 counter is not available\n");
> + } else if (dc_flag & CHECK_DC3CO) {
> + str = strstr(buf, "DC3CO count");
> + igt_skip_on_f(!str, "DC3CO counter is not available\n");
> + }
>
> - /* Check DC5/DC6 counter is available for the platform.
> - * Skip the test if counter is not available.
> - */
> - igt_skip_on_f(!str, "DC%d counter is not available\n",
> - dc_flag & CHECK_DC5 ? 5 : 6);
> return get_dc_counter(str);
> }
>
> @@ -158,9 +170,12 @@ static bool dc_state_wait_entry(int drm_fd, int dc_flag, int prev_dc_count)
>
> static void check_dc_counter(int drm_fd, int dc_flag, uint32_t prev_dc_count)
> {
> + char tmp[64];
> +
> + snprintf(tmp, sizeof(tmp), "%s", dc_flag & CHECK_DC3CO ? "DC3CO" :
> + (dc_flag & CHECK_DC5 ? "DC5" : "DC6"));
> igt_assert_f(dc_state_wait_entry(drm_fd, dc_flag, prev_dc_count),
> - "DC%d state is not achieved\n",
> - dc_flag & CHECK_DC5 ? 5 : 6);
> + "%s state is not achieved\n", tmp);
> }
>
> static void test_dc_state_psr(data_t *data, int dc_flag)
> --
> 2.7.4
>
> _______________________________________________
> igt-dev mailing list
> igt-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/2] Add a new IGT test to validate DC3CO state
[not found] ` <1572355751-24313-3-git-send-email-jeevan.b@intel.com>
@ 2019-11-05 5:27 ` Ramalingam C
0 siblings, 0 replies; 6+ messages in thread
From: Ramalingam C @ 2019-11-05 5:27 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev
On 2019-10-29 at 18:59:11 +0530, Jeevan B wrote:
> Add a subtest for DC3CO video playback case
> to generate selective frame update and validate
> that system stays in DC3CO state during execution.
>
> v2: Changed PSR2 idle check to sleep check and addressed cosmetic changes.
> v3: Renamed a function and restructured code.
> v4: Cosmetic changes.
> v5: Removed DC5 check, Platform check and a function parameter.
> Renamed a function name as per Arek and Imre's Comments.
> v6: Added a new function require_dc_counter as per Arek's Comments.
> The test is now running based on time instead of the number of frames
> increased frame delay from 1 to 1.5 as per Imre's Comments.
> v7: Removed psr2_active_sleep_check and corrected the switch indentation.
> v8: Changed skip to assert in read_dc_counter function and changed
> IGT description
>
Thanks for the patch. Merged with Arkadiusz's Ack.
-Ram
> Signed-off-by: Jeevan B <jeevan.b@intel.com>
> Reviewed-by: Anshuman Gupta <anshuman.gupta@intel.com>
> ---
> tests/i915/i915_pm_dc.c | 159 ++++++++++++++++++++++++++++++++++++++++++++++--
> 1 file changed, 155 insertions(+), 4 deletions(-)
>
> diff --git a/tests/i915/i915_pm_dc.c b/tests/i915/i915_pm_dc.c
> index 6132ebd..90d81cf 100644
> --- a/tests/i915/i915_pm_dc.c
> +++ b/tests/i915/i915_pm_dc.c
> @@ -32,6 +32,7 @@
> #include "igt_psr.h"
> #include "igt_sysfs.h"
> #include "limits.h"
> +#include "time.h"
>
> /* DC State Flags */
> #define CHECK_DC5 (1 << 0)
> @@ -39,12 +40,16 @@
> #define CHECK_DC3CO (1 << 2)
>
> typedef struct {
> + double r, g, b;
> +} color_t;
> +
> +typedef struct {
> int drm_fd;
> int msr_fd;
> int debugfs_fd;
> uint32_t devid;
> igt_display_t display;
> - struct igt_fb fb_white;
> + struct igt_fb fb_white, fb_rgb, fb_rgr;
> enum psr_mode op_psr_mode;
> drmModeModeInfo *mode;
> igt_output_t *output;
> @@ -110,6 +115,42 @@ static void cleanup_dc_psr(data_t *data)
> igt_remove_fb(data->drm_fd, &data->fb_white);
> }
>
> +static void cleanup_dc3co_fbs(data_t *data)
> +{
> + igt_plane_t *primary;
> +
> + primary = igt_output_get_plane_type(data->output,
> + DRM_PLANE_TYPE_PRIMARY);
> + igt_plane_set_fb(primary, NULL);
> + /* Clear Frame Buffers */
> + igt_display_commit(&data->display);
> + igt_remove_fb(data->drm_fd, &data->fb_rgb);
> + igt_remove_fb(data->drm_fd, &data->fb_rgr);
> +}
> +
> +static void paint_rectangles(data_t *data,
> + drmModeModeInfo *mode,
> + color_t *colors,
> + igt_fb_t *fb)
> +{
> + cairo_t *cr = igt_get_cairo_ctx(data->drm_fd, fb);
> + int i, l = mode->hdisplay / 3;
> + int rows_remaining = mode->hdisplay % 3;
> +
> + /* Paint 3 solid rectangles. */
> + for (i = 0 ; i < 3; i++) {
> + igt_paint_color(cr, i * l, 0, l, mode->vdisplay,
> + colors[i].r, colors[i].g, colors[i].b);
> + }
> +
> + if (rows_remaining > 0)
> + igt_paint_color(cr, i * l, 0, rows_remaining, mode->vdisplay,
> + colors[i - 1].r, colors[i - 1].g,
> + colors[i - 1].b);
> +
> + igt_put_cairo_ctx(data->drm_fd, fb, cr);
> +}
> +
> static void setup_primary(data_t *data)
> {
> igt_plane_t *primary;
> @@ -127,6 +168,20 @@ static void setup_primary(data_t *data)
> igt_display_commit(&data->display);
> }
>
> +static void create_color_fb(data_t *data, igt_fb_t *fb, color_t *fb_color)
> +{
> + int fb_id;
> +
> + fb_id = igt_create_fb(data->drm_fd,
> + data->mode->hdisplay,
> + data->mode->vdisplay,
> + DRM_FORMAT_XRGB8888,
> + LOCAL_DRM_FORMAT_MOD_NONE,
> + fb);
> + igt_assert(fb_id);
> + paint_rectangles(data, data->mode, fb_color, fb);
> +}
> +
> static uint32_t get_dc_counter(char *dc_data)
> {
> char *e;
> @@ -150,13 +205,13 @@ static uint32_t read_dc_counter(uint32_t drm_fd, int dc_flag)
>
> if (dc_flag & CHECK_DC5) {
> str = strstr(buf, "DC3 -> DC5 count");
> - igt_skip_on_f(!str, "DC5 counter is not available\n");
> + igt_assert_f(str, "DC5 counter is not available\n");
> } else if (dc_flag & CHECK_DC6) {
> str = strstr(buf, "DC5 -> DC6 count");
> - igt_skip_on_f(!str, "DC6 counter is not available\n");
> + igt_assert_f(str, "DC6 counter is not available\n");
> } else if (dc_flag & CHECK_DC3CO) {
> str = strstr(buf, "DC3CO count");
> - igt_skip_on_f(!str, "DC3CO counter is not available\n");
> + igt_assert_f(str, "DC3CO counter is not available\n");
> }
>
> return get_dc_counter(str);
> @@ -178,10 +233,99 @@ static void check_dc_counter(int drm_fd, int dc_flag, uint32_t prev_dc_count)
> "%s state is not achieved\n", tmp);
> }
>
> +static void setup_videoplayback(data_t *data)
> +{
> + color_t red_green_blue[] = {
> + { 1.0, 0.0, 0.0 },
> + { 0.0, 1.0, 0.0 },
> + { 0.0, 0.0, 1.0 },
> + };
> + color_t red_green_red[] = {
> + { 1.0, 0.0, 0.0 },
> + { 0.0, 1.0, 0.0 },
> + { 1.0, 0.0, 0.0 },
> + };
> +
> + create_color_fb(data, &data->fb_rgb, red_green_blue);
> + create_color_fb(data, &data->fb_rgr, red_green_red);
> +}
> +
> +static void check_dc3co_with_videoplayback_like_load(data_t *data)
> +{
> + igt_plane_t *primary;
> + uint32_t dc3co_prev_cnt;
> + int delay;
> + time_t secs = 6;
> + time_t startTime = time(NULL);
> +
> + primary = igt_output_get_plane_type(data->output,
> + DRM_PLANE_TYPE_PRIMARY);
> + igt_plane_set_fb(primary, NULL);
> + dc3co_prev_cnt = read_dc_counter(data->drm_fd, CHECK_DC3CO);
> + /* Calculate delay to generate idle frame in usec*/
> + delay = 1.5 * ((1000 * 1000) / data->mode->vrefresh);
> +
> + while (time(NULL) - startTime < secs) {
> + igt_plane_set_fb(primary, &data->fb_rgb);
> + igt_display_commit(&data->display);
> + usleep(delay);
> +
> + igt_plane_set_fb(primary, &data->fb_rgr);
> + igt_display_commit(&data->display);
> + usleep(delay);
> + }
> +
> + check_dc_counter(data->drm_fd, CHECK_DC3CO, dc3co_prev_cnt);
> +}
> +
> +static void require_dc_counter(int drm_fd, int dc_flag)
> +{
> + char buf[4096];
> +
> + igt_debugfs_simple_read(drm_fd, "i915_dmc_info",
> + buf, sizeof(buf));
> +
> + switch (dc_flag) {
> + case CHECK_DC3CO:
> + igt_skip_on_f(strstr(buf, "DC3CO count"),
> + "DC3CO counter is not available\n");
> + break;
> + case CHECK_DC5:
> + igt_skip_on_f(strstr(buf, "DC3 -> DC5 count"),
> + "DC5 counter is not available\n");
> + break;
> + case CHECK_DC6:
> + igt_skip_on_f(strstr(buf, "DC5 -> DC6 count"),
> + "DC6 counter is not available\n");
> + break;
> + default:
> + igt_assert_f(0, "Unknown DC counter %d\n", dc_flag);
> + }
> +}
> +
> +static void setup_dc3co(data_t *data)
> +{
> + data->op_psr_mode = PSR_MODE_2;
> + psr_enable(data->debugfs_fd, data->op_psr_mode);
> + igt_require_f(edp_psr2_enabled(data),
> + "PSR2 is not enabled\n");
> +}
> +
> +static void test_dc3co_vpb_simulation(data_t *data)
> +{
> + require_dc_counter(data->drm_fd, CHECK_DC3CO);
> + setup_output(data);
> + setup_dc3co(data);
> + setup_videoplayback(data);
> + check_dc3co_with_videoplayback_like_load(data);
> + cleanup_dc3co_fbs(data);
> +}
> +
> static void test_dc_state_psr(data_t *data, int dc_flag)
> {
> uint32_t dc_counter_before_psr;
>
> + require_dc_counter(data->drm_fd, dc_flag);
> dc_counter_before_psr = read_dc_counter(data->drm_fd, dc_flag);
> setup_output(data);
> setup_primary(data);
> @@ -243,6 +387,7 @@ static void test_dc_state_dpms(data_t *data, int dc_flag)
> {
> uint32_t dc_counter;
>
> + require_dc_counter(data->drm_fd, dc_flag);
> setup_dc_dpms(data);
> dc_counter = read_dc_counter(data->drm_fd, dc_flag);
> dpms_off(data);
> @@ -279,6 +424,12 @@ int main(int argc, char *argv[])
> "Can't open /dev/cpu/0/msr.\n");
> }
>
> + igt_describe("In this test we make sure that system enters DC3CO "
> + "when PSR2 is active and system is in SLEEP state");
> + igt_subtest("dc3co-vpb-simulation") {
> + test_dc3co_vpb_simulation(&data);
> + }
> +
> igt_describe("This test validates display engine entry to DC5 state "
> "while PSR is active");
> igt_subtest("dc5-psr") {
> --
> 2.7.4
>
> _______________________________________________
> igt-dev mailing list
> igt-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-11-05 5:26 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1572355751-24313-1-git-send-email-jeevan.b@intel.com>
2019-10-29 16:00 ` [igt-dev] ✓ Fi.CI.BAT: success for Add a new IGT test to validate DC3CO state. (rev8) Patchwork
2019-10-30 4:08 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2019-10-30 12:57 ` [igt-dev] [PATCH i-g-t 0/2] Add a new IGT test to validate DC3CO state Arkadiusz Hiler
[not found] ` <1572355751-24313-2-git-send-email-jeevan.b@intel.com>
2019-11-05 5:26 ` [igt-dev] [PATCH i-g-t 1/2] DC3CO PSR2 helpers Ramalingam C
[not found] ` <1572355751-24313-3-git-send-email-jeevan.b@intel.com>
2019-11-05 5:27 ` [igt-dev] [PATCH i-g-t 2/2] Add a new IGT test to validate DC3CO state Ramalingam C
[not found] <1572343926-22949-1-git-send-email-jeevan.b@intel.com>
[not found] ` <1572343926-22949-2-git-send-email-jeevan.b@intel.com>
2019-10-29 12:30 ` [igt-dev] [PATCH i-g-t 1/2] DC3CO PSR2 helpers Arkadiusz Hiler
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox