- Aug 28, 2019
-
-
Oleg Vasilev authored
Currently, the containers are used only to build IGT. We also want to have an option to run IGT inside a container. For this, new build stage is added. Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com>
-
Oleg Vasilev authored
Since different images can be present at the same time, it is better to always use the one built for this particular git reference. Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com> V3: - Change $CI_COMMIT_REF_NAME to commit-$CI_COMMIT_SHA Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com>
-
Oleg Vasilev authored
Base images rarely change, there is not much sense in rebuilding it on every commit. GitLab already has mechanism for detecting such changes. However, it is only able to prevent rebuilding whenever there is no changes within the same ref. Since in our CI system, git tag is created on every series, the mechanism doesn't work. One possible way to workaround that is to compute a checksum of a Dockerfile, and rebuilding only if there was no image built with the same checksum. V2: - Rename gitlab-ci to .gitlab-ci (Arek) - Add commit-$CI_COMMIT_SHA Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com>
-
Oleg Vasilev authored
Dockerfile.build-* is consistent with build-* naming. Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com>
-
Oleg Vasilev authored
igt-* better suits for containers which contain IGT inside, while build-* is better for containers which are used to build IGT. Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com>
-
Oleg Vasilev authored
No functional changes. This order is consistent with the order of execution stages. Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com>
-
- Aug 26, 2019
-
-
Simon Ser authored
Comments say that a connector can only be forced if it's disconnected. This was a wrong assumption which has been fixed, but the comments went out of sync. Fixes: dc3a0934 ("tests/kms_hdmi_inject: Accept any HDMI connector") Signed-off-by:
Simon Ser <simon.ser@intel.com> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by:
Ville Syrjälä <ville.syrjala@linux.intel.com>
-
- Aug 23, 2019
-
-
Jani Nikula authored
We were missing the level and control method. Reviewed-by:
Simon Ser <simon.ser@intel.com> Signed-off-by:
Jani Nikula <jani.nikula@intel.com>
-
Jani Nikula authored
Similar to other panel type indexed arrays. Reviewed-by:
Simon Ser <simon.ser@intel.com> Signed-off-by:
Jani Nikula <jani.nikula@intel.com>
-
- Aug 22, 2019
-
-
Chris Wilson authored
The test assumes that the dmabuf for the batch buffer has no exclusive fence. This is only true for the batch as it executes on the GPU; prior to that we may be in the process of moving it into memory and the ppGTT which cause the batch to carry an exclusive fence. Keep the test simple and prebind the batch buffer so that when we poll the dmabuf fd, we only expect it to be the spinning batch. Alternatively we could wait until we start writing values into scratch (i.e. igt_spin_busywait_until_started()). This seemed simpler. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Matthew Auld <matthew.auld@intel.com> Acked-by:
Matthew Auld <matthew.auld@intel.com>
-
Jani Nikula authored
e points into the buffer pointed to by p. Fixes: dfda0b6a ("intel_reg: introduce one intel_reg tool to rule them all") Reviewed-by:
Simon Ser <simon.ser@intel.com> Signed-off-by:
Jani Nikula <jani.nikula@intel.com>
-
- Aug 20, 2019
-
-
Imre Deak authored
The available range reported by the driver is the inclusive [min_bpc, max_bpc], so fix the upper bound used by the test accordingly. This issue had the side-effect (on ICL for instance) of limiting 'max bpc' to 10 (instead of restoring it to the default 12) for all the tests following kms_properties, as seen from the logs in the referenced bug below. Reference: https://bugs.freedesktop.org/show_bug.cgi?id=109593 Cc: Radhakrishna Sripada <radhakrishna.sripada@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Simon Ser <simon.ser@intel.com>
-
Chris Wilson authored
If we try to idle while another thread is submitting, we will be forced to wait until that other thread is finished -- effectively serialising the parallel workloads, defeating said purpose. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Stuart Summers <stuart.summers@intel.com>
-
Arkadiusz Hiler authored
Getting network back after waking up from suspend takes some time. If it's not quick enough, it may cause any following chamelium_rpc to fail. This includes the chamelium port reset in exit handler: igt_chamelium-CRITICAL: Test assertion failure function chamelium_rpc, file ../lib/igt_chamelium.c:349: igt_chamelium-CRITICAL: Failed assertion: !chamelium->env.fault_occurred igt_chamelium-CRITICAL: Last errno: 113, No route to host igt_chamelium-CRITICAL: Chamelium RPC call failed: libcurl failed to execute the HTTP POST transaction, explaining: Failed to connect to 192.168.1.224 port 9992: No route to host Stack trace: #0 ../lib/igt_core.c:1674 __igt_fail_assert() #1 [chamelium_rpc+0x1ea] #2 ../lib/igt_chamelium.c:2274 chamelium_reset() #3 ../lib/igt_chamelium.c:2361 chamelium_deinit() #4 ../lib/igt_core.c:2124 call_exit_handlers() So let's wait for Chamelium to be reachable after each suspend_autoresume. v2: Bump the network timeout to 20s, the slowest observed bring-up was 17s. (Petri) Do not DECREF if we get NULL from __chmelium_rpc(). (Simon & CI) Cc: Simon Ser <simon.ser@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109380 Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Simon Ser <simon.ser@intel.com>
-
dmabuf_selftests has been recently added to the test list but not added to the special handling in igt_command_line.sh and therefore build testing would fail. Signed-off-by:
Antonio Argenziano <antonio.argenziano@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> [Fixed syntax error and test name] Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
- Aug 19, 2019
-
-
Chris Wilson authored
Just a plain igt_kmod() wrapper for dmabuf_seltests.ko Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Acked-by:
Daniel Vetter <daniel.vetter@ffwll.ch>
-
Nicholas Kazlauskas authored
The kms_plane_multiple@* tests fail on amdgpu with a dmesg-warn due to "atomic remove_fb failed with -22" "WARNING: CPU: 6 PID: 183 at drivers/gpu/drm/drm_framebuffer.c:986" The call to drmModeRmFB essentially creates an atomic commit internally when we drop the last reference to the FB in IGT. This commit disables the plane associated with framebuffer. Since the planes are iterated by increasing index in IGT the last plane to have its framebuffer removed is the cursor plane on AMDGPU. On AMDGPU we can't enable the cursor plane without any active hardware planes (primary, overlay) since there is no dedicated cursor plane. The commits to release the overlay plane fail since it's the last remaining plane and the cursor plane is still active. The fix to the test is to just perform a commit that disables all 3 planes at the same time before calling remove_fb. This improves performance enables support for drivers that don't support cursor planes being enabled without a primary or overlay. Signed-off-by:
Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Reviewed-by:
Leo Li <sunpeng.li@amd.com>
-
The test was introduced in earlier series, but was only added to meson test list. Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com> Cc: Simon Ser <simon.ser@intel.com> Fixes: 93129f55 ("tests/kms_prime: add vendor-agnostic kms prime tests") Reviewed-by:
Simon Ser <simon.ser@intel.com>
-
Simon Ser authored
test_edid_read sets an EDID on a port, plugs it and reads it back. Sometimes retrieving the blob fails. Check whether the blob is set at all before trying to get it. This makes it obvious it's not drmModeGetPropertyBlob failing for another reason. Signed-off-by:
Simon Ser <simon.ser@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106766 Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Currently, there are different sets of prime tests: - vgem + i915 - amdgpu + i915 - nouveau + i915 The idea is to create a set of tests which are expected to work on any prime-compatible driver. It can be run with any combination of exporter + importer, while those devices have respective prime capabilities. In order to be vendor-agnostic, tests should use generic KMS API. Since vgem can be used as both exporter and importer, and there aren't any generic kms features which vgem doesn't support, it is sufficient to test vgem as exporter with any other KMS driver. The first test is simple: 1. Exporter creates a dumb FB and fills it with a plain color 2. FB is transferred to the importer 3. Importer modesets and computes pipe CRC 4. Importer draws the same color through cairo and compares CRC The initial motivation comes from the need to test prime support in vkms. V2: - Chris: rename the file - Simon: memory hygiene, codestyle Acked-by:
Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by:
Simon Ser <simon.ser@intel.com> Cc: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Cc: Daniel Vetter <daniel@ffwll.ch> Cc: Simon Ser <daniel@ffwll.ch> Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com>
-
Make it public. Signed-off-by:
Oleg Vasilev <oleg.vasilev@intel.com> Reviewed-by:
Simon Ser <simon.ser@intel.com>
-
Chris Wilson authored
To run the independent subtests requires to issue the requests not-in-submission order, we need a scheduler. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
- Aug 15, 2019
-
-
Simon Ser authored
This test generates an EDID with support for modes tied to a specific aspect ratio. It then plugs a connector with this EDID and iterates the list of modes to find the one with the expected aspect ratio flag. The connector is then enabled and the Chamelium board is used to capture the AVI InfoFrame. The InfoFrame fields are then checked. To advertise support for a mode with a specific aspect ratio, sinks add Video Identification Codes in the CEA extension. The VIC chosen by the source is contained in the AVI InfoFrame. The InfoFrame also contains a picture aspect ratio field, but it's only able to indicate whether the aspect ratio is 16:9 or 4:3. For now the test is only enabled for HDMI. I've tried to make it work on DP too, but after reading the kernel code it seems like we don't support AVI InfoFrames on DP. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
This commit adds partial support for AVI InfoFrames. Only bytes 1 and 2 of the InfoFrame payload are parsed. These bytes contain (among other things) information about the aspect ratio of the frames. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
This commit adds an error message to connector status assertions. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
Explicit Chamelium port mappings are now optional. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
This makes it easier to tell the code block apart from the rest of the document. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
GCC doesn't seem smart enough to figure out that everything is fine. Let's just initialize the variable to silence the warning. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
This test first checks that on normal hotplug, the link-status property is set to GOOD. It then triggers a link failure, checks that the property is updated to BAD. Checks are performed to make sure the new mode list is a subset of the previous one. After that, a new modeset is performed if necessary and the link-status property is set back to GOOD. This whole dance is repeated until we reach fallback modes. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Manasi Navare <manasi.d.navare@intel.com>
-
Simon Ser authored
This patch simply adds link-status to our list of properties. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Manasi Navare <manasi.d.navare@intel.com>
-
Simon Ser authored
This new function triggers a link failure on the provided port. Another function called chamelium_supports_trigger_link_failure has been added to check whether the Chamelium board supports the new method. Support for TriggerLinkFailure in Chamelium has been added in [1]. [1]: https://chromium.googlesource.com/chromiumos/platform/chameleon/+/44866c7bc2af44da1f7bac4e782d0ed6d7c1400a Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
Callers no longer need to call edid_ext_update_cea_checksum on each extension block. This makes it less error-prone to miss one block by mistake. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
This array is filled manually, some bytes might have the MSB set. This fixes the following warning: ../lib/igt_kms.c:357:18: warning: implicit conversion from 'int' to 'char' changes value from 128 to -128 [-Wconstant-conversion] hdmi->data[0] = HDMI_VSDB_VIDEO_3D_PRESENT; /* HDMI video flags */ ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
EDID_LENGTH is misleading because EDIDs are a variable size (they contain one or more 128-byte EDID blocks). This commit renames it to EDID_BLOCK_SIZE which makes it clear users need to call edid_get_size to get the total size. The declaration has also been moved to igt_edid. ("Size" has been chosen over "length" because it's clearer that it's a number of bytes, not a number of elements) Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Simon Ser authored
This has several advantages: * No more need to convert back and forth between these two (everybody should use struct edid, the exception being lib/tests/igt_edid which performs sanity checks) * Makes it clearer that users can call edid_get_size on a returned EDID blob * Improves type safety (it's more obvious is a random blob is used as an EDID) Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
- Aug 14, 2019
-
-
Simon Ser authored
If the DUT sends an InfoFrame, check that its values are correct. Per the HDMI and DP specs, most of the fields can be set to "refer to stream header" because some information is duplicated. The DP spec also says that InfoFrames are optional if mono or stereo audio is used (because there's no channel speaker allocation). Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Martin Peres <martin.peres@linux.intel.com>
-
Simon Ser authored
This new call retrieves the last InfoFrame received by the Chamelium board. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Martin Peres <martin.peres@linux.intel.com>
-
Simon Ser authored
This commit introduces a new igt_infoframe library, used to parse InfoFrames. For now only audio InfoFrames are supported. Support for AVI and other types of InfoFrames is planned (and will come with the matching tests). Unlike igt_edid, InfoFrames are parsed into a higher-level user-friendly struct. Signed-off-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Martin Peres <martin.peres@linux.intel.com>
-
At the start of every test, reset HDCP state to UNDESIRED on all connectors, so that we will not have any hdcp related noises in the subsequent tests. v2: igt_output_set_prop_enum is used. Documentation of display_reset is updated. Signed-off-by:
Ramalingam C <ramalingam.c@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111390 Reviewed-by:
Simon Ser <simon.ser@intel.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
- Aug 13, 2019
-
-
Chris Wilson authored
Still trying to hit a deadlock with userptr from kcompatcd. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Reveiwed-by:
Andi Shyti <andi.shyti@intel.com>
-