Age | Commit message (Collapse) | Author |
|
SCALING_FILTER can be used either as plane scaler property
or CRTC scaler property.
The value of this property can be one of the following:
Default:
Driver's default scaling filter
Nearest Neighbor:
Nearest Neighbor scaling filter
If NN is used for scaling, sharpness is preserved
whereas if we use default scaling we can see blurriness
at edges.
v2: -no need to set pipe scaler filter property
v3: -addition of new lines to improve readability
-use of SPDX licence placeholder
-close(data.drm_fd)
v4: -instead of creating new i-g-t, tweaked kms_flip_scaled_crc
to validate both default and nn scaling filters
v5: -removed duplicate block
-added platform check for nn
v6:(juha): -Don't skip on missing property, assert on where
expect to find it.
- Allow test to run correctly on all gen9 upwards platforms.
- run default and NN filters on same test.
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
../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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Covert the tests to dynamic subtests at pipe level.
v2: -Use separate variables for planes in dual_display test. (Bhanu)
-Add igt_require(display.is_atomic) in fixture. (Bhanu)
-Remove redundant check in loop. (Bhanu)
Signed-off-by: Karthik B S <karthik.b.s@intel.com>
Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
|
|
Newer platforms have an embedded table giving details about that
platform's hardware configuration. This table can be retrieved from
the KMD via the existing query API. So add a test for it as both an
example of how to fetch the table and to validate the contents as much
as is possible.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: John Harrison <John.C.Harrison@Intel.com>
Cc: Slawomir Milczarek <slawomir.milczarek@intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
|
|
None of the query tests had a description. So make some up.
Signed-off-by: John Harrison <John.C.Harrison@Intel.com>
Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
|
|
Add simple test which compares crc32 sums and calculation times on cpu
and gpu.
v2: - addressing review comments - igt_debug + igt_time_elapsed (Kamil)
- exercise crc for size smaller than page size
v3: - change clock_gettime() to igt_gettime() (Petri)
- add crc_n for decrease execution time (Zbigniew)
Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
|
|
In few tests we got some MI_* duplicates (MI_MATH for example).
Add common definitions in intel_reg.h and remove local definitions
in the tests.
v2: Definitions MI_LOAD_REGISTER_MEM_GEN8 was removed so from now
on user will need to encode length on it own. :
Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
|
|
i915 driver continues to behave in such a way that CDCLK is never
decreased, but always increased. This is done in order to
avoid continuous CDCLK switching.
So, in case if new CDCLK(after transition from low to high mode)
is same as reference CDCLK i.e. reference = new because of
above stated driver optimization; the current mode-transition test
is passed else ref < new condition is checked (as we expect CDCLK
will bump after mode transition from low to high mode). This is done
in current mode-transition subtest where we are checking mode
transition on each valid output.
In this patch, a new subtest is added which lowers modes of
all valid outputs simultaneously and then switches to highest
mode to get proper DVFS behavior along with the above mentioned
driver policy. In this case, we should expect CDCLK switch from low
to high.
Along with this, few cleanups have been done.
v2: Fixed build error
Cc: Uma Shankar<uma.shankar@intel.com>
Cc: Mika Kahola <mika.kahola@intel.com>
Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
Reviewed-by: Mika Kahola <mika.kahola@intel.com>
|
|
Add a test that:
- Checks if i915 and associated drivers are not yet loaded;
- Loads the i915 driver;
- Performs a small set of sanity tests to make sure the GPU is there.
The test is skipped if the driver is already loaded. The reload test now
also performs the same checks. This should be the first test executed in
CI test lists.
Signed-off-by: Ryszard Knop <ryszard.knop@intel.com>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
|
|
New gens has no relocations so enable both paths, relocs for
older gens and softpin for newer ones.
Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
|
|
From dg2, there are multiple compute engines which conflict with the
parallel-submit restriction; check for the illegal engine class prior to
running the test.
And from dg2, MI_ATOMIC is only valid for use with system memory for
INC, DEC and MOV operation, not the ADD used in the test workload.
Replace the ADD+1 with an INC, so that the same workload runs on all
platforms.
Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/6157
Signed-off-by: Chris Wilson <chris.p.wilson@intel.com>
Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
Signed-off-by: Nirmoy Das <nirmoy.das@intel.com>
|
|
When a subtest fails, it exits from the assert and does not run the
cleanup part of the subtest. To avoid this, move the cleanup code to
igt_fixture outside the subtest.
Signed-off-by: Karthik B S <karthik.b.s@intel.com>
Reviewed-by: Jeevan B <jeevan.b@intel.com>
|
|
4tiled rc ccs and color clear tests were testing wrong things
because wrong modifier was used for choosing test path.
Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Reviewed-by: Mika Kahola <mika.kahola@intel.com>
|
|
On discrete detected default alignment may be bigger than single page
so it is likely we enter offsets > 32b. To avoid getting -EINVAL adding
flag EXEC_OBJECT_SUPPORTS_48B_ADDRESS is now necessary.
Fixes: deep, smoketest, smoketest-all
Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
|
|
Running spinner in default context is not correct because it can
contain less engines than spinner expect. Fix this by setting
two contexts with identical set of engines.
Fixes: semaphore-noskip and u-semaphore-noskip
Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
|
|
Engine passed to the subtest comes from configuration which is build
on top of all-physical-engines context. Add dedicated context for
the spinner which is compatibile with this engine.
Fixes: pi-shared-iova and pi-distinct-iova
Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
|
|
Added test description to all the available subtests.
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>
|
|
Added test description to all the available subtests.
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>
|
|
Added test description to all the available subtests and
fix file name in the file description comments.
v2: Fix syntax issues.
v3: Modified subtest description.
Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Cc: Priyanka Dandamudi <priyanka.dandamudi@intel.com>
Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com>
Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
|
|
intel_gen is designed to return a big unsigned number for an unknown device.
The value is interpreted to be the newest generation possible, and the matching
configuration is used. Some functions incorrectly pass the gen value as a signed
number, meaning it becomes negative, and the oldest configuration is used
instead of the newest one. This leads to GPU hangs in some cases.
Update the definition of submit functions in gem_exec_gttfill and gem_softpin,
and has_cs_timestamp in gem_ctx_engines to use a correct type for gen parameter.
Signed-off-by: Karolina Drobnik <karolina.drobnik@intel.com>
Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
|
|
Promote intel_os.c helpers to igt_os.c, so that I can re-use them for
some additional msm tests. Just big churny rename, no functional change.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
|
|
Current code is improperly setting over framebuffer size. Fix this
by setting primary framebuffer size instead.
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
|