[igt-dev] [i-g-t V6 10/81] tests/i915/kms_big_fb: Document each subtest for testplan
Karthik B S
karthik.b.s at intel.com
Mon Aug 14 04:07:33 UTC 2023
On 8/12/2023 12:15 AM, Bhanuprakash Modem wrote:
> Add documentation for all kms tests which is used by IGT testplan
> documentation.
>
> V2: - Fix driver requirement
> V3: - Fix functionality
>
> Cc: Karthik B S <karthik.b.s at intel.com>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem at intel.com>
> ---
> tests/i915/kms_big_fb.c | 183 ++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 183 insertions(+)
>
> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
> index 44ea117a1..a0067aa9c 100644
> --- a/tests/i915/kms_big_fb.c
> +++ b/tests/i915/kms_big_fb.c
> @@ -21,6 +21,12 @@
> * IN THE SOFTWARE.
> */
>
> +/**
> + * TEST: kms big fb
> + * Category: Display
> + * Description: Test big framebuffers
> + */
> +
> #include "igt.h"
> #include <errno.h>
> #include <stdbool.h>
> @@ -582,6 +588,105 @@ max_hw_stride_async_flip_test(data_t *data)
> return true;
> }
>
> +/**
> + * SUBTEST: linear-%dbpp-rotate-%d
> + * Description: Sanity check if addfb ioctl works correctly for given combination
> + * of Linear modifier with %arg[1]-bpp & %arg[2]-rotation
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop, rotation
Do we have 'big_displays' being used in any other tests? If not,
could/should it be 'big_fbs' rather than 'big_displays'?
If you agree, then please update this while merging.
Eithercase this is not a blocker and the patch LGTM overall.
Reviewed-by: Karthik B S <karthik.b.s at intel.com>
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * arg[1].values: 8, 16, 32, 64
> + * arg[2].values: 0, 90, 180, 270
> + */
> +
> +/**
> + * SUBTEST: %s-%dbpp-rotate-%d
> + * Description: Sanity check if addfb ioctl works correctly for given combination
> + * of %arg[1] with %arg[2]-bpp & %arg[3]-rotation
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop, rotation, tiling
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * arg[1]:
> + *
> + * @4-tiled: TILE-4 modifier
> + * @x-tiled: TILE-X modifier
> + * @y-tiled: TILE-Y modifier
> + * @yf-tiled: TILE-YF modifier
> + *
> + * arg[2].values: 8, 16, 32, 64
> + * arg[3].values: 0, 90, 180, 270
> + */
> +
> +/**
> + * SUBTEST: linear-max-hw-stride-%dbpp-rotate-%d
> + * Description: Test maximum hardware supported stride length for given combination
> + * of linear modifier with max hardware stride length, %arg[1]-bpp,
> + * and %arg[2]-rotation
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop, rotation
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * arg[1].values: 32, 64
> + * arg[2].values: 0, 180
> + */
> +
> +/**
> + * SUBTEST: %s-max-hw-stride-%dbpp-rotate-%d
> + * Description: Test maximum hardware supported stride length for given combination
> + * of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
> + * and %arg[3]-rotation
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop, rotation, tiling
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * arg[1]:
> + *
> + * @4-tiled: TILE-4 modifier
> + * @x-tiled: TILE-X modifier
> + * @y-tiled: TILE-Y modifier
> + * @yf-tiled: TILE-YF modifier
> + *
> + * arg[2].values: 32, 64
> + * arg[3].values: 0, 180
> + */
> +
> +/**
> + * SUBTEST: %s-max-hw-stride-%dbpp-rotate-%d-%s
> + * Description: Test maximum hardware supported stride length for given combination
> + * of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
> + * and %arg[3]-rotation with %arg[4] mode
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop, rotation, tiling
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * arg[1]:
> + *
> + * @4-tiled: TILE-4 modifier
> + * @x-tiled: TILE-X modifier
> + * @y-tiled: TILE-Y modifier
> + * @yf-tiled: TILE-YF modifier
> + *
> + * arg[2].values: 32, 64
> + * arg[3].values: 0, 180
> + *
> + * arg[4]:
> + *
> + * @async-flip: Async flip
> + * @hflip: H-flip
> + * @hflip-async-flip: Async & H-flip
> + */
> static void test_scanout(data_t *data)
> {
> igt_output_t *output;
> @@ -627,6 +732,32 @@ static void test_scanout(data_t *data)
> igt_skip("unsupported configuration\n");
> }
>
> +/**
> + * SUBTEST: linear-addfb-size-overflow
> + * Description: Sanity check if addfb ioctl fails correctly for (Linear) modifier
> + * with small bo.
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * SUBTEST: %s-addfb-size-overflow
> + * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
> + * with small bo.
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop, tiling
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * arg[1]:
> + *
> + * @4-tiled: TILE-4
> + * @x-tiled: TILE-X
> + * @y-tiled: TILE-Y
> + * @yf-tiled: TILE-YF
> + */
> static void
> test_size_overflow(data_t *data)
> {
> @@ -671,6 +802,32 @@ test_size_overflow(data_t *data)
> gem_close(data->drm_fd, bo);
> }
>
> +/**
> + * SUBTEST: linear-addfb-size-offset-overflow
> + * Description: Sanity check if addfb ioctl fails correctly for (Linear) modifier
> + * and offsets with small bo
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * SUBTEST: %s-addfb-size-offset-overflow
> + * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
> + * and offsets with small bo
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop, tiling
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * arg[1]:
> + *
> + * @4-tiled: TILE-4
> + * @x-tiled: TILE-X
> + * @y-tiled: TILE-Y
> + * @yf-tiled: TILE-YF
> + */
> static void
> test_size_offset_overflow(data_t *data)
> {
> @@ -729,6 +886,32 @@ static int rmfb(int fd, uint32_t id)
> return err;
> }
>
> +/**
> + * SUBTEST: linear-addfb
> + * Description: Sanity check if addfb ioctl works correctly with Linear modifier
> + * for given size and strides of fb
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * SUBTEST: %s-addfb
> + * Description: Sanity check if addfb ioctl works correctly with %arg[1] modifier
> + * for given size and strides of fb
> + * Driver requirement: any
> + * Functionality: big_displays, kms_gem_interop, tiling
> + * Mega feature: General Display Features
> + * Run type: FULL
> + * Test category: functionality test
> + *
> + * arg[1]:
> + *
> + * @4-tiled: TILE-4
> + * @x-tiled: TILE-X
> + * @y-tiled: TILE-Y
> + * @yf-tiled: TILE-YF
> + */
> static void
> test_addfb(data_t *data)
> {
More information about the igt-dev
mailing list