summaryrefslogtreecommitdiff
path: root/tests/kms_plane.c
AgeCommit message (Collapse)Author
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-04-29tests/kms: Skip kms test cases for DCC and DCC_RETILEAlex Hung
Skip the KMS test cases for planes that has modifiers with DCC and DCC_RETILE on AMDGPU. Current pixel-format and pixel-format-source-clamping subtests do not support modifers with DCC or DCC_RETILE in kernel. 1. dcc_formats's cpp[1] is set to 0 and this triggers kernel errors "Format requires non-linear modifier for plane 1" because block_size (i.e. cpp[1]) == 0. See kernel commits 816853f9dc40 and 8db2dc852941. 2. the subtests cause kernel's amdgpu_display_verify_sizes to fail because they do not provide an extra plane with compression metadata. See kernel commit 234055fd9728 for details. Signed-off-by: Alex Hung <alex.hung@amd.com> Reviewed-by: Rodrigo Siqueira <Rodrigo.Siqueria@amd.com>
2021-11-11tests/kms_plane: Use single colors during extended testVille Syrjälä
Sometimes it's nice to checks which colors are actually different. So let's make the extended test always use single colors. Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2021-11-11tests/kms_plane: Abstract single vs. multiple crsc betterVille Syrjälä
Add a single point where we decide whether to use single vs. multiple colors, rather than just assuming planar==single colors and packed==multiple colors. Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2021-10-18tests/kms_plane: Use IGT_MODIFIER_{FMT,ARGS}Ville Syrjälä
Use IGT_MODIFIER_{FMT,ARGS} to print a human readable name for the modifier. Reviewed-by: Karthik B S <karthik.b.s@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2021-10-11igt: s/DRM_FORMAT_MOD_NONE/DRM_FORMAT_MOD_LINEAR/Ville Syrjälä
DRM_FORMAT_MOD_LINEAR is the more sensible name for DRM_FORMAT_MOD_NONE. Use the better name. Reviewed-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2021-07-15Nuke local versions of DRM_FORMAT and DRM_MODELucas De Marchi
Use the definition from kernel headers. Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
2021-06-22tests/kms_plane: fix rounding errorJuha-Pekka Heikkila
On some screen sizes with legacy hw there was possible to get rounding error on source clamping test which would incorrectly fail clamping tests. Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com>
2021-06-07lib/i915: Add intel_display_ver() and use it in display tests/libsMatt Roper
Display code should check the display version of the platform rather than the graphics version; on some platforms these versions won't be the same. v2: - Continue to use intel_gen() in draw_rect_blt() since it's checking the version of the blitter engine (graphics) rather than the display version. (Jose) - Rename some gen -> display_ver in kms_universal_plane too. (Jose) Signed-off-by: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
2021-05-19tests/kms_plane: Reset the state before exiting the testBhanuprakash Modem
Before starting the next subtest, clean up the states to default values, those are assumed by other tests. This patch will also fix few typos & depricated macros. Cc: Imre Deak <imre.deak@intel.com> Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
2021-05-12tests/kms_plane: Restrict the test execution to two pipesPatnana Venkata Sai
v2: Moved to igt tests to dynamic (petri) v3: Implemented clamping in the tests directly with an open-coded counting (petri) v4: Updated subtest names as suggested(petri) Updated Help string (Bhanu) v5: Updated subtests names as suggested and addressed other review comments. (Bhanu) Cc: Uma Shankar <uma.shankar@intel.com> Cc: Modem Bhanuprakash <bhanuprakash.modem@intel.com> Cc: Karthik B S <karthik.b.s@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com> Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
2021-04-20tests/kms_plane: Ignore the crc frame count with --skip-crc-compareVille Syrjälä
While debugging one might run things with "--interacive-debug=modeset --skip-crc-compare" to actually see what things look like on the screen. To do that without the asserts failing we need to ignore the crc frame count value since we may be sitting there for an arbitrary amount of time staring at the screen. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2021-04-09tests/kms_plane: Don't test all format+modifier combinationsVille Syrjälä
When running the non-extended tests let's use igt_reduce_format() and test each format "class" only once for each modifier except linear. This follows the earlier pattern of doing all the YCbCr limited vs. full range tests only for linear and skipping for other modifiers. This should maintian sufficient coverage to catch most watermark related bugs and whatnot. On icl: $ time kms_plane --r pixel-format-pipe-A-planes - real 0m9.390s + real 0m7.244s Full run of all pixel-format* tests on the same machine goes from ~58 seconds down to ~38 seconds. v2: Test the format the plane reported, not the reduced format Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2021-03-18tests/kms_plane: Don't unset primary_fb when testing other planesLyude Paul
Currently, nouveau doesn't support having a CRTC without a primary FB set. We won't reject such configurations, but the behavior is undefined which will cause CRCs to become undefined. So, avoid clearing the primary FB while we're testing non-primary planes. Signed-off-by: Lyude Paul <lyude@redhat.com> Cc: Martin Peres <martin.peres@free.fr> Cc: Ben Skeggs <bskeggs@redhat.com> Cc: Jeremy Cline <jcline@redhat.com> Reviewed-by: Martin Peres <martin.peres@mupuf.org>
2021-02-23tests/kms_plane: Restore RGB pixel format tests for non-atomic driversVille Syrjälä
Restore the capability to run RGB pixel format tests when the driver doesn't advertize the atomic capability. Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Fixes: e96c0d8e6952 ("tests/kms_plane: optimize pixel format tests") Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2021-01-08tests/kms_plane: Added test descriptionArundhati Hagaragi
Added test description for test case v2: modified subtests description to be more specific. (Karthik) v3: added and modified description for subtests to be more specific. (Karthik) v4: modified description for subtests v5: replaced few keywords to be more specific. (Karthik) Cc: Gupta, Nidhi1 <nidhi1.gupta@intel.com> Cc: B S, Karthik <Karthik.B.S@intel.com> Signed-off-by: Arundhati Hagaragi <arundhati.hagaragi@intel.com> Reviewed-by: Karthik B S <karthik.b.s@intel.com>
2021-01-03tests/kms_plane: Test optimization by removing redundanciesKarthik B S
The panning sub-tests currently loop for all the planes, but only uses primary plane for the actual verification. Removed this redundant loop. Also, instead of grabbing reference crc's for both blue and red fb's, made changes to grab the reference crc based on the requirement of the particular subtest. Signed-off-by: Karthik B S <karthik.b.s@intel.com> Reviewed-by: Kunal Joshi <kunal1.joshi@intel.com>
2020-12-01tests/kms_plane: optimize pixel format testsJuha-Pekka Heikkila
On packed formats there's no need to show separate colors on separate fbs. Here augmented path with packed color handling which check colors just on one fb. This cannot be directly applied to planar yuv formats because of scaler use with those formats. On my ICL this drop test execution time from 44.91s to 21.98s v2 (vsyrjala): paint entire screen instead of lines. small refinement. Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com>
2020-10-30tests/kms_plane: fix pixel format (-clamping) testsJuha-Pekka Heikkila
cdclk caused modesets mid test will mess up crc sequence where two consecutive frames will get same crc. If there come modeset restart round for given set as modeset will anyway happen only on first color. Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com>
2020-08-27tests/kms_plane: Generate reference CRCs for partial coverage tooLyude Paul
There's been a TODO sitting in the kms_plane test suite for a while now as a placeholder for actually generating a reference CRC for plane-position-hole tests. This means we have never actually been verifying whether or not partially covering our hole with a hardware plane works displays properly, and have just simply been checking that the frame CRC doesn't change when we're not changing the display output. On nouveau at least, this has been causing us to pass these tests even when we don't correctly program our hardware plane's framebuffer. So, get rid of that TODO and implement this by converting convert_fb_for_mode__position() to a generic convert_fb_for_mode() function that allows us to create a colored FB, either with or without a series of 64x64 rectangles, and use that in test_grab_crc() to generate reference CRCs for the plane-position-hole tests. Additionally, we move around all of the test flags into a single enumerator, and make sure none of them have overlapping bits so we can correctly tell from test_grab_crc() whether or not our reference CRC should include rectangles (otherwise, we'll accidentally add rectangles in our reference frame for the plane panning tests). Then, we finally flip the TEST_POSITION_FULLY_COVERED enum to TEST_POSITION_PARTIALLY_COVERED, so tests which don't explicitly specify partial positioning don't get it in their reference fbs. v2: * Rebase v3: * Just use igt_create_color_fb() in test_grab_crc() when we have no rectangles to draw Signed-off-by: Lyude Paul <lyude@redhat.com> Reviewed-by: Jeremy Cline <jcline@redhat.com>
2020-07-21tests/kms: Use crtc offset to read vblank event for a pipeMohammed Khajapasha
Pass crtc_offset parameter to read a vblank event for a pipe to vblank helper functions. Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2020-07-21tests/kms: Skip kms test cases for disabled pipesMohammed Khajapasha
Skip the kms test cases for disabled pipes with non-contiguous pipe display. Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2020-07-07lib/igt_fb: remove extra parameters from igt_put_cairo_ctxMelissa Wen
The function igt_put_cairo_ctx currently requires three parameters, but only one of them is used in it. This patch removes the useless parameters, making the code more readable and cohesive. It also applies the change to all occurrences of the function in the code. Signed-off-by: Melissa Wen <melissa.srw@gmail.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2020-04-21tests/kms_plane: survive cdclk caused modesetJuha-Pekka Heikkila
In mid test starting to use higher bpp pixel format (say 64bpp) can cause modeset. Allow that modeset to happen. v2 Ville Syrjälä: use DRM_MODE_ATOMIC_ALLOW_MODESET instead of blocking. Fixes: https://gitlab.freedesktop.org/drm/intel/issues/1214 Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2020-02-28tests/kms_plane: Use non-blocking commits for pixel format testsVille Syrjälä
Use non-blocking commits when testing pixel formats so that we can start preparing the next fb even before the current fb has been latched by the hardware. Eliminates an extra frame for each color in cases where preparing the next fb takes longer than a frame. For non-atomic drivers we can't do this as drmModePageFlip() won't allow us to change pixel formats, or set any of the YUV color encoding/range propeties. Hence we must stick to plain old blocking setplane/setprop there. On KBL w/ 2048x1080 plane size: time kms_plane --r pixel-format-pipe-A-planes --extended - real 2m8,529s + real 1m52,078s time kms_plane --r pixel-format-pipe-A-planes - real 0m44,135s + real 0m40,116s Won't help modern platforms since they always use a 64x64 plane, but older platforms may benefit as they can't reduce the primary plane size. v2: Assert we get got the crc for the correct frame (Martin) Due to above add a vblank wait for cursor setplane. Make it more robust against the rendering taking a long time by grabbing the crc for the last possible frame rather than the first possible frame. Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2020-02-28tests/kms_plane: Pipeline crc capture and flipsVille Syrjälä
Eliminate some dead time used to wait for crcs by pipelining the flips and crc capture. On KBL: time kms_plane --r pixel-format-pipe-A-planes - real 0m22,592s + real 0m14,527s time kms_plane --r pixel-format-pipe-A-planes --extended - real 1m8,090s + real 0m38,738s To keep the code somewhat sane we only pipeline while capturing the colors for a single pixel format. That does still leave a few non-pipelined frames when switching from one pixel format to another. Which explains why the extended test gets closer to the -50% mark as it tests more colors and thus has a larger proportion of optimally pipelined flips. Not sure how horrible the code would become if we tried to maintain the pipelining throughout the test. For now let's just accept the small victory and move on. v2: Use igt_pipe_crc_get_for_frame() to make sure we get the right crc even if the next fb preparation takes longer than one frame v3: Don't assume more than one color Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2019-12-31Revert "tests/kms_plane: Disable GEN12 media compression YUV tests"Imre Deak
This reverts commit 0586d205f651674e575351c2d5a7d0760716c9f1. Now that support for YUV engine copy was added, we can re-enable the YUV tests. Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by: Imre Deak <imre.deak@intel.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com>
2019-12-21tests/kms_plane: Disable GEN12 media compression YUV testsImre Deak
The Vebox backend needed for this is not ready yet for YUV formats, since that needs a separate AUX pagetable setup for the Y and UV planes and also setting up the matching format in the Vebox tiling convert command surface state. It makes sense to test the MC kernel patchset for regressions though, so let's disable the MC YUV tests until Vebox is able to handle those formats (and revert this patch when that happens and before the kernel patches enabling MC YUV formats get merged). Cc: Mika Kahola <mika.kahola@intel.com> Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Imre Deak <imre.deak@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2019-12-03tests/i915/kms: remove igt_skip_on_simulation()Swati Sharma
Removing igt_skip_on_simulation() from all the kms tests since this feature is not supported anymore. v2: Rebase Signed-off-by: Swati Sharma <swati2.sharma@intel.com> Signed-off-by: Karthik B S <karthik.b.s@intel.com> Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
2019-10-31tests/kms_plane: Don't test every plane on icl+Ville Syrjälä
Only test one plane of each type (HDR, SDR UV, SDR Y) on icl+. For the purposes of validating pixel formats this should be sufficient as the programming of each plane of the same type is identical and as such it's unlikely we'd have different bugs between them. As before we'll leave the full test set available to be run at the user's discretion via --extended. v2: Pimp comment (Petri) Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-10-24tests/kms_plane: Reduce pixel format test execution timeVille Syrjälä
By default reduce the set of colors we test by half, and only test all the YCbCr range/encoding combinations for linear buffers. This should hopefully still provide decent coverage with a big reduction in execution time. The previous more extensive coverage is now hidden behind the --extended command line argument. On KBL: time kms_plane --r pixel-format-pipe-A-planes - real 1m7,995s + real 0m22,943s Further ideas for more reduction: - Don't test on all planes (eg. on icl+ we could test on one hdr plane, one sdr uv plane, and one sdr y plane) - Don't test absolutely every pixel format + modifier combination - Pipeline even deeper to make each color checked take only a single frame (currently I think it should be taking two frames per color) Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
2019-07-08tests/kms_plane: Throw away yet another bitVille Syrjälä
CHV pipe A/C sprites are causing a crc mismatch with BT.601 when we keep the six msbs. If we throw away one more bit we get matches for BT.601. BT.709 matches even with 6 bits, as do the pipe B planes with their programmable CSC. Also IVB and KBL were both happy with 6 bits, so doesn't seem that that these CHV mismatches are due to bugs in our code, just the hw is a bit imprecise. v2: s/bi/bit/ in the subject (Nicholas) Cc: Uma Shankar <uma.shankar@intel.com> Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Reviewed-by: Uma Shankar <uma.shanka@intel.com> Tested-by: Uma Shankar <uma.shankar@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2019-07-08tests/kms_plane: Test all YCbCr encodings/rangesVille Syrjälä
Test all support YCbCr encoding/range combinations. So far we've only been testing one particular combo. v2: Use igt_create_fb_with_bo_size() and hand roll the solid fills Cc: Uma Shankar <uma.shankar@intel.com> Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> #v1 Reviewed-by: Uma Shankar <uma.shankar@intel.com> #v1 Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2019-06-12tests/kms_plane: Make sure the crcs aren't all equalVille Syrjälä
Make sure there is at least one unique crc among the set of reference crcs. This avoids the test succeeding when the plane is never even on, as happened with SDR planes on icl after I fumbled switchhing the pipe HDR and non-HDR modes. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Simon Ser <simon.ser@intel.com>
2019-05-28tests/kms_plane: Test C8 pixel formatVille Syrjälä
Now that igt_fb has rudimentary C8 support let's test it. We have to generate a custom palette for it of course. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
2019-04-02tests/kms_plane: Fix crop testVille Syrjälä
Set the src/dst viewports correctly when trying to crop off the edges. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110296 Fixes: 80eb61459791 ("tests/kms_plane: Remove the upscaling requirement") Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2019-03-29tests/kms_plane: Test all modifiers as wellVille Syrjälä
Instead of just testing each pixel format let's test every format+modifier combo. Obviously testing with solid filled fbs isn't the most effective way to detect tiling problems, but we can't really do much more if we want to keep comparing YUV vs. RGB results (unless we start to render the RGB content in a way that matches the YUV subsampling behaviour of the hardware). Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2019-03-29tests/kms_plane: Eliminate modeset between every planeVille Syrjälä
Move the pipe/primary plane stuff outside the plane loop so that we can avoid all that overhead (including a modeset) when switching from one plane to another. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2019-03-29tests/kms_plane: Reduce the plane size 64x64Ville Syrjälä
Reduce the plane size further to speed up the test. 64x64 is the universal i915 minimum cursor size so we'll use that. And since we chose wisely we'll make cursors use the reduced size as well. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2019-03-29tests/kms_plane: Remove the upscaling requirementVille Syrjälä
No point in requiring upscaling when trying to use a small fb to test pixel formats. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2019-03-19tests/kms_plane: Use just one valid outputArkadiusz Hiler
Since those are just pipe CRC tests output does not really matter. Instead of running the test number-of-connected-outputs times per pipe, let's run them just once. Cc: Martin Peres <martin.peres@free.fr> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
2019-03-19tests/kms_plane: Print count of mismatched colorsArkadiusz Hiler
Currently we are printing one igt_warn for each CRC mismatch, which gets quite overwhelming with having to see the same error 8 times for each color tested: WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3 WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3 WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3 WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3 WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3 WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3 WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3 WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3 Since the most interesting information here is which format on which pipe/plane is broken we can skip igt_warn just once. For those weirder and rarer case where just certain colors would fail we still provide the count and the mask of color array indices that failed: WARNING: CRC mismatches with format NV12 (0x3231564e) on A.3 with 8/8 solid colors tested (0xFF) v2 (Petri): Print a mask so it's possible to know which colors failed. Cc: Martin Peres <martin.peres@linux.intel.com> Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Martin Peres <martin.peres@linux.intel.com> Signed-off-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
2019-03-14tests/kms_plane: Set output to PIPE_NONE at end of test_format_planeNicholas Kazlauskas
AMDGPU rejects commits that have an active CRTC without an active primary plane. The pixel-format-pipe-* tests fail on AMDGPU during the cleanup at the end of the test due to the final commit disabling all the planes but not the CRTC. Disable the CRTC when cleaning up by setting the output to PIPE_NONE. Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2019-03-13lib/igt_fb: better format printingDaniel Vetter
Steal if from kms_plane.c and put it into igt_fb.h Also tiny bikeshed to remove the space, so it fits more tidily into the usual name1=value1, name2=value2 style printing. v2: Rebase v3: It better compile :-/ Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> (v1) Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2019-03-13tests/kms_plane: Reduce execution time by reducing source size and ↵Maarten Lankhorst
performing upscaling. Execution time is way too high because of all the various conversion routines and inefficient accesses done by pixman on uncached memory. Fix it by reducing the source fb siaze, and using scaling to increase to span the entire crtc. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> [mlankhorst: Set src w/h to upscaled fb w/h to remove a magic constant.] Reviewed-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com>
2019-03-12Revert "tests: kms_plane: Disable XBGR8888"Arkadiusz Hiler
This reverts commit 067a68969b2d41e101ac778b06f2743fa69b27ab. With the kms_plane pixel format tests now exhaustively testing all the formats even with early CRC mismatches, it's better to not hide such issues in IGT. There are other systems in place to do such things. Cc: Maxime Ripard <maxime.ripard@bootlin.com> Cc: Daniel Vetter <daniel@ffwll.ch> Reviewed-by: Martin Peres <martin.peres@linux.intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2019-03-12tests/kms_plane: Keep testing pixel formats even if one failsArkadiusz Hiler
In the pixel-format-pipe-*-planes* family of subtests currently we exit early if there is any CRC mismatch, leaving all the remaining formats untested. Let's fix that by moving the assert till after all the iterations. Also log each mismatch with its context in a single line so that it's easy to look for. Cc: Daniel Vetter <daniel@ffwll.ch> Reviewed-by: Martin Peres <martin.peres@linux.intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2019-03-12tests/kms_plane: Open DRM DEVICE with DRIVER_ANYMamta Shukla
Open DRM DEVICE with DRIVER_ANY so that this test can run in other drivers as well. Signed-off-by: Mamta Shukla <mamtashukla555@gmail.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-01-08tests: Enable plane tests for AMDGPUNicholas Kazlauskas
The i915 specific feature requirements that would have failed subtests from kms_plane, kms_plane_multiple and kms_plane_scaling have been conditionally guarded against. These tests can now be run on AMDGPU with the i915 specific tests skipped appropriately. Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Reviewed-by: Harry Wentland <harry.wentland@amd.com>
2018-12-04tests/kms_plane: add source clamping testJuha-Pekka Heikkila
Add test which create fb bigger than plane and clamp fb from all sides. v2 (Maarten Lankhorst): Fix typo, create different color border around clamped fb where during test border should stay outside visible area. Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>