summaryrefslogtreecommitdiff
path: root/tests/kms_atomic.c
AgeCommit message (Collapse)Author
2016-09-26kms_atomic: plane_primary: Allow modeset if atomic check returns -EINVALLiu Ying
Allowing modeset may prevent the test case from failing in case the atomic check phase finds the userspace doesn't allow modeset for the commit and returns -EINVAL. A real case is to run the test case on imx-drm which requires a full modeset when we change an active plane's configuration, e.g., pixel format and stride. Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Marius Vlad <marius.c.vlad@intel.com> Cc: Micah Fedke <micah.fedke@collabora.com> Cc: Daniel Stone <daniels@collabora.com> Signed-off-by: Liu Ying <gnuiyl@gmail.com>
2016-09-26kms_atomic: Expose atomic commit flags to crtc_commit_atomic()Liu Ying
This patch exposes atomic commit flags to crtc_commit_atomic() so that users of the macro may control the flags. Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Marius Vlad <marius.c.vlad@intel.com> Cc: Micah Fedke <micah.fedke@collabora.com> Cc: Daniel Stone <daniels@collabora.com> Signed-off-by: Liu Ying <gnuiyl@gmail.com>
2016-04-20kms_atomic: Fix crtc_id comparison failing.Robert Foss
Fixed ctrc_id comparison failing due to bad initialization of crtc variable. Signed-off-by: Robert Foss <robert.foss@collabora.com> Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
2016-04-14tests: Open any driverTomeu Vizoso
For those tests that now pass on drivers other than i915, call drm_open_driver_master with DRIVER_ANY. Also do so from igt_enable_connectors. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-05kms_atomic: Skip rather than fail on non-atomic driversMatt Roper
i915 does not yet support the atomic modesetting interface by default; at the moment it must be turned on explicitly via an 'i915.nuclear_pageflip' kernel command line option. We should skip (rather than fail) this IGT test when running on kernels that don't advertise support for atomic modesetting. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93014 Signed-off-by: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
2016-02-26kms_atomic: drop unnecessary connector looping from plane_primary testMatt Roper
Local variable num_connectors is never initialized before being auto-incremented in the loop. If we wind up with a non-zero garbage value, it will lead us to try to write to an out-of-bounds array index. We should probably initialize it to zero before use. However on closer inspection, the plane_primary test doesn't actually wind up using the connector list or number of connectors, so just remove the whole block of code; it was probably brought in by accident as part of a copy-paste operation. Cc: Daniel Stone <daniels@collabora.com> Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
2016-01-29tests/igt_fb: rename igt_get_all_formats to igt_get_all_cairo_formatsPaulo Zanoni
I recently had this discussion with Daniel where I didn't want to use igt_drm_format_to_bpp() because it uses the format_desc array, and igt_fb currently assumes that all the format_desc formats have a matching valid Cairo format, so I wouldn't be able to easily add formats such as ARGB2101010. The function that has the assumption mentioned above is igt_get_all_formats: its current users call igt_get_all_formats, and then call cairo-dependent functions, such as igt_get_cairo_ctx on the returned formats. In order to document the current behavior and prevent any problems in case we start adding new formats without matching Cairo versions to format_desc, rename igt_get_all_formats to igt_get_all_cairo_formats and make it explicitly check for CAIRO_FORMAT_INVALID. Requested-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
2016-01-08lib: Extract some common fb create+fill methods into helpersVille Syrjälä
Several tests do one or more of the following: * igt_create_fb() + igt_paint_test_pattern() * igt_create_color_fb() + igt_paint_test_pattern() * igt_create_fb() + igt_paint_image() Extract them into new helpers: igt_create_pattern_fb(), igt_create_color_pattern_fb(), igt_create_image_fb(). v2: Fix typos, and improve API docs (Thomas) Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-11-03kms_atomic: Add basic atomic modesetting testsDaniel Stone
Add tests for KMS atomic modesetting, to exercise the basic interface and test failure/corner cases. Should ensure coherency between the legacy and atomic interfaces. v2: New patch. v3: Disable connector checking for now, as it was causing GPU hangs on newer kernels. v4: Rebase. v5: Use do_ioctl or do_ioctl_err consistently. Use igt_assert_*() helper macros rather than igt_assert() directly. Move assertions into helper/check functions. Define atomic commit helper. v6: Use do_ioctl_err, and define macros to move errors to actual callsite, rather than helper functions. Co-authored-by: Micah Fedke <micah.fedke@collabora.com> Signed-off-by: Daniel Stone <daniels@collabora.com>