summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2022-07-01tests/i915/kms_flip_scaled_crc: Add new tests covering modifiers and ↵Swati Sharma
pixel-formats New test cases are added covering various modifiers and pixel-formats. v2: fixed typo Signed-off-by: Swati Sharma <swati2.sharma@intel.com> Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com>
2022-07-01tests/i915/kms_flip_scaled_crc: Convert tests to dynamicSwati Sharma
Convert the existing subtests to dynamic subtests at pipe/output level. v2: Refactored code in such a manner that once test has been run successfully on chosen pipe that pipe will not be tested again as this test is testing pipe feature. No need to run separately for each connector using all pipes. v3: Changed seq to avoid modetoset as a dangling ptr v4: On eDP 1080p with 144Hz vrefresh, test fails with cdclk lim, however it passes with 90Hz vrefresh. Added the check to handle this scenario. v5: Minor fixes Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Swati Sharma <swati2.sharma@intel.com> Acked-by: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
2022-06-30tests/i915/capture: handle uapi changesMatthew Auld
We should mark the objects that need to be captured with NEEDS_CPU_ACCESS to ensure we can capture them if they are allocated in lmem. We also need to consider that capture only properly works on non-recoverable context, for discrete platforms. We can now also expect CPU invisible objects to be skipped, for now at least. v2: try to make it backwards compat Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
2022-06-30tests/i915/query: sanity check the unallocated trackingMatthew Auld
Sanity both the unallocated_size & unallocated_cpu_visible_size tracking. v2(Petri): always use from_user_pointer() v3: Make it play nice on older kernels Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
2022-06-30tests/i915/query: sanity check the probed_cpu_visible_sizeMatthew Auld
Add some basic sanity checks for this, like checking if this falls within the probed_size. On older kernels the value reported here should be zero. Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
2022-06-30lib/i915: add gem_create_with_cpu_access_in_memory_regionsMatthew Auld
Most users shouldn't care about such an interface, but where required, this should be useful to aid in setting NEEDS_CPU_ACCESS for a given BO. Underneath we try to smooth over needing to provide an explicit SMEM region, or if this is SMEM-only, we don't want the kernel to throw an error. Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
2022-06-30tests/i915/gem_create: exercise NEEDS_CPU_ACCESSMatthew Auld
Add some basic tests for this new flag. Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
2022-06-30lib/i915: wire up optional flags for gem_create_extMatthew Auld
For now limit to direct callers. Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
2022-06-30tests/kms_pipe_crc_basic: Avoid skips in dynamic subtetsBhanuprakash Modem
Instead of Skipping the dynamic subtest, just don't trigger the test. Cc: Swati Sharma <swati2.sharma@intel.com> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-29tests/i915/gem_exec_fence : Add subtests descriptionJanga Rahul Kumar
Add test description for below subtests: basic-busy-all, basic-wait-all, busy-hang-all, wait-hang-all, basic-busy, basic-wait, basic-await, nb-await. v2 : Modified subtests description. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-29i915/gem_softpin: Added test description for test case.Sai Gowtham Ch
Added test description for test and to all the subtests that are available. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Sai Gowtham Ch <sai.gowtham.ch@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-28tests/i915/kms_mmap_write_crc: handle missing gem_get_caching()Matthew Auld
The kernel is meant to force the caching level for the object to CACHE_NONE or CACHE_WT when first scanning out the object, since the display engine is not coherent (assuming userspace hasn't already done this). On discrete we no longer support set/get_caching, but we can only do the scanout from lmem, which can only be mapped as WC and so should always be coherent for scanout. Adjust the test and ensure it still passes as expected. Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/5303 Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> Reviewed-by: Nirmoy Das <nirmoy.das@intel.com> Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
2022-06-28tests/i915/gem_eio: fix uafMatthew Auld
../tests/i915/gem_eio.c:277:20: warning: pointer ‘ctx’ used after ‘free’ [-Wuse-after-free] 277 | igt_assert(igt_sysfs_printf(ctx->debugfs, "i915_drop_caches", ../lib/igt_core.h:667:20: note: in definition of macro ‘igt_assert’ 667 | do { if (!(expr)) \ | ^~~~ ../tests/i915/gem_eio.c:274:9: note: call to ‘free’ here 274 | free(ctx); Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> Reviewed-by: Nirmoy Das <nirmoy.das@intel.com> Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
2022-06-28tests/kms_writeback: Use a garbage X value to create fill our test bufferMaxime Ripard
Since we use buffers in XRGB8888, whatever value we have in X should be ignored by the drivers and the hardware. However, since we always use 0xff in our test, whether that is the case or not cannot be determined. Let's use a garbage value (but consistent across test runs) to make sure it doesn't have any impact on the writeback output. Acked-by: Pekka Paalanen <pekka.paalanen@collabora.com> Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2022-06-28tests/kms_writeback: Use endianness accessor to fill pixelsMaxime Ripard
The fill_fb() function in the kms_writeback test suite will fill an XRGB8888 buffer using a pattern passed an an argument. However, the pattern is native endian, while XRGB8888 is little-endian. Add an accessor and use it to fill the framebuffer with our pattern. Acked-by: Pekka Paalanen <pekka.paalanen@collabora.com> Signed-off-by: Maxime Ripard <maxime@cerno.tech>
2022-06-28tests/i915/gem_sync: Added test description for test case.Sai Gowtham Ch
Added test description for test and to all the subtests that are available. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Sai Gowtham Ch <sai.gowtham.ch@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-28tests/prime_vgem : Add subtests descriptionJanga Rahul Kumar
Add test description to all the available subtests and corrected a little old descriptions. v2 : Add description to all subtests. v3 : Modified subtest description. v4 : Minor corrections. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-28i915/gem_mmap_gtt: added description for test casePriyanka Dandamudi
Added global description and subtest descriptions. v2:Minor corrections. v3: Added descriptions to copy subtests. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Priyanka Dandamudi <priyanka.dandamudi@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-28tests/kms_cursor_edge_walk: Fix test requirement to avoid SKIPsBhanuprakash Modem
As (54ff3199) introduced dynamic subtets, tests are getting Skipped on all pipes except pipe-A. This patch will fix the test requirement condition to avoid such skips. Fixes: https://gitlab.freedesktop.org/drm/intel/-/issues/6250 Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-28i915/gem_exec_create: Added test description for test case.Sai Gowtham Ch
Added test description for all the subtests that are available. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Sai Gowtham Ch <sai.gowtham.ch@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-28tests/i915/gem_exec_parallel : Add subtests descriptionJanga Rahul Kumar
Add test description to all the available subtests. v2 : Modified test description. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-28tests/i915/gem_ringfill : Added test descriptionPriyanka Dandamudi
Added global description and description to all the available subtests. v2: Minor corrections. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Priyanka Dandamudi <priyanka.dandamudi@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-28tests/kms_flip: Skip test only for invalid combinationJeevan B
currently the entire test is skipping. adding this fix to skip test only for invalid cases and run on other valid display combination. v2: add RUN_PAIR check to avoid crash on single display. v3: add flag to check for valid display combination.(Karthik) v4: if no valid mode is found then flow should go to 'out'.(Karthik) v5: rebase. Signed-off-by: Jeevan B <jeevan.b@intel.com> Reviewed-by: Karthik B S <karthik.b.s@intel.com>
2022-06-27tests/i915/pm_rc6_residency: Extend rc6-idle test on remaining enginesRiana Tauro
Run rc6_idle on a single instance of every engine v2: add dynamic subtest (Anshuman) Signed-off-by: Riana Tauro <riana.tauro@intel.com> Reviewed-by: Anshuman Gupta <anshuman.gupta@intel.com>
2022-06-27tests/i915/pm_rc6_residency: Refactoring intel_ctx_t to igt_fixtureRiana Tauro
Refactor code to move intel_ctx_create_all_physical() and intel_ctx_destroy() to igt_fixture to be used by rc6_fence and other tests. No functional changes v2 : refactor code (Anshuman) Signed-off-by: Riana Tauro <riana.tauro@intel.com> Reviewed-by: Anshuman Gupta <anshuman.gupta@intel.com>
2022-06-24tests/i915/gem_busy : Added subtests descriptionSinjan Kumar
Added subtest description to gem_busy tests Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Sinjan Kumar <sinjan.kumar@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-24tests/i915/gem_exec_suspend : Added subtests descriptionJanga Rahul Kumar
Added test description to all the available subtests. v2 : Modified subtest description and added description to all the subtests. v3 : Modified description based on suggestions. v4 : Modified test description. v5 : Aligned description strings. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-22tests/kms_panel_fitting: Convert test to dynamicSwati Sharma
Convert the existing subtests to dynamic subtests at pipe/output level. v2: -Fixed if-else block -Removed redundant check Signed-off-by: Swati Sharma <swati2.sharma@intel.com> Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
2022-06-22tests/i915/i915_pm_dc: Check dc3co count to skip the testMohammed Thasleem
If dc3co is not enabled in driver, counter will always be zero and we can simply skip the test. Fixes: https://gitlab.freedesktop.org/drm/intel/-/issues/4364 Signed-off-by: Mohammed Thasleem <mohammed.thasleem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-22tests/kms_dither: Skip if current & requested BPC doesn't matchBhanuprakash Modem
The "max bpc" property only ensures that the bpc will not go beyond the value set through this property. It does not guarantee that the same bpc will be used for the given mode. If clock/bandwidth constraints permit, the max bpc will be used to show the mode, otherwise the bpc will be reduced. So, if we really want a particular bpc set, we can try reducing the resolution, till we get the bpc that we set in max bpc property. This patch will skip the test, if there is no valid resolution to get the same bpc as set by max_bpc property. Cc: Swati Sharma <swati2.sharma@intel.com> CC: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
2022-06-22tests/intel-ci: Rename kms_pipe_crc_basic subtests in BATBhanuprakash Modem
As we converted the subtests to dynamic, we must rename the same subtests in BAT. Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-22tests/kms_pipe_crc_basic: Test CleanupBhanuprakash Modem
Clear the system state before exiting the subtest. Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-22tests/kms_pipe_crc_basic: Convert tests to dynamicBhanuprakash Modem
Convert the existing subtests to dynamic subtests at pipe level. V2: * Fix typos: s/hand/hang/, s/TEST_NONE/TEST_BASIC, etc.. V3: * Add output->name to the dynamic subtest Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-22tests/kms: Fix kms tests to use lib helpers to sort connector modesBhanuprakash Modem
Instead of writing our own wrappers for each subtest to sort connector modes, just use the helpers from IGT library. Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-22tests/kms_cursor_crc: Test CleanupBhanuprakash Modem
Sanitize the system state before starting the subtest. Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-22tests/kms_cursor_crc: Convert tests to dynamicBhanuprakash Modem
Convert the existing subtests to dynamic subtests at pipe level. V2: * Fix nested igt_fixture in igt_subtest. V3: * Add output name to subtest Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-22tests/kms_plane: Test RefactoringKarthik B S
Add igt_display_reset in test_init(). Add new function to call all the subtests to avoid code duplication. v2: -Call test_init() before igt_output_set_pipe() (Bhanu) -Declare and initialize 'count' variable together (Bhanu) Signed-off-by: Karthik B S <karthik.b.s@intel.com> Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
2022-06-22tests/intel-ci: Rename kms_cursor_legacy subtests in BATBhanuprakash Modem
As we converted the subtests to dynamic, we must rename the same subtests in BAT. Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-22tests/kms_cursor_legacy: Test CleanupBhanuprakash Modem
Clear the system state before exiting the subtest. V2: Fix Crash in *-modeset-vs-cursor-atomic test Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-22tests/kms_cursor_legacy: Convert tests to dynamicBhanuprakash Modem
Convert the existing subtests to dynamic subtests. Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-20tests/drm_fdinfo: Test virtual enginesTvrtko Ursulin
We need some coverage of the virtual engines. v2: * Mark contexts as "allow hang". (Umesh) * Fix destruction order in virtual_all. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
2022-06-17tests/kms_getfb: Fix on non-i915 devicesRob Clark
intel_get_drm_devid() will assert that it is i915.. so we need to require that first in order for getfb-reject-ccs to skip instead of crash. Signed-off-by: Rob Clark <robdclark@chromium.org> Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
2022-06-17tests/i915/kms_dsc: Validate dsc with diff plane formatsSwati Sharma
Already existing subtest is modified so that dsc can be validated using different plane modifiers. Few 8/10/16 bpc RGB and YUV formats are added. v2: -minor fixes v3: -renaming -addition of new planar format test v4: -removing XRGB8888 from format_list -test name managed with single var v5: -changed MIN_BPP to DSC_MIN_BPP Signed-off-by: Swati Sharma <swati2.sharma@intel.com> Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Manasi Navare <manasi.d.navare@intel.com>
2022-06-16tests/i915/kms_big_fb: Move intel_ibb_destroy out of test_cleanupKarthik B S
All the clean up functions were moved to fixture in patch "2aff4179". But this causes an assert in intel_bb_destory() after the test passes, on configurations having eDP connected. So moving the intel_bb_destroy() call back to the original function. Fixes: 2aff41793e5f ("tests/i915/kms_big_fb: Move cleanup code to fixture") Signed-off-by: Karthik B S <karthik.b.s@intel.com> Acked-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-16tests/kms_async_flips: first async flip discarded on i915Arun R Murthy
The i915 KMD will use the first async flip to update the watermarks as per the watermark optimization in DISPLAY13. Hence the actual async flip will happen from the subsequent flips. For alternate sync async test, a dummy async flip has to be done to allow the KMD to perform the watermark related updates before writing to the surface base address. Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com> Reviewed-by: Karthik B S <karthik.b.s@intel.com>
2022-06-16i915/gem_close_race: added description for test casePriyanka Dandamudi
Added description for subtests. v2: Added global description and modified others. Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by: Priyanka Dandamudi <priyanka.dandamudi@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-06-15i915/gem_exec_balancer: fix parallel_ordering with no-relocNirmoy Das
Make sure to allocate ahnd so that spinner starts with no-reloc execbuf otherwise this will fail on platforms with relocation disabled. Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/6117 Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Signed-off-by: Nirmoy Das <nirmoy.das@intel.com> Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
2022-06-15tests/i915/sysfs_heartbeat_interval: Avoid signal delivery raceZbigniew Kempczyński
As Petri noticed there's signal delivery race which might lead to situation when two children send SIGALRM to master process not in the same time. Signal from first child just awake master process which reinstalls previous signal handler. Second signal is then handled by default handler so we got process exit and failure. Lets move signal reinstall to moment when children will just exit. Allocator warning which notices there's existing ipc queue is then an effect, not the reason. Unfortunately multiprocess start/stop were called in the test, not in the fixture, so test failure doesn't call multiprocess stop at all (and we see there's dangling queue). Deeper look to client() implementation allows to remove multiprocess allocator dependency. Function runs in its own separated context so we don't need to arbitrate and just call intel_allocator_init() to become standalone allocator. Fixes: https://gitlab.freedesktop.org/drm/intel/-/issues/4055 Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2022-06-15tests/kms_dither: Rename dynamic testsBhanuprakash Modem
Instead of using dynamic subtests as <output name>-<pipe name>, update as <pipe name>-<output name>. Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
2022-06-15tests/kms_cursor_edge_walk: Convert tests to dynamicBhanuprakash Modem
Convert the existing subtests to dynamic subtests at pipe level. V2: * Fix nested igt_fixture in igt_subtest V3: * Add output name to subtest Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Swati Sharma <swati2.sharma@intel.com>