* [PATCH i-g-t 0/2] Early Transport Support
@ 2024-06-24 9:19 Jeevan B
2024-06-24 9:19 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B
` (3 more replies)
0 siblings, 4 replies; 14+ messages in thread
From: Jeevan B @ 2024-06-24 9:19 UTC (permalink / raw)
To: igt-dev; +Cc: jouni.hogander, kamil.konieczny, Jeevan B
Add early trasport helper and checks to validate early trasport support
on the supported display.
Jeevan B (2):
lib/igt_psr: Added library functions for early trasport
tests/intel/kms_psr2_sf: Add checks for early transport
lib/igt_psr.c | 19 +++++++++++++++++++
lib/igt_psr.h | 3 +++
tests/intel/kms_psr2_sf.c | 18 +++++++++++++++++-
3 files changed, 39 insertions(+), 1 deletion(-)
--
2.25.1
^ permalink raw reply [flat|nested] 14+ messages in thread* [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-06-24 9:19 [PATCH i-g-t 0/2] Early Transport Support Jeevan B @ 2024-06-24 9:19 ` Jeevan B 2024-06-24 9:19 ` [PATCH i-g-t 2/2] tests/intel/kms_psr2_sf: Add checks for early transport Jeevan B ` (2 subsequent siblings) 3 siblings, 0 replies; 14+ messages in thread From: Jeevan B @ 2024-06-24 9:19 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, kamil.konieczny, Jeevan B Added helper functions to check sink support for early transport and check early transport active check. v2: Add early trasport for PR and PSR2. v3: Fix check strings. v4: Add description to library function and correctstring logic. Signed-off-by: Jeevan B <jeevan.b@intel.com> --- lib/igt_psr.c | 19 +++++++++++++++++++ lib/igt_psr.h | 3 +++ 2 files changed, 22 insertions(+) diff --git a/lib/igt_psr.c b/lib/igt_psr.c index 6008b73a6..279acdf7d 100644 --- a/lib/igt_psr.c +++ b/lib/igt_psr.c @@ -53,6 +53,19 @@ bool selective_fetch_check(int debugfs_fd, igt_output_t *output) return strstr(buf, "PSR2 selective fetch: enabled"); } +/* + * Checks if Early Transport is enabled in PSR status by reading the debugfs. + */ +bool early_transport_check(int debugfs_fd) +{ + char buf[PSR_STATUS_MAX_LEN]; + + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", buf, + sizeof(buf)); + + return strstr(buf, "enabled (Early Transport)"); +} + static bool psr_active_check(int debugfs_fd, enum psr_mode mode, igt_output_t *output) { char debugfs_file[128] = {0}; @@ -247,10 +260,16 @@ bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode, igt_output strstr(buf, "Sink support: yes [0x04]") || (strstr(line, "PSR = yes") && (strstr(line, "[0x03]") || strstr(line, "[0x04]"))); + case PSR_MODE_2_ET: + return strstr(buf, "Sink support: yes [0x04]") || + (strstr(line, "PSR = yes") && + strstr(line, "[0x04]")) case PR_MODE: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = no"); case PR_MODE_SEL_FETCH: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = yes"); + case PR_MODE_SEL_FETCH_ET: + return strstr(line, "Panel Replay Selective Update = yes (Early Transport)"); default: igt_assert_f(false, "Invalid psr mode\n"); return false; diff --git a/lib/igt_psr.h b/lib/igt_psr.h index e8595fd8c..a7ebd0739 100644 --- a/lib/igt_psr.h +++ b/lib/igt_psr.h @@ -35,8 +35,10 @@ enum psr_mode { PSR_MODE_1, PSR_MODE_2, PSR_MODE_2_SEL_FETCH, + PSR_MODE_2_ET, PR_MODE, PR_MODE_SEL_FETCH, + PR_MODE_SEL_FETCH_ET, PSR_DISABLED, }; @@ -47,6 +49,7 @@ enum fbc_mode { bool psr_disabled_check(int debugfs_fd); bool selective_fetch_check(int debugfs_fd, igt_output_t *output); +bool early_transport_check(int debugfs_fd); bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); -- 2.25.1 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH i-g-t 2/2] tests/intel/kms_psr2_sf: Add checks for early transport 2024-06-24 9:19 [PATCH i-g-t 0/2] Early Transport Support Jeevan B 2024-06-24 9:19 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B @ 2024-06-24 9:19 ` Jeevan B 2024-06-24 13:07 ` ✗ Fi.CI.BUILD: failure for Early Transport Support (rev4) Patchwork 2024-06-24 13:10 ` ✗ GitLab.Pipeline: warning " Patchwork 3 siblings, 0 replies; 14+ messages in thread From: Jeevan B @ 2024-06-24 9:19 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, kamil.konieczny, Jeevan B Add checks weather early transport if supported then we check if early trasport is working. Signed-off-by: Jeevan B <jeevan.b@intel.com> --- tests/intel/kms_psr2_sf.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/tests/intel/kms_psr2_sf.c b/tests/intel/kms_psr2_sf.c index 4c3e34aa0..e612b8266 100644 --- a/tests/intel/kms_psr2_sf.c +++ b/tests/intel/kms_psr2_sf.c @@ -168,6 +168,7 @@ typedef struct { igt_plane_t *test_plane; bool big_fb_test; bool fbc_flag; + bool et_flag; cairo_t *cr; uint32_t screen_changes; int cur_x, cur_y; @@ -184,11 +185,23 @@ static bool set_sel_fetch_mode_for_output(data_t *data) { bool supported = false; + data->et_flag = false; + if (psr_sink_support(data->drm_fd, data->debugfs_fd, - PR_MODE_SEL_FETCH, data->output)) { + PR_MODE_SEL_FETCH_ET, data->output)) { + supported = true; + data->psr_mode = PR_MODE_SEL_FETCH; + data->et_flag = true; + } else if (psr_sink_support(data->drm_fd, data->debugfs_fd, + PR_MODE_SEL_FETCH, data->output)) { supported = true; data->psr_mode = PR_MODE_SEL_FETCH; } else if (psr_sink_support(data->drm_fd, data->debugfs_fd, + PSR_MODE_2_ET, data->output)) { + supported = true; + data->psr_mode = PSR_MODE_2; + data->et_flag = true; + } else if (psr_sink_support(data->drm_fd, data->debugfs_fd, PSR_MODE_2, data->output)) { supported = true; data->psr_mode = PSR_MODE_2; @@ -916,6 +929,9 @@ static void run(data_t *data) igt_assert_f(intel_fbc_wait_until_enabled(data->drm_fd, data->pipe), "FBC still disabled\n"); + if (data->et_flag) + igt_assert_f(early_transport_check(data->debugfs_fd), + "Early Trasport Disbaled\n"); data->screen_changes = 0; -- 2.25.1 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* ✗ Fi.CI.BUILD: failure for Early Transport Support (rev4) 2024-06-24 9:19 [PATCH i-g-t 0/2] Early Transport Support Jeevan B 2024-06-24 9:19 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 2024-06-24 9:19 ` [PATCH i-g-t 2/2] tests/intel/kms_psr2_sf: Add checks for early transport Jeevan B @ 2024-06-24 13:07 ` Patchwork 2024-06-24 13:10 ` ✗ GitLab.Pipeline: warning " Patchwork 3 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2024-06-24 13:07 UTC (permalink / raw) To: Jeevan B; +Cc: igt-dev == Series Details == Series: Early Transport Support (rev4) URL : https://patchwork.freedesktop.org/series/133804/ State : failure == Summary == IGT patchset build failed on latest successful build 9119f9c5dbbb969438b3424dc2f3b30f3b442aab lib/igt_psr: Adjust igt_wait intervals Tail of build.log: [286/1681] Compiling C object 'lib/76b5a35@@igt-igt_msm_c@sta/igt_msm.c.o'. [287/1681] Compiling C object 'lib/76b5a35@@igt-monitor_edids_monitor_edids_helper_c@sta/monitor_edids_monitor_edids_helper.c.o'. [288/1681] Compiling C object 'lib/76b5a35@@igt-rendercopy_gen4_c@sta/rendercopy_gen4.c.o'. [289/1681] Compiling C object 'lib/76b5a35@@igt-ioctl_wrappers_c@sta/ioctl_wrappers.c.o'. [290/1681] Compiling C object 'lib/76b5a35@@igt-veboxcopy_gen12_c@sta/veboxcopy_gen12.c.o'. [291/1681] Compiling C object 'lib/76b5a35@@igt-intel_aux_pgtable_c@sta/intel_aux_pgtable.c.o'. [292/1681] Compiling C object 'lib/76b5a35@@igt-igt_vc4_c@sta/igt_vc4.c.o'. [293/1681] Compiling C object 'lib/76b5a35@@igt-intel_allocator_c@sta/intel_allocator.c.o'. [294/1681] Compiling C object 'lib/76b5a35@@igt-igt_edid_c@sta/igt_edid.c.o'. [295/1681] Compiling C object 'tests/59830eb@@kms_lease@exe/kms_lease.c.o'. [296/1681] Compiling C object 'lib/76b5a35@@igt-xe_xe_util_c@sta/xe_xe_util.c.o'. [297/1681] Compiling C object 'lib/76b5a35@@igt-igt_device_scan_c@sta/igt_device_scan.c.o'. [298/1681] Compiling C object 'lib/76b5a35@@igt-igt_alsa_c@sta/igt_alsa.c.o'. [299/1681] Compiling C object 'lib/76b5a35@@igt-igt_frame_c@sta/igt_frame.c.o'. [300/1681] Compiling C object 'lib/76b5a35@@igt-igt_draw_c@sta/igt_draw.c.o'. [301/1681] Compiling C object 'lib/76b5a35@@igt-igt_dummyload_c@sta/igt_dummyload.c.o'. [302/1681] Compiling C object 'lib/76b5a35@@igt-igt_aux_c@sta/igt_aux.c.o'. [303/1681] Compiling C object 'lib/76b5a35@@igt-igt_chamelium_stream_c@sta/igt_chamelium_stream.c.o'. [304/1681] Compiling C object 'lib/76b5a35@@igt-instdone_c@sta/instdone.c.o'. [305/1681] Compiling C object 'tests/59830eb@@kms_flip@exe/kms_flip.c.o'. [306/1681] Compiling C object 'lib/76b5a35@@igt-xe_xe_ioctl_c@sta/xe_xe_ioctl.c.o'. [307/1681] Compiling C object 'lib/76b5a35@@igt-xe_xe_spin_c@sta/xe_xe_spin.c.o'. [308/1681] Compiling C object 'lib/76b5a35@@igt-gpu_cmds_c@sta/gpu_cmds.c.o'. [309/1681] Compiling C object 'lib/76b5a35@@igt-xe_xe_query_c@sta/xe_xe_query.c.o'. [310/1681] Compiling C object 'lib/76b5a35@@igt-igt_v3d_c@sta/igt_v3d.c.o'. [311/1681] Compiling C object 'lib/76b5a35@@igt-rendercopy_gen7_c@sta/rendercopy_gen7.c.o'. [312/1681] Compiling C object 'lib/76b5a35@@igt-igt_vmwgfx_c@sta/igt_vmwgfx.c.o'. [313/1681] Compiling C object 'lib/76b5a35@@igt-igt_audio_c@sta/igt_audio.c.o'. [314/1681] Compiling C object 'lib/76b5a35@@igt-rendercopy_gen6_c@sta/rendercopy_gen6.c.o'. [315/1681] Compiling C object 'lib/76b5a35@@igt-igt_pm_c@sta/igt_pm.c.o'. [316/1681] Compiling C object 'lib/76b5a35@@igt-intel_compute_c@sta/intel_compute.c.o'. [317/1681] Compiling C object 'tests/59830eb@@gem_concurrent_blit@exe/intel_gem_concurrent_blit.c.o'. [318/1681] Compiling C object 'lib/76b5a35@@igt-igt_amd_c@sta/igt_amd.c.o'. [319/1681] Compiling C object 'lib/76b5a35@@igt-intel_blt_c@sta/intel_blt.c.o'. [320/1681] Compiling C object 'lib/76b5a35@@igt-intel_bufops_c@sta/intel_bufops.c.o'. [321/1681] Compiling C object 'lib/76b5a35@@igt-igt_kmod_c@sta/igt_kmod.c.o'. [322/1681] Compiling C object 'tests/59830eb@@kms_atomic@exe/kms_atomic.c.o'. [323/1681] Generating i915-perf-registers-acmgt3 with a custom command. [324/1681] Generating i915-perf-metrics-acmgt3 with a custom command. [325/1681] Compiling C object 'lib/76b5a35@@igt-intel_batchbuffer_c@sta/intel_batchbuffer.c.o'. [326/1681] Compiling C object 'lib/76b5a35@@igt-rendercopy_gen8_c@sta/rendercopy_gen8.c.o'. [327/1681] Compiling C object 'lib/76b5a35@@igt-igt_chamelium_c@sta/igt_chamelium.c.o'. [328/1681] Compiling C object 'tests/59830eb@@kms_cursor_legacy@exe/kms_cursor_legacy.c.o'. [329/1681] Compiling C object 'lib/76b5a35@@igt-rendercopy_gen9_c@sta/rendercopy_gen9.c.o'. [330/1681] Compiling C object 'lib/76b5a35@@igt-igt_core_c@sta/igt_core.c.o'. [331/1681] Compiling C object 'lib/76b5a35@@igt-i915_intel_decode_c@sta/i915_intel_decode.c.o'. [332/1681] Compiling C object 'lib/76b5a35@@igt-igt_fb_c@sta/igt_fb.c.o'. [333/1681] Compiling C object 'lib/76b5a35@@igt-igt_kms_c@sta/igt_kms.c.o'. [334/1681] Generating i915-perf-equations with a custom command. ninja: build stopped: subcommand failed. ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✗ GitLab.Pipeline: warning for Early Transport Support (rev4) 2024-06-24 9:19 [PATCH i-g-t 0/2] Early Transport Support Jeevan B ` (2 preceding siblings ...) 2024-06-24 13:07 ` ✗ Fi.CI.BUILD: failure for Early Transport Support (rev4) Patchwork @ 2024-06-24 13:10 ` Patchwork 3 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2024-06-24 13:10 UTC (permalink / raw) To: Jeevan B; +Cc: igt-dev == Series Details == Series: Early Transport Support (rev4) URL : https://patchwork.freedesktop.org/series/133804/ State : warning == Summary == Pipeline status: FAILED. see https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/1208838 for the overview. build:tests-debian-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276856): [3/1581] Linking static target lib/libigt-igt_fb_c.a. [4/1581] Linking static target lib/libigt-igt_kmod_c.a. [5/1581] Linking static target lib/libigt-igt_v3d_c.a. [6/1581] Compiling C object 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o cc -Ilib/76b5a35@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/x86_64-linux-gnu -I/usr/include/valgrind -I/usr/include/alsa -I/usr/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/usr/local/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c: In function ‘psr_sink_support’: ../lib/igt_psr.c:288:28: error: expected ‘;’ before ‘case’ strstr(line, "[0x04]")) ^ ; case PR_MODE: ~~~~ ninja: build stopped: subcommand failed. section_end:1719234556:step_script section_start:1719234556:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234557:cleanup_file_variables ERROR: Job failed: exit code 1 build:tests-debian-meson-arm64 has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276859): [5/1203] Linking static target lib/libigt-igt_v3d_c.a. [6/1203] Linking static target lib/libigt-igt_kmod_c.a. [7/1203] Linking static target lib/libigt-igt_ktap_c.a. [8/1203] Compiling C object 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o /usr/bin/aarch64-linux-gnu-gcc -Ilib/76b5a35@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/aarch64-linux-gnu -I/usr/include/valgrind -I/usr/include/alsa -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/usr/local/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c: In function ‘psr_sink_support’: ../lib/igt_psr.c:288:28: error: expected ‘;’ before ‘case’ strstr(line, "[0x04]")) ^ ; case PR_MODE: ~~~~ ninja: build stopped: subcommand failed. section_end:1719234547:step_script section_start:1719234547:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234547:cleanup_file_variables ERROR: Job failed: exit code 1 build:tests-debian-meson-armhf has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276858): [4/1216] Linking static target lib/libigt-igt_core_c.a. [5/1216] Linking static target lib/libigt-igt_pm_c.a. [6/1216] Linking static target lib/libigt-igt_kmod_c.a. [7/1216] Compiling C object 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o /usr/bin/arm-linux-gnueabihf-gcc -Ilib/76b5a35@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/arm-linux-gnueabihf -I/usr/include/valgrind -I/usr/include/alsa -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/usr/local/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c: In function ‘psr_sink_support’: ../lib/igt_psr.c:288:28: error: expected ‘;’ before ‘case’ strstr(line, "[0x04]")) ^ ; case PR_MODE: ~~~~ ninja: build stopped: subcommand failed. section_end:1719234548:step_script section_start:1719234548:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234549:cleanup_file_variables ERROR: Job failed: exit code 1 build:tests-debian-meson-mips has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276860): [4/1203] Linking static target lib/libigt-igt_core_c.a. [5/1203] Linking static target lib/libigt-igt_kmod_c.a. [6/1203] Linking static target lib/libigt-igt_v3d_c.a. [7/1203] Compiling C object 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o /usr/bin/mips-linux-gnu-gcc -Ilib/76b5a35@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/mips-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/mips-linux-gnu -I/usr/include/valgrind -I/usr/include/alsa -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/usr/local/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c: In function ‘psr_sink_support’: ../lib/igt_psr.c:288:28: error: expected ‘;’ before ‘case’ strstr(line, "[0x04]")) ^ ; case PR_MODE: ~~~~ ninja: build stopped: subcommand failed. section_end:1719234558:step_script section_start:1719234558:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234560:cleanup_file_variables ERROR: Job failed: exit code 1 build:tests-debian-minimal has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276857): [2/356] Linking static target lib/libigt-igt_kms_c.a. [3/356] Linking static target lib/libigt-igt_fb_c.a. [4/356] Linking static target lib/libigt-igt_core_c.a. [5/356] Compiling C object 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o cc -Ilib/76b5a35@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I../lib/stubs/libunwind -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/usr/local/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c: In function ‘psr_sink_support’: ../lib/igt_psr.c:288:28: error: expected ‘;’ before ‘case’ strstr(line, "[0x04]")) ^ ; case PR_MODE: ~~~~ ninja: build stopped: subcommand failed. section_end:1719234537:step_script section_start:1719234537:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234538:cleanup_file_variables ERROR: Job failed: exit code 1 build:tests-fedora has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276851): [4/1592] Linking static target lib/libigt-igt_pm_c.a. [5/1592] Linking static target lib/libigt-igt_kmod_c.a. [6/1592] Linking static target lib/libigt-igt_vmwgfx_c.a. [7/1592] Compiling C object 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o cc -Ilib/76b5a35@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/opt/igt/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c: In function ‘psr_sink_support’: ../lib/igt_psr.c:288:28: error: expected ‘;’ before ‘case’ 288 | strstr(line, "[0x04]")) | ^ | ; 289 | case PR_MODE: | ~~~~ ninja: build stopped: subcommand failed. section_end:1719234538:step_script section_start:1719234538:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234539:cleanup_file_variables ERROR: Job failed: exit code 1 build:tests-fedora-clang has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276855): [2/1597] Linking static target lib/libigt-igt_fb_c.a. [3/1597] Linking static target lib/libigt-igt_kms_c.a. [4/1597] Linking static target lib/libigt-igt_kmod_c.a. [5/1597] Linking static target lib/libigt-igt_v3d_c.a. [6/1597] Linking static target lib/libigt-igt_vmwgfx_c.a. [7/1597] Compiling C object 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o clang -Ilib/76b5a35@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -Xclang -fcolor-diagnostics -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/usr/local/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c:288:28: error: expected ';' after return statement strstr(line, "[0x04]")) ^ ; 1 error generated. ninja: build stopped: subcommand failed. section_end:1719234567:step_script section_start:1719234567:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234568:cleanup_file_variables ERROR: Job failed: exit code 1 build:tests-fedora-no-libdrm-nouveau has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276854): [5/1429] Linking static target lib/libigt-igt_pm_c.a. [6/1429] Linking static target lib/libigt-igt_kmod_c.a. [7/1429] Linking static target lib/libigt-igt_vmwgfx_c.a. [8/1429] Compiling C object 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o cc -Ilib/76b5a35@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/usr/local/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c: In function ‘psr_sink_support’: ../lib/igt_psr.c:288:28: error: expected ‘;’ before ‘case’ 288 | strstr(line, "[0x04]")) | ^ | ; 289 | case PR_MODE: | ~~~~ ninja: build stopped: subcommand failed. section_end:1719234561:step_script section_start:1719234561:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234562:cleanup_file_variables ERROR: Job failed: exit code 1 build:tests-fedora-no-libunwind has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276852): [4/1589] Linking static target lib/libigt-igt_pm_c.a. [5/1589] Linking static target lib/libigt-igt_kmod_c.a. [6/1589] Linking static target lib/libigt-igt_vmwgfx_c.a. [7/1589] Compiling C object 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o cc -Ilib/76b5a35@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I../lib/stubs/libunwind -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/usr/local/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/76b5a35@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c: In function ‘psr_sink_support’: ../lib/igt_psr.c:288:28: error: expected ‘;’ before ‘case’ 288 | strstr(line, "[0x04]")) | ^ | ; 289 | case PR_MODE: | ~~~~ ninja: build stopped: subcommand failed. section_end:1719234552:step_script section_start:1719234552:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234558:cleanup_file_variables ERROR: Job failed: exit code 1 build:tests-fedora-oldest-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60276853): [4/1603] Linking static target lib/libigt-igt_fb_c.a. [5/1603] Linking static target lib/libigt-igt_core_c.a. [6/1603] Linking static target lib/libigt-igt_pm_c.a. [7/1603] Compiling C object 'lib/lib@@igt-igt_psr_c@sta/igt_psr.c.o'. FAILED: lib/lib@@igt-igt_psr_c@sta/igt_psr.c.o cc -Ilib/lib@@igt-igt_psr_c@sta -Ilib -I../lib -I../include -I../include/drm-uapi -I../include/linux-uapi -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-conversion -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -D_LARGEFILE64_SOURCE=1 -fPIC -pthread '-DIGT_DATADIR="/usr/local/share/igt-gpu-tools"' '-DIGT_SRCDIR="/builds/gfx-ci/igt-ci-tags/tests"' '-DIGT_LOG_DOMAIN="igt_psr"' -MD -MQ 'lib/lib@@igt-igt_psr_c@sta/igt_psr.c.o' -MF 'lib/lib@@igt-igt_psr_c@sta/igt_psr.c.o.d' -o 'lib/lib@@igt-igt_psr_c@sta/igt_psr.c.o' -c ../lib/igt_psr.c ../lib/igt_psr.c: In function ‘psr_sink_support’: ../lib/igt_psr.c:288:28: error: expected ‘;’ before ‘case’ 288 | strstr(line, "[0x04]")) | ^ | ; 289 | case PR_MODE: | ~~~~ ninja: build stopped: subcommand failed. section_end:1719234562:step_script section_start:1719234562:cleanup_file_variables Cleaning up project directory and file based variables section_end:1719234563:cleanup_file_variables ERROR: Job failed: exit code 1 == Logs == For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/1208838 ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH i-g-t 0/2] Early Transport Support @ 2024-06-24 18:15 Jeevan B 2024-06-24 18:15 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 0 siblings, 1 reply; 14+ messages in thread From: Jeevan B @ 2024-06-24 18:15 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, kamil.konieczny, Jeevan B Add early trasport helper and checks to validate early trasport support on the supported display. Jeevan B (2): lib/igt_psr: Added library functions for early trasport tests/intel/kms_psr2_sf: Add checks for early transport lib/igt_psr.c | 19 +++++++++++++++++++ lib/igt_psr.h | 3 +++ tests/intel/kms_psr2_sf.c | 18 +++++++++++++++++- 3 files changed, 39 insertions(+), 1 deletion(-) -- 2.25.1 ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-06-24 18:15 [PATCH i-g-t 0/2] Early Transport Support Jeevan B @ 2024-06-24 18:15 ` Jeevan B 2024-06-25 8:44 ` Hogander, Jouni 2024-06-25 10:55 ` Saarinen, Jani 0 siblings, 2 replies; 14+ messages in thread From: Jeevan B @ 2024-06-24 18:15 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, kamil.konieczny, Jeevan B Added helper functions to check sink support for early transport and check early transport active check. v2: Add early trasport for PR and PSR2. v3: Fix check strings. v4: Add description to library function and correctstring logic. Signed-off-by: Jeevan B <jeevan.b@intel.com> --- lib/igt_psr.c | 19 +++++++++++++++++++ lib/igt_psr.h | 3 +++ 2 files changed, 22 insertions(+) diff --git a/lib/igt_psr.c b/lib/igt_psr.c index 6008b73a6..dc85042b2 100644 --- a/lib/igt_psr.c +++ b/lib/igt_psr.c @@ -53,6 +53,19 @@ bool selective_fetch_check(int debugfs_fd, igt_output_t *output) return strstr(buf, "PSR2 selective fetch: enabled"); } +/* + * Checks if Early Transport is enabled in PSR status by reading the debugfs. + */ +bool early_transport_check(int debugfs_fd) +{ + char buf[PSR_STATUS_MAX_LEN]; + + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", buf, + sizeof(buf)); + + return strstr(buf, "enabled (Early Transport)"); +} + static bool psr_active_check(int debugfs_fd, enum psr_mode mode, igt_output_t *output) { char debugfs_file[128] = {0}; @@ -247,10 +260,16 @@ bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode, igt_output strstr(buf, "Sink support: yes [0x04]") || (strstr(line, "PSR = yes") && (strstr(line, "[0x03]") || strstr(line, "[0x04]"))); + case PSR_MODE_2_ET: + return strstr(buf, "Sink support: yes [0x04]") || + (strstr(line, "PSR = yes") && + strstr(line, "[0x04]")); case PR_MODE: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = no"); case PR_MODE_SEL_FETCH: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = yes"); + case PR_MODE_SEL_FETCH_ET: + return strstr(line, "Panel Replay Selective Update = yes (Early Transport)"); default: igt_assert_f(false, "Invalid psr mode\n"); return false; diff --git a/lib/igt_psr.h b/lib/igt_psr.h index e8595fd8c..a7ebd0739 100644 --- a/lib/igt_psr.h +++ b/lib/igt_psr.h @@ -35,8 +35,10 @@ enum psr_mode { PSR_MODE_1, PSR_MODE_2, PSR_MODE_2_SEL_FETCH, + PSR_MODE_2_ET, PR_MODE, PR_MODE_SEL_FETCH, + PR_MODE_SEL_FETCH_ET, PSR_DISABLED, }; @@ -47,6 +49,7 @@ enum fbc_mode { bool psr_disabled_check(int debugfs_fd); bool selective_fetch_check(int debugfs_fd, igt_output_t *output); +bool early_transport_check(int debugfs_fd); bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); -- 2.25.1 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-06-24 18:15 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B @ 2024-06-25 8:44 ` Hogander, Jouni 2024-06-25 10:55 ` Saarinen, Jani 1 sibling, 0 replies; 14+ messages in thread From: Hogander, Jouni @ 2024-06-25 8:44 UTC (permalink / raw) To: igt-dev@lists.freedesktop.org, B, Jeevan; +Cc: Konieczny, Kamil On Mon, 2024-06-24 at 23:45 +0530, Jeevan B wrote: > Added helper functions to check sink support for early transport and > check early transport active check. Reviewed-by: Jouni Högander <jouni.hogander@intel.com> > > v2: Add early trasport for PR and PSR2. > v3: Fix check strings. > v4: Add description to library function and correctstring logic. > > Signed-off-by: Jeevan B <jeevan.b@intel.com> > --- > lib/igt_psr.c | 19 +++++++++++++++++++ > lib/igt_psr.h | 3 +++ > 2 files changed, 22 insertions(+) > > diff --git a/lib/igt_psr.c b/lib/igt_psr.c > index 6008b73a6..dc85042b2 100644 > --- a/lib/igt_psr.c > +++ b/lib/igt_psr.c > @@ -53,6 +53,19 @@ bool selective_fetch_check(int debugfs_fd, > igt_output_t *output) > return strstr(buf, "PSR2 selective fetch: enabled"); > } > > +/* > + * Checks if Early Transport is enabled in PSR status by reading the > debugfs. > + */ > +bool early_transport_check(int debugfs_fd) > +{ > + char buf[PSR_STATUS_MAX_LEN]; > + > + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", > buf, > + sizeof(buf)); > + > + return strstr(buf, "enabled (Early Transport)"); > +} > + > static bool psr_active_check(int debugfs_fd, enum psr_mode mode, > igt_output_t *output) > { > char debugfs_file[128] = {0}; > @@ -247,10 +260,16 @@ bool psr_sink_support(int device, int > debugfs_fd, enum psr_mode mode, igt_output > strstr(buf, "Sink support: yes [0x04]") || > (strstr(line, "PSR = yes") && > (strstr(line, "[0x03]") || strstr(line, > "[0x04]"))); > + case PSR_MODE_2_ET: > + return strstr(buf, "Sink support: yes [0x04]") || > + (strstr(line, "PSR = yes") && > + strstr(line, "[0x04]")); > case PR_MODE: > return strstr(line, "Panel Replay = yes, Panel Replay > Selective Update = no"); > case PR_MODE_SEL_FETCH: > return strstr(line, "Panel Replay = yes, Panel Replay > Selective Update = yes"); > + case PR_MODE_SEL_FETCH_ET: > + return strstr(line, "Panel Replay Selective Update = > yes (Early Transport)"); > default: > igt_assert_f(false, "Invalid psr mode\n"); > return false; > diff --git a/lib/igt_psr.h b/lib/igt_psr.h > index e8595fd8c..a7ebd0739 100644 > --- a/lib/igt_psr.h > +++ b/lib/igt_psr.h > @@ -35,8 +35,10 @@ enum psr_mode { > PSR_MODE_1, > PSR_MODE_2, > PSR_MODE_2_SEL_FETCH, > + PSR_MODE_2_ET, > PR_MODE, > PR_MODE_SEL_FETCH, > + PR_MODE_SEL_FETCH_ET, > PSR_DISABLED, > }; > > @@ -47,6 +49,7 @@ enum fbc_mode { > > bool psr_disabled_check(int debugfs_fd); > bool selective_fetch_check(int debugfs_fd, igt_output_t *output); > +bool early_transport_check(int debugfs_fd); > bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t > *output); > bool psr_wait_update(int debugfs_fd, enum psr_mode mode, > igt_output_t *output); > bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, > igt_output_t *output); ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-06-24 18:15 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 2024-06-25 8:44 ` Hogander, Jouni @ 2024-06-25 10:55 ` Saarinen, Jani 1 sibling, 0 replies; 14+ messages in thread From: Saarinen, Jani @ 2024-06-25 10:55 UTC (permalink / raw) To: B, Jeevan, igt-dev@lists.freedesktop.org Cc: Hogander, Jouni, Konieczny, Kamil, B, Jeevan Hi, > -----Original Message----- > From: igt-dev <igt-dev-bounces@lists.freedesktop.org> On Behalf Of Jeevan B > Sent: Monday, 24 June 2024 21.16 > To: igt-dev@lists.freedesktop.org > Cc: Hogander, Jouni <jouni.hogander@intel.com>; Konieczny, Kamil > <kamil.konieczny@intel.com>; B, Jeevan <jeevan.b@intel.com> > Subject: [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport s/ transport/ transport > > Added helper functions to check sink support for early transport and check > early transport active check. > > v2: Add early trasport for PR and PSR2. Same here > v3: Fix check strings. > v4: Add description to library function and correctstring logic. > > Signed-off-by: Jeevan B <jeevan.b@intel.com> > --- > lib/igt_psr.c | 19 +++++++++++++++++++ > lib/igt_psr.h | 3 +++ > 2 files changed, 22 insertions(+) > > diff --git a/lib/igt_psr.c b/lib/igt_psr.c index 6008b73a6..dc85042b2 100644 > --- a/lib/igt_psr.c > +++ b/lib/igt_psr.c > @@ -53,6 +53,19 @@ bool selective_fetch_check(int debugfs_fd, > igt_output_t *output) > return strstr(buf, "PSR2 selective fetch: enabled"); } > > +/* > + * Checks if Early Transport is enabled in PSR status by reading the debugfs. > + */ > +bool early_transport_check(int debugfs_fd) { > + char buf[PSR_STATUS_MAX_LEN]; > + > + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", buf, > + sizeof(buf)); > + > + return strstr(buf, "enabled (Early Transport)"); } > + > static bool psr_active_check(int debugfs_fd, enum psr_mode mode, > igt_output_t *output) { > char debugfs_file[128] = {0}; > @@ -247,10 +260,16 @@ bool psr_sink_support(int device, int debugfs_fd, > enum psr_mode mode, igt_output > strstr(buf, "Sink support: yes [0x04]") || > (strstr(line, "PSR = yes") && > (strstr(line, "[0x03]") || strstr(line, "[0x04]"))); > + case PSR_MODE_2_ET: > + return strstr(buf, "Sink support: yes [0x04]") || > + (strstr(line, "PSR = yes") && > + strstr(line, "[0x04]")); > case PR_MODE: > return strstr(line, "Panel Replay = yes, Panel Replay Selective > Update = no"); > case PR_MODE_SEL_FETCH: > return strstr(line, "Panel Replay = yes, Panel Replay Selective > Update = yes"); > + case PR_MODE_SEL_FETCH_ET: > + return strstr(line, "Panel Replay Selective Update = yes (Early > +Transport)"); > default: > igt_assert_f(false, "Invalid psr mode\n"); > return false; > diff --git a/lib/igt_psr.h b/lib/igt_psr.h index e8595fd8c..a7ebd0739 100644 > --- a/lib/igt_psr.h > +++ b/lib/igt_psr.h > @@ -35,8 +35,10 @@ enum psr_mode { > PSR_MODE_1, > PSR_MODE_2, > PSR_MODE_2_SEL_FETCH, > + PSR_MODE_2_ET, > PR_MODE, > PR_MODE_SEL_FETCH, > + PR_MODE_SEL_FETCH_ET, > PSR_DISABLED, > }; > > @@ -47,6 +49,7 @@ enum fbc_mode { > > bool psr_disabled_check(int debugfs_fd); bool selective_fetch_check(int > debugfs_fd, igt_output_t *output); > +bool early_transport_check(int debugfs_fd); > bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t > *output); bool psr_wait_update(int debugfs_fd, enum psr_mode mode, > igt_output_t *output); bool psr_long_wait_update(int debugfs_fd, enum > psr_mode mode, igt_output_t *output); > -- > 2.25.1 ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH i-g-t 0/2] Early Transport Support @ 2024-06-20 4:33 Jeevan B 2024-06-20 4:33 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 0 siblings, 1 reply; 14+ messages in thread From: Jeevan B @ 2024-06-20 4:33 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, Jeevan B Add early trasport helper and checks to validate early trasport support on the supported display. Jeevan B (2): lib/igt_psr: Added library functions for early trasport tests/intel/kms_psr2_sf: Add checks for early transport lib/igt_psr.c | 14 ++++++++++++++ lib/igt_psr.h | 3 +++ tests/intel/kms_psr2_sf.c | 18 +++++++++++++++++- 3 files changed, 34 insertions(+), 1 deletion(-) -- 2.25.1 ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-06-20 4:33 [PATCH i-g-t 0/2] Early Transport Support Jeevan B @ 2024-06-20 4:33 ` Jeevan B 2024-06-20 14:05 ` Kamil Konieczny 0 siblings, 1 reply; 14+ messages in thread From: Jeevan B @ 2024-06-20 4:33 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, Jeevan B Added helper functions to check sink support for early transport and check early transport active check. v2: Add early trasport for PR and PSR2. v3: Fix check strings. Signed-off-by: Jeevan B <jeevan.b@intel.com> --- lib/igt_psr.c | 14 ++++++++++++++ lib/igt_psr.h | 3 +++ 2 files changed, 17 insertions(+) diff --git a/lib/igt_psr.c b/lib/igt_psr.c index 6008b73a6..c170d8ca8 100644 --- a/lib/igt_psr.c +++ b/lib/igt_psr.c @@ -53,6 +53,16 @@ bool selective_fetch_check(int debugfs_fd, igt_output_t *output) return strstr(buf, "PSR2 selective fetch: enabled"); } +bool early_transport_check(int debugfs_fd) +{ + char buf[PSR_STATUS_MAX_LEN]; + + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", buf, + sizeof(buf)); + + return strstr(buf, "enabled (Early Transport)"); +} + static bool psr_active_check(int debugfs_fd, enum psr_mode mode, igt_output_t *output) { char debugfs_file[128] = {0}; @@ -247,10 +257,14 @@ bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode, igt_output strstr(buf, "Sink support: yes [0x04]") || (strstr(line, "PSR = yes") && (strstr(line, "[0x03]") || strstr(line, "[0x04]"))); + case PSR_MODE_2_ET: + return strstr(buf, "Sink support: yes [0x04]"); case PR_MODE: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = no"); case PR_MODE_SEL_FETCH: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = yes"); + case PR_MODE_SEL_FETCH_ET: + return strstr(line, "Panel Replay Selective Update = yes (Early Transport)"); default: igt_assert_f(false, "Invalid psr mode\n"); return false; diff --git a/lib/igt_psr.h b/lib/igt_psr.h index e8595fd8c..a7ebd0739 100644 --- a/lib/igt_psr.h +++ b/lib/igt_psr.h @@ -35,8 +35,10 @@ enum psr_mode { PSR_MODE_1, PSR_MODE_2, PSR_MODE_2_SEL_FETCH, + PSR_MODE_2_ET, PR_MODE, PR_MODE_SEL_FETCH, + PR_MODE_SEL_FETCH_ET, PSR_DISABLED, }; @@ -47,6 +49,7 @@ enum fbc_mode { bool psr_disabled_check(int debugfs_fd); bool selective_fetch_check(int debugfs_fd, igt_output_t *output); +bool early_transport_check(int debugfs_fd); bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); -- 2.25.1 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-06-20 4:33 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B @ 2024-06-20 14:05 ` Kamil Konieczny 0 siblings, 0 replies; 14+ messages in thread From: Kamil Konieczny @ 2024-06-20 14:05 UTC (permalink / raw) To: igt-dev; +Cc: Jeevan B, jouni.hogander Hi Jeevan, On 2024-06-20 at 10:03:40 +0530, Jeevan B wrote: > Added helper functions to check sink support for early transport and > check early transport active check. > > v2: Add early trasport for PR and PSR2. > v3: Fix check strings. > > Signed-off-by: Jeevan B <jeevan.b@intel.com> > --- > lib/igt_psr.c | 14 ++++++++++++++ > lib/igt_psr.h | 3 +++ > 2 files changed, 17 insertions(+) > > diff --git a/lib/igt_psr.c b/lib/igt_psr.c > index 6008b73a6..c170d8ca8 100644 > --- a/lib/igt_psr.c > +++ b/lib/igt_psr.c > @@ -53,6 +53,16 @@ bool selective_fetch_check(int debugfs_fd, igt_output_t *output) > return strstr(buf, "PSR2 selective fetch: enabled"); > } > Add description to each public library function. Regards, Kamil > +bool early_transport_check(int debugfs_fd) > +{ > + char buf[PSR_STATUS_MAX_LEN]; > + > + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", buf, > + sizeof(buf)); > + > + return strstr(buf, "enabled (Early Transport)"); > +} > + > static bool psr_active_check(int debugfs_fd, enum psr_mode mode, igt_output_t *output) > { > char debugfs_file[128] = {0}; > @@ -247,10 +257,14 @@ bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode, igt_output > strstr(buf, "Sink support: yes [0x04]") || > (strstr(line, "PSR = yes") && > (strstr(line, "[0x03]") || strstr(line, "[0x04]"))); > + case PSR_MODE_2_ET: > + return strstr(buf, "Sink support: yes [0x04]"); > case PR_MODE: > return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = no"); > case PR_MODE_SEL_FETCH: > return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = yes"); > + case PR_MODE_SEL_FETCH_ET: > + return strstr(line, "Panel Replay Selective Update = yes (Early Transport)"); > default: > igt_assert_f(false, "Invalid psr mode\n"); > return false; > diff --git a/lib/igt_psr.h b/lib/igt_psr.h > index e8595fd8c..a7ebd0739 100644 > --- a/lib/igt_psr.h > +++ b/lib/igt_psr.h > @@ -35,8 +35,10 @@ enum psr_mode { > PSR_MODE_1, > PSR_MODE_2, > PSR_MODE_2_SEL_FETCH, > + PSR_MODE_2_ET, > PR_MODE, > PR_MODE_SEL_FETCH, > + PR_MODE_SEL_FETCH_ET, > PSR_DISABLED, > }; > > @@ -47,6 +49,7 @@ enum fbc_mode { > > bool psr_disabled_check(int debugfs_fd); > bool selective_fetch_check(int debugfs_fd, igt_output_t *output); > +bool early_transport_check(int debugfs_fd); > bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t *output); > bool psr_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); > bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); > -- > 2.25.1 > ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH i-g-t 0/2] Early Transport Support @ 2024-06-12 11:06 Jeevan B 2024-06-12 11:06 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 0 siblings, 1 reply; 14+ messages in thread From: Jeevan B @ 2024-06-12 11:06 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, Jeevan B Add early trasport helper and checks to validate early trasport support on the supported display. Jeevan B (2): lib/igt_psr: Added library functions for early trasport tests/intel/kms_psr2_sf: Add checks for early transport lib/igt_psr.c | 15 +++++++++++++++ lib/igt_psr.h | 3 +++ tests/intel/kms_psr2_sf.c | 18 +++++++++++++++++- 3 files changed, 35 insertions(+), 1 deletion(-) -- 2.25.1 ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-06-12 11:06 [PATCH i-g-t 0/2] Early Transport Support Jeevan B @ 2024-06-12 11:06 ` Jeevan B 2024-06-13 10:24 ` Hogander, Jouni 0 siblings, 1 reply; 14+ messages in thread From: Jeevan B @ 2024-06-12 11:06 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, Jeevan B Added helper functions to check sink support for early transport and check early transport active check. v2: Add early trasport for PR and PSR2. Signed-off-by: Jeevan B <jeevan.b@intel.com> --- lib/igt_psr.c | 15 +++++++++++++++ lib/igt_psr.h | 3 +++ 2 files changed, 18 insertions(+) diff --git a/lib/igt_psr.c b/lib/igt_psr.c index 6008b73a6..b1ca57201 100644 --- a/lib/igt_psr.c +++ b/lib/igt_psr.c @@ -53,6 +53,16 @@ bool selective_fetch_check(int debugfs_fd, igt_output_t *output) return strstr(buf, "PSR2 selective fetch: enabled"); } +bool early_transport_check(int debugfs_fd) +{ + char buf[PSR_STATUS_MAX_LEN]; + + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", buf, + sizeof(buf)); + + return strstr(buf, "(Early Transport)"); +} + static bool psr_active_check(int debugfs_fd, enum psr_mode mode, igt_output_t *output) { char debugfs_file[128] = {0}; @@ -247,10 +257,15 @@ bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode, igt_output strstr(buf, "Sink support: yes [0x04]") || (strstr(line, "PSR = yes") && (strstr(line, "[0x03]") || strstr(line, "[0x04]"))); + case PSR_MODE_2_ET: + return strstr(buf, "Sink support: yes [0x04]") && + (strstr(line, "PSR2 (Early Trasport)") || strstr(line, "[0x04]")); case PR_MODE: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = no"); case PR_MODE_SEL_FETCH: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = yes"); + case PR_MODE_SEL_FETCH_ET: + return strstr(line, "Panel Replay Selective Update enabled (Early Trasport)"); default: igt_assert_f(false, "Invalid psr mode\n"); return false; diff --git a/lib/igt_psr.h b/lib/igt_psr.h index e8595fd8c..a7ebd0739 100644 --- a/lib/igt_psr.h +++ b/lib/igt_psr.h @@ -35,8 +35,10 @@ enum psr_mode { PSR_MODE_1, PSR_MODE_2, PSR_MODE_2_SEL_FETCH, + PSR_MODE_2_ET, PR_MODE, PR_MODE_SEL_FETCH, + PR_MODE_SEL_FETCH_ET, PSR_DISABLED, }; @@ -47,6 +49,7 @@ enum fbc_mode { bool psr_disabled_check(int debugfs_fd); bool selective_fetch_check(int debugfs_fd, igt_output_t *output); +bool early_transport_check(int debugfs_fd); bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); -- 2.25.1 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-06-12 11:06 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B @ 2024-06-13 10:24 ` Hogander, Jouni 0 siblings, 0 replies; 14+ messages in thread From: Hogander, Jouni @ 2024-06-13 10:24 UTC (permalink / raw) To: igt-dev@lists.freedesktop.org, B, Jeevan On Wed, 2024-06-12 at 16:36 +0530, Jeevan B wrote: > Added helper functions to check sink support for early transport and > check early transport active check. > > v2: Add early trasport for PR and PSR2. > > Signed-off-by: Jeevan B <jeevan.b@intel.com> > --- > lib/igt_psr.c | 15 +++++++++++++++ > lib/igt_psr.h | 3 +++ > 2 files changed, 18 insertions(+) > > diff --git a/lib/igt_psr.c b/lib/igt_psr.c > index 6008b73a6..b1ca57201 100644 > --- a/lib/igt_psr.c > +++ b/lib/igt_psr.c > @@ -53,6 +53,16 @@ bool selective_fetch_check(int debugfs_fd, > igt_output_t *output) > return strstr(buf, "PSR2 selective fetch: enabled"); > } > > +bool early_transport_check(int debugfs_fd) > +{ > + char buf[PSR_STATUS_MAX_LEN]; > + > + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", > buf, > + sizeof(buf)); > + > + return strstr(buf, "(Early Transport)"); > +} If this is checking that Early Transport is enabled you should do: return strstr(buf, "enabled (Early Transport)"); That works for: PSR mode: PSR2 enabled (Early Transport) and PSR mode: Panel Replay Selective Update enabled (Early Transport) > + > static bool psr_active_check(int debugfs_fd, enum psr_mode mode, > igt_output_t *output) > { > char debugfs_file[128] = {0}; > @@ -247,10 +257,15 @@ bool psr_sink_support(int device, int > debugfs_fd, enum psr_mode mode, igt_output > strstr(buf, "Sink support: yes [0x04]") || > (strstr(line, "PSR = yes") && > (strstr(line, "[0x03]") || strstr(line, > "[0x04]"))); > + case PSR_MODE_2_ET: > + return strstr(buf, "Sink support: yes [0x04]") && > + (strstr(line, "PSR2 (Early Trasport)") || If this is checking if sink support PSR2 Early Transport: strstr(buf, "Sink support: yes [0x04]") is enough > strstr(line, "[0x04]")); > case PR_MODE: > return strstr(line, "Panel Replay = yes, Panel Replay > Selective Update = no"); > case PR_MODE_SEL_FETCH: > return strstr(line, "Panel Replay = yes, Panel Replay > Selective Update = yes"); > + case PR_MODE_SEL_FETCH_ET: > + return strstr(line, "Panel Replay Selective Update > enabled (Early Trasport)"); If this is checking sink support. "Panel Replay Selective Update enabled (Early Trasport)" means it's enabled. Instead: return strstr(line, "Panel Replay Selective Update = yes (Early Transport)"); checks if supported by sink. BR, Jouni Högander > default: > igt_assert_f(false, "Invalid psr mode\n"); > return false; > diff --git a/lib/igt_psr.h b/lib/igt_psr.h > index e8595fd8c..a7ebd0739 100644 > --- a/lib/igt_psr.h > +++ b/lib/igt_psr.h > @@ -35,8 +35,10 @@ enum psr_mode { > PSR_MODE_1, > PSR_MODE_2, > PSR_MODE_2_SEL_FETCH, > + PSR_MODE_2_ET, > PR_MODE, > PR_MODE_SEL_FETCH, > + PR_MODE_SEL_FETCH_ET, > PSR_DISABLED, > }; > > @@ -47,6 +49,7 @@ enum fbc_mode { > > bool psr_disabled_check(int debugfs_fd); > bool selective_fetch_check(int debugfs_fd, igt_output_t *output); > +bool early_transport_check(int debugfs_fd); > bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t > *output); > bool psr_wait_update(int debugfs_fd, enum psr_mode mode, > igt_output_t *output); > bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, > igt_output_t *output); ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH i-g-t 0/2] Early Transport Support @ 2024-05-20 9:46 Jeevan B 2024-05-20 9:46 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 0 siblings, 1 reply; 14+ messages in thread From: Jeevan B @ 2024-05-20 9:46 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, Jeevan B Add early trasport helper and checks to validate early trasport support on the supported display. Jeevan B (2): lib/igt_psr: Added library functions for early trasport tests/intel/kms_psr2_sf: Add checks for early transport lib/igt_psr.c | 13 +++++++++++++ lib/igt_psr.h | 2 ++ tests/intel/kms_psr2_sf.c | 3 +++ 3 files changed, 18 insertions(+) -- 2.25.1 ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-05-20 9:46 [PATCH i-g-t 0/2] Early Transport Support Jeevan B @ 2024-05-20 9:46 ` Jeevan B 2024-05-31 6:54 ` Hogander, Jouni 0 siblings, 1 reply; 14+ messages in thread From: Jeevan B @ 2024-05-20 9:46 UTC (permalink / raw) To: igt-dev; +Cc: jouni.hogander, Jeevan B Added helper functions to check sink support for early transport and check early transport active check. Signed-off-by: Jeevan B <jeevan.b@intel.com> --- lib/igt_psr.c | 13 +++++++++++++ lib/igt_psr.h | 2 ++ 2 files changed, 15 insertions(+) diff --git a/lib/igt_psr.c b/lib/igt_psr.c index 6008b73a6..8dc6b9b78 100644 --- a/lib/igt_psr.c +++ b/lib/igt_psr.c @@ -53,6 +53,16 @@ bool selective_fetch_check(int debugfs_fd, igt_output_t *output) return strstr(buf, "PSR2 selective fetch: enabled"); } +bool psr2_early_transport_check(int debugfs_fd) +{ + char buf[PSR_STATUS_MAX_LEN]; + + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", buf, + sizeof(buf)); + + return strstr(buf, "PSR2 Early Transport: enabled"); +} + static bool psr_active_check(int debugfs_fd, enum psr_mode mode, igt_output_t *output) { char debugfs_file[128] = {0}; @@ -249,6 +259,9 @@ bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode, igt_output (strstr(line, "[0x03]") || strstr(line, "[0x04]"))); case PR_MODE: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = no"); + case ET_MODE: + return strstr(buf, "Sink support: yes [0x04]") || + (strstr(line, "PSR = yes") && strstr(line, "Early Transport = yes")); case PR_MODE_SEL_FETCH: return strstr(line, "Panel Replay = yes, Panel Replay Selective Update = yes"); default: diff --git a/lib/igt_psr.h b/lib/igt_psr.h index e8595fd8c..23f4dd35b 100644 --- a/lib/igt_psr.h +++ b/lib/igt_psr.h @@ -37,6 +37,7 @@ enum psr_mode { PSR_MODE_2_SEL_FETCH, PR_MODE, PR_MODE_SEL_FETCH, + ET_MODE, PSR_DISABLED, }; @@ -47,6 +48,7 @@ enum fbc_mode { bool psr_disabled_check(int debugfs_fd); bool selective_fetch_check(int debugfs_fd, igt_output_t *output); +bool psr2_early_transport_check(int debugfs_fd); bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output); -- 2.25.1 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport 2024-05-20 9:46 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B @ 2024-05-31 6:54 ` Hogander, Jouni 0 siblings, 0 replies; 14+ messages in thread From: Hogander, Jouni @ 2024-05-31 6:54 UTC (permalink / raw) To: igt-dev@lists.freedesktop.org, B, Jeevan On Mon, 2024-05-20 at 15:16 +0530, Jeevan B wrote: > Added helper functions to check sink support for early transport and > check early transport active check. > > Signed-off-by: Jeevan B <jeevan.b@intel.com> > --- > lib/igt_psr.c | 13 +++++++++++++ > lib/igt_psr.h | 2 ++ > 2 files changed, 15 insertions(+) > > diff --git a/lib/igt_psr.c b/lib/igt_psr.c > index 6008b73a6..8dc6b9b78 100644 > --- a/lib/igt_psr.c > +++ b/lib/igt_psr.c > @@ -53,6 +53,16 @@ bool selective_fetch_check(int debugfs_fd, > igt_output_t *output) > return strstr(buf, "PSR2 selective fetch: enabled"); > } > > +bool psr2_early_transport_check(int debugfs_fd) > +{ > + char buf[PSR_STATUS_MAX_LEN]; > + > + igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", > buf, > + sizeof(buf)); > + > + return strstr(buf, "PSR2 Early Transport: enabled"); Current plan is to have (https://patchwork.freedesktop.org/patch/596084/?series=134181&rev=1): PSR mode: Panel Replay Selective Update enabled (Early Transport) and PSR mode: PSR2 (Early Transport) > +} > + > staPSR mode: tic bool psr_active_check(int debugfs_fd, enum psr_mode > mode, igt_output_t *output) > { > char debugfs_file[128] = {0}; > @@ -249,6 +259,9 @@ bool psr_sink_support(int device, int debugfs_fd, > enum psr_mode mode, igt_output > (strstr(line, "[0x03]") || strstr(line, > "[0x04]"))); > case PR_MODE: > return strstr(line, "Panel Replay = yes, Panel Replay > Selective Update = no"); > + case ET_MODE: > + return strstr(buf, "Sink support: yes [0x04]") || > + (strstr(line, "PSR = yes") && > strstr(line, "Early Transport = yes")); Early transport is not only for PSR, but Panel Replay as well. BR, Jouni Högander > case PR_MODE_SEL_FETCH: > return strstr(line, "Panel Replay = yes, Panel Replay > Selective Update = yes"); > default: > diff --git a/lib/igt_psr.h b/lib/igt_psr.h > index e8595fd8c..23f4dd35b 100644 > --- a/lib/igt_psr.h > +++ b/lib/igt_psr.h > @@ -37,6 +37,7 @@ enum psr_mode { > PSR_MODE_2_SEL_FETCH, > PR_MODE, > PR_MODE_SEL_FETCH, > + ET_MODE, > PSR_DISABLED, > }; > > @@ -47,6 +48,7 @@ enum fbc_mode { > > bool psr_disabled_check(int debugfs_fd); > bool selective_fetch_check(int debugfs_fd, igt_output_t *output); > +bool psr2_early_transport_check(int debugfs_fd); > bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t > *output); > bool psr_wait_update(int debugfs_fd, enum psr_mode mode, > igt_output_t *output); > bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, > igt_output_t *output); ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2024-06-25 10:55 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-06-24 9:19 [PATCH i-g-t 0/2] Early Transport Support Jeevan B 2024-06-24 9:19 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 2024-06-24 9:19 ` [PATCH i-g-t 2/2] tests/intel/kms_psr2_sf: Add checks for early transport Jeevan B 2024-06-24 13:07 ` ✗ Fi.CI.BUILD: failure for Early Transport Support (rev4) Patchwork 2024-06-24 13:10 ` ✗ GitLab.Pipeline: warning " Patchwork -- strict thread matches above, loose matches on Subject: below -- 2024-06-24 18:15 [PATCH i-g-t 0/2] Early Transport Support Jeevan B 2024-06-24 18:15 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 2024-06-25 8:44 ` Hogander, Jouni 2024-06-25 10:55 ` Saarinen, Jani 2024-06-20 4:33 [PATCH i-g-t 0/2] Early Transport Support Jeevan B 2024-06-20 4:33 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 2024-06-20 14:05 ` Kamil Konieczny 2024-06-12 11:06 [PATCH i-g-t 0/2] Early Transport Support Jeevan B 2024-06-12 11:06 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 2024-06-13 10:24 ` Hogander, Jouni 2024-05-20 9:46 [PATCH i-g-t 0/2] Early Transport Support Jeevan B 2024-05-20 9:46 ` [PATCH i-g-t 1/2] lib/igt_psr: Added library functions for early trasport Jeevan B 2024-05-31 6:54 ` Hogander, Jouni
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox