summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2018-11-02tests/kms_properties: Add functional test for "max bpc" propertyRadhakrishna Sripada
Test the values in the range advertised by the "max bpc" property. Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Radhakrishna Sripada <radhakrishna.sripada@intel.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2018-11-02tests/kms_properties: Add additional prperty test infrastructureRadhakrishna Sripada
We currently test the existimg properties by setting them with default value. Add infrastructure to perform additional test on a desired property. v2: Fix the strcmp logic Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Radhakrishna Sripada <radhakrishna.sripada@intel.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2018-10-31igt/gem_ppgtt: Unroll 32b memsetChris Wilson
Manually unroll the 32b memset in create_bo() to set a cacheline at a time, for a 2x speed improve of the whole test. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
2018-10-30igt/gem_tiled_fence_blits: Remember to mark up fence blitsChris Wilson
Older platforms require fence registers to perform blits, and so userspace is expected to mark up the objects to request fences be assigned. Fixes: ff2db94acb53 ("igt/gem_tiled_fence_blits: Remove libdrm_intel dependence") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108591 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2018-10-29tests/kms_content_protection: restore for real before failingDaniel Vetter
Nothing happens if you don't commit ... v2: rebased!? Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108550 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108549 Cc: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Ramalingam C <ramalingam.c@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2018-10-26kms_plane_alpha_blend: Start CRC after enabling display.Maarten Lankhorst
This will fix the -EIO from trying to start CRC on a disabled pipe. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108146 Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Imre Deak <imre.deak@intel.com>
2018-10-26igt/gem_tiled_fence_blits: Remove libdrm_intel dependenceChris Wilson
Modernise the test to use igt's ioctl library as opposed to the antiquated libdrm_intel. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2018-10-25tests/kms_content_protection: Avoid dmesg falloutDaniel Vetter
Subsequent tests have become really unhappy. Paper over this for now. If this doesn't work, then I think we need to revert. v2: Use Ram's suggestion for comment. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108550 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108549 Cc: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Ramalingam C <ramalingam.c@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2018-10-25kms_content_protection: Add Content Protection testRamalingam C
Pretty simple test: - picks the hdcp capable output with suitable pipe and apply modeset. - checks the connected sink's hdcp capability through debugfs - apply a FB and wait for the flip completion. - clears the content protection property - verifies that it clears - sets the content protection property to desired - verifies that it transitions to enabled - incase of timeout three reattempts are implemented - clear the content protection property and modeset on the crtc Above steps are repeated on all HDCP capable connectors for both legacy and atomic subtests. v2: dynamic subtests are dropped [Daniel] v3: debugfs is used to detect the sink's hdcp capability [Daniel] data structure is made as global variable. v4: debugfs file from connector's debugfs dir is used [Daniel] v5: i915_debugfs_connector_dir() usage is modified [Chris] Signed-off-by: Sean Paul <seanpaul@chromium.org> Signed-off-by: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2018-10-24tests/kms_rotation_crc: Don't leave crc runningJuha-Pekka Heikkila
Leaving crc running nobody reading it may fail tests randomly with dmesg comment "*ERROR* Overflow of CRC buffer, userspace reads too slow." v2 (Maarten Lankhorst): Don't change clean up code but just add flag for starting crc and stop it at end of test. bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105748 Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
2018-10-23tests: Introduce i915 directoryArkadiusz Hiler
We can already move all the tests with distinct prefixes: gem_, gen3_ and i915_. pm_ and drv_ tests will follow in batches, so we can do the adjustments in the reporting/filtering layer of the CI system. v2: Fix test-list.txt generation with meson v3: Fix docs build (Petri) Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com> Tested-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-10-17tests/kms_selftest: Integrate kernel selftest test-drm_modesetDeepak Rawat
Call kernel selftest module test-drm_modeset for testing KMS. v2: - Add test alphabetically. - Add test to meson build. v3: Rename to kms_selftest. Signed-off-by: Deepak Rawat <drawat@vmware.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2018-10-16tests: Skip testdisplay when KMS is disabledJosé Roberto de Souza
This test should be skiped when KMS is disabled. Cc: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: José Roberto de Souza <jose.souza@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2018-10-16tests/kms_ccs: Avoid using plane sizes which exceed hw capabilityJuha-Pekka Heikkila
Max sprite plane width at 2000 to avoid going over hw watermark limits. v2: (Ville Syrjälä) comment on source added plane width limitation. bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105458 Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
2018-10-16tests/kms_frontbuffer_tracking: Do not skip on 4k displays.Maarten Lankhorst
On 4k displays the horizontal resolution is 3840, which when you add 500 gives a stride of 17408 (3840 + 500 + 12 (tile alignment)). Decrease the extra offset to 248, so we end up at exactly 16384, which is the maximum supported stride for FBC. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2018-10-15tests/perf: adapt report timing delta acceptance for ICLLionel Landwerlin
The behavior of the OA unit is a tiny bit different on ICL. It appears to be a bit sloppier on the timings of its OA reports (missing the deadline by one period quite often). Let's add an acceptance delta. v2: Use larger acceptance delta only on ICL (José) Tweak indentation (José) Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
2018-10-10tests: Add chamelium formats subtests to vc4 test listsMaxime Ripard
Now that we have support for the format sub-tests, enable them in the vc4 chamelium test lists. Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com> Acked-by: Eric Anholt <eric@anholt.net>
2018-10-08chamelium: Add format subtestsMaxime Ripard
Now that we have everything in place, we can add the support for the subtests testing the output of planes setup with formats other than XR24. Since YUV will be a bit trickier to handle, start with various common RGB formats. Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com> Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-10-08chamelium: Add format supportMaxime Ripard
In order to introduce CRC subtests for DRM formats, we need to take an intermediate step. The current code will generate a pattern in XR24, and will try to compare the CRC returned by the Chamelium for each frames. This CRC is computed on an XR24 format as well, so it works. However, as soon as we will start implementing other formats, if we just change the format of the pattern, the raw content of the buffer, and therefore the CRC's won't match anymore. In order to address that, we will need an intermediate step, and we will now still create the XR24 pattern, and compute its CRC, then convert it to the format we want to test, and finally retrieve the CRC from the Chamelium to compare it with the one from the XR24 pattern. The current code is converted to the new prototype that will take the fourcc of the format to test, even though we're still using XR24 everywhere for now. Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com> Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-10-08chamelium: Change our pattern for a custom one if neededMaxime Ripard
The current pattern being used is the one generated through the igt_create_color_pattern_fb. However, in order to deal with multiple formats and the upsampling / downsampling issues that might arise from converting back and forth between formats, we will need to have a pattern with quite precise color values, and without any shades or gradient of colors. Let's create a function that will generate that pattern in the chamelium code if we need to convert the framebuffer to a smaller depth, and use the current pattern otherwise. The easiest way to do that will be to only use values that would have the same part on the common most significant bits (5, to deal with most formats) and have the same bit repeated on the least significant bits that are going to be dropped and / or padded when converting between formats. Pixman will fill the lowest bits with 1, and our hardware (this has been tested on a Raspberry Pi's VC4) is able to support that, so the easiest is to just use all 1's for our components in order to still be able to compute the CRCs. Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-10-08chamelium: Split CRC test function in twoMaxime Ripard
We have two use cases in our current sub-test suites: the tests that test all the modes exposed by the driver, and the ones just picking up one. Instead of having to deal with this two cases in the same function as it is currently done, move the part that test a single mode into a separate function, and just call it for every mode that we want to test if needs be. This will result in a simpler function that will be easier to extend to support formats. Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com> Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-10-08tests: kms_plane: Disable XBGR8888Maxime Ripard
For some reason, the XBGR8888 CRC check will fail in the kms_plane tests. Since that format will be enabled and checked by that test in the next commit, make sure we don't introduce a regression for no particular reason. Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Martin Peres <martin.peres@linux.intel.com>
2018-10-04igt: Check drmModeGetResources()Chris Wilson
If KMS is not supported on the device, drmModeGetResources() will return NULL, often this is an indication that we should not attempt to run the test. Although it would be preferred to use something like igt_require_display() as the canonical check and assert that drmModeGetResources() did not hit an error, it is not always practical as the tests do not utilize the common igt_display abstraction. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-10-03lib/kms: Handle no connectors for igt_enable_connectors()Chris Wilson
Take the device fd from the caller as to which card we should try and enable connectors for (or else we may not enable the right connectors for the test!) and fail gracefully if there is no kms support on the device. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
2018-10-02igt/pm_rpm: Handle no-KMS gracefullyChris Wilson
If KMS is not supported, drmGetResources() will return NULL so be careful not to dereference it. However, we still insist that runtime pm works, so keep on testing. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2018-10-02igt/kms_busy: Flush request queue when re-enabling hangcheckChris Wilson
Enabling hangcheck only takes effect at the start of a new request queue. Before we re-enable hangcheck after our poking around, we therefore need to wait until the gpu is idle otherwise the next test will start without hangcheck and subsequently hang forever. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Tested-by: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2018-10-02tests: Add kms plane alpha blending test, v2.Maarten Lankhorst
Add a few tests to test various blending modes. Some of the tests will skip if pixel mode alpha cannot be enabled with plane alpha at the same time. This is for mali-dp. I didn't test on that platform, but tested with the same check on i915. The tests won't pass i915 on pre-gen11 hw. i915 has small rounding errors with 0xff and 0x00 alpha, which gives CRC mismatches. Changes since v1: - Send the correct version, with the skips for mali-dp in place. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2018-10-01igt: Require a display (KMS enabled) for KMS testsChris Wilson
Simple rule of thumb, if a kms_* test calls igt_display_init() in its global fixture, skip the entire test if the driver has disabled KMS. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Antonio Argenziano <antonio.argenziano@intel.com>
2018-10-01igt/prime_vgem: Skip flip if no displayChris Wilson
We try flipping a vgem surface onto a i915 scanout. However, if there is no display we want to disable the kms interface, including the addfb ioctl. On such systems the call to kms_addfb will naturally fail and the test cannot be run. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Antonio Argenziano <antonio.argenziano@intel.com>
2018-10-01igt/kms_getfb: Check the iface exists before useChris Wilson
If the driver doesn't support the getfb iface (e.g. because KMS has been disabled), the ioctls will fail with ENOTSUP. This is expected, so skip the test as nothing useful can be learnt. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Antonio Argenziano <antonio.argenziano@intel.com>
2018-09-28tests/psr: Wait for PSR exitDhinakaran Pandiyan
PSR appears to not exit immediately after the test commits a page flip, give some leeway for PSR to idle. Let's set the timeout at 40 ms with a 5 ms interval between each status read. Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
2018-09-27lib/igt_fb: Pass around igt_fb internallyVille Syrjälä
Instead of passing around a boatload of integers everywhere let's just pass around the igt_fb struct. That obviously means we have to populate it first sufficiently, to which end we'll add a small helper. Later on the stride/size calculations will consult the already pre-populated igt_fb and fill in the rest as needed. This makes the whole thing a lot less error prone as it's impossible to accidentally pass the arguments in the wrong order when there's just the one of them, and it's a pointer. v2: Rebase due to uint64_t size Cc: Paulo Zanoni <paulo.r.zanoni@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
2018-09-27igt/gem_sync: Exercise waiting while keeping the GPU busyChris Wilson
Normally we wait on the last request, but that overlooks any difficulties in waiting on a request while the next is being qeued. Check those. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
2018-09-27igt/gem_sync: Measure wakeup latency while also scheduling the next batchChris Wilson
More variants on stress waits to serve the dual purpose of investigating different aspects of the latency (this time while also serving execlists interrupts) while also checking that we never miss the wakeup. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
2018-09-27igt/gem_sync: Exercise sync after context switchChris Wilson
This exercises a special case that may be of interest, waiting for a context that may be preempted in order to reduce the wait. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
2018-09-27lib/debugfs: Use a blocking read in igt_pipe_crc_get_single()Ville Syrjälä
All users of igt_pipe_crc_get_single() want a blocking read even if the fd was opened in nonblocking mode. Make it so. v2: Fix the docs for igt_pipe_crc_get_single() Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
2018-09-26igt/perf: gem.has_ppgtt is no longer usedChris Wilson
Remove gem.has_ppgtt as the information is no longer used. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2018-09-26igt/pm_sseu: gem.has_ppgtt is no longer usedChris Wilson
Remove gem.has_ppgtt as the information is no longer used. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2018-09-25lib/kms: Pass the number of planes explicitly to __kms_addfb()Ville Syrjälä
Currently __kms_addfb() assumes that only the first plane can be at offset 0. I don't particularly like such assumptions so let's just pass in the number of planes explicitly. We'll also require offsets[] to be passed in always. Nothing really to gain by making it optional. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
2018-09-25lib/kms: Pass strides[] to __kms_addfbVille Syrjälä
Make __kms_addfb() usable with planar formats by passing in the stride for each plane. v2: Handle strides[1] for planar formats in kms_available_modes_crc Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
2018-09-25lib: Add DIV_ROUND_UP()Ville Syrjälä
Add DIV_ROUND_UP() and replace some hand rolled versions with it. v2: Drop the duplicate from gem_render_copy() (Paulo) Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
2018-09-20test/kms_fbcon_fbt: Give a explicit parameter name to functions that expect ↵José Roberto de Souza
debugfs fd Let's rename to debugfs_fd all the parameters of the functions that expect debugfs fd to avoid call one those functions with the wrong file descriptor. v2: - Fixing code style - Renaming fbc_wait_until_enabled() too Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
2018-09-20tests/kms_frontbuffer_tracking: Pass the debugfs fd to psr_wait_entry()José Roberto de Souza
psr_wait_entry() uses the fd to the debugfs directory not the fd the drm device. This fix some kms_frontbuffers_tracking tests: ... (kms_frontbuffer_tracking:1353) DEBUG: Calculated CRC: pipe:[94a0476d 00000000 00000000 00000000 00000000] (kms_frontbuffer_tracking:1353) DEBUG: Test requirement passed: !fbc_not_enough_stolen() (kms_frontbuffer_tracking:1353) DEBUG: Test requirement passed: !fbc_stride_not_supported() (kms_frontbuffer_tracking:1353) DEBUG: Test requirement passed: !fbc_mode_too_large() (kms_frontbuffer_tracking:1353) DEBUG: fbc_is_enabled()? FBC enabled Compressing: yes (kms_frontbuffer_tracking:1353) DEBUG: fbc_is_enabled(IGT_LOG_DEBUG) took 0ms (kms_frontbuffer_tracking:1353) DEBUG: fbc_is_compressing() took 0ms (kms_frontbuffer_tracking:1353) CRITICAL: Test assertion failure function do_status_assertions, file ../tests/kms_frontbuffer_tracking.c:1634: (kms_frontbuffer_tracking:1353) CRITICAL: Failed assertion: psr_wait_entry(drm.fd) (kms_frontbuffer_tracking:1353) CRITICAL: Last errno: 20, Not a directory (kms_frontbuffer_tracking:1353) CRITICAL: PSR still disabled (kms_frontbuffer_tracking:1353) igt_core-INFO: Stack trace: (kms_frontbuffer_tracking:1353) igt_core-INFO: #0 ../lib/igt_core.c:1467 __igt_fail_assert() (kms_frontbuffer_tracking:1353) igt_core-INFO: #1 ../tests/kms_frontbuffer_tracking.c:1635 do_status_assertions() (kms_frontbuffer_tracking:1353) igt_core-INFO: #2 ../tests/kms_frontbuffer_tracking.c:1663 __do_assertions() (kms_frontbuffer_tracking:1353) igt_core-INFO: #3 ../tests/kms_frontbuffer_tracking.c:1687 enable_prim_screen_and_wait() (kms_frontbuffer_tracking:1353) igt_core-INFO: #4 ../tests/kms_frontbuffer_tracking.c:1847 prepare_subtest_screens() (kms_frontbuffer_tracking:1353) igt_core-INFO: #5 ../tests/kms_frontbuffer_tracking.c:1867 prepare_subtest() (kms_frontbuffer_tracking:1353) igt_core-INFO: #6 ../tests/kms_frontbuffer_tracking.c:2987 tilingchange_subtest() (kms_frontbuffer_tracking:1353) igt_core-INFO: #7 ../tests/kms_frontbuffer_tracking.c:3474 main() (kms_frontbuffer_tracking:1353) igt_core-INFO: #8 ../csu/libc-start.c:344 __libc_start_main() (kms_frontbuffer_tracking:1353) igt_core-INFO: #9 [_start+0x2a] v2: Fixing code style Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
2018-09-18gem_ctx_exec: Remove lrc-lite-restoreTvrtko Ursulin
Lite restore is sufficiently covered in gem_exec_nop. At the same time tidy code in the test a bit to bring it closer to today's coding style. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Suggested-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-09-18tests/gem_ctx_bad_exec: Consolidate to gem_ctx_execTvrtko Ursulin
Move a really small test that invalid context is rejected under the gem_ctx_exec umbrella. v2: * And actually fix the test so it does what it claims. And add more variety in the invalid context id's it tests with. (Chris Wilson) v3: * Rename the test as basic. * Limit to 32-bit. (Chris Wilson) * Add previously valid but closed context id to the test. (Chris Wilson) v4: * Add more invalid values. (Chris Wilson) Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-09-14igt/kms_addfb_basic: Skip if the KMS interface is not supportedChris Wilson
Some drivers and some hardware do not support KMS and so the addfb ioctls are expected to fail. However, since they are expected to fail with a specific errno (ENOTSUP) in the case KMS is not supported on the fd, we can check for that and skip the tests where they are not appropriate. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2018-09-14igt/gen3_*_blits: Add memory requirement checksChris Wilson
Check we have sufficient memory to run the tests before getting trapped in the swap of despair. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107935 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2018-09-11lib: Add roundup_power_of_two()Ville Syrjälä
Add a helper to round a value to the next power of two size. And since we need fls() to implement that, reuse that elsewhere as well. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-09-11lib/igt_fb: Make fb size 64bitVille Syrjälä
Switch all fb size handling to 64bits to accomodate >4GiB framebuffers. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-09-11Fix 32bit gcc warningsVille Syrjälä
../tests/eviction_common.c:158:13: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘size_t’ {aka ‘unsigned int’} [-Wformat=] etc. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>