[igt-dev] [PATCH i-g-t v3 0/7] Improve description of tests used by i915 validation

Mauro Carvalho Chehab mauro.chehab at linux.intel.com
Thu May 25 06:37:58 UTC 2023


From: Mauro Carvalho Chehab <mchehab at kernel.org>

This patch series was entirely generated by a script which imports data
from an internal spreadsheet containing additional documentation from
IGT tests.

Once we get this added, it should be easy to edit each test file to
improve tests documentation.

---

v3:
- add a typo fix as the first patch to avoid adding a different text
  after running my scripts;
- fixed a bug at the logic which simplifies the subtests by moving
  fields to TEST:
- did several fixes at the original spreadsheet, in order to place
  descriptions at the right place.

v2:
- Patches 1 to 4 unchanged. R-B added to them.
- Use commas instead of new lines for Feature set update;
- Don't add the same feature twice;
- Don't add functionality if identical to a comment substring.

Diff against v2:

	diff --git a/tests/core_hotunplug.c b/tests/core_hotunplug.c
	index 9a027bfdf5a8..4d6a721f0d28 100644
	--- a/tests/core_hotunplug.c
	+++ b/tests/core_hotunplug.c
	@@ -43,18 +43,20 @@
	  * TEST: core hotunplug
	  * Description: Examine behavior of a driver on device hot unplug
	  * Feature: SMI, core
	- * Functionality: device hotplug
	- * Test category: SysMan
	  *
	  * SUBTEST: hotrebind
	  * Description:
	  *   Check if the driver can be cleanly rebound to a device with a still open hot unbound driver
	  *   instance
	+ * Functionality: device hotplug
	  * Run type: FULL
	+ * Test category: SysMan
	  *
	  * SUBTEST: hotrebind-lateclose
	  * Description: Check if a hot unbound driver instance still open after hot rebind can be cleanly released
	+ * Functionality: device hotplug
	  * Run type: FULL
	+ * Test category: SysMan
	  *
	  * SUBTEST: hotreplug
	  * Description: Check if a hot unplugged and still open device can be cleanly restored
	@@ -66,7 +68,9 @@
	  *
	  * SUBTEST: hotunbind-rebind
	  * Description: Check if the driver can be cleanly unbound from an open device, then released and rebound
	+ * Functionality: device hotplug
	  * Run type: FULL
	+ * Test category: SysMan
	  *
	  * SUBTEST: hotunplug-rescan
	  * Description: Check if an open device can be cleanly unplugged, then released and restored
	@@ -74,7 +78,9 @@
	  *
	  * SUBTEST: unbind-rebind
	  * Description: Check if the driver can be cleanly unbound from a device believed to be closed, then rebound
	+ * Functionality: device hotplug
	  * Run type: BAT
	+ * Test category: SysMan
	  *
	  * SUBTEST: unplug-rescan
	  * Description: Check if a device believed to be closed can be cleanly unplugged, then restored
	diff --git a/tests/debugfs_test.c b/tests/debugfs_test.c
	index d6439e139790..5ee615abaf6d 100644
	--- a/tests/debugfs_test.c
	+++ b/tests/debugfs_test.c
	@@ -33,11 +33,15 @@
	  * TEST: debugfs test
	  * Description: Read entries from debugfs, hwmon and sysfs paths.
	  * Feature: core
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-hwmon
	- * Description: Read all entries from hwmon path
	+ * Category: Infrastructure
	+ * Description:
	+ *   Read all entries from hwmon path
	+ *   validating debugfs entries
	+ * Functionality: debugfs entries
	  * Run type: BAT
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: read_all_entries
	  * Category: Infrastructure
	@@ -47,6 +51,7 @@
	  * Functionality: debugfs entries
	  * Run type: BAT
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: read_all_entries_display_off
	  * Description: Read all debugfs entries with display on/off.
	@@ -64,6 +69,7 @@
	  * Functionality: debugfs entries
	  * Run type: FULL
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  */
	 
	 IGT_TEST_DESCRIPTION("Read entries from debugfs, hwmon and sysfs paths.");
	diff --git a/tests/dmabuf.c b/tests/dmabuf.c
	index acd3080cf3d3..4bc9b35b619d 100644
	--- a/tests/dmabuf.c
	+++ b/tests/dmabuf.c
	@@ -27,9 +27,9 @@
	  * TEST: dmabuf
	  * Description: Kernel selftests for the dmabuf API
	  * Feature: mapping, prime
	- *
	- * SUBTEST: all-tests
	  * Run type: BAT
	+ *
	+ * SUBTEST: all-tests
	  */
	 
	 IGT_TEST_DESCRIPTION("Kernel selftests for the dmabuf API");
	diff --git a/tests/i915/api_intel_allocator.c b/tests/i915/api_intel_allocator.c
	index 7759032b75db..cc6f8daa424b 100644
	--- a/tests/i915/api_intel_allocator.c
	+++ b/tests/i915/api_intel_allocator.c
	@@ -12,7 +12,6 @@
	 /**
	  * TEST: api intel allocator
	  * Category: Infrastructure
	- * Feature: igt_core
	  * Functionality: virtual address ranges
	  * Run type: FULL
	  * Sub-category: IGT Lib
	@@ -20,56 +19,72 @@
	  *
	  * SUBTEST: alloc-simple
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: default-alignment
	  * Description:
	  *   For simple allocator check does default alignment is properly handled in open and alloc
	  *   functions
	  *   checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: execbuf-with-allocator
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: fork-simple-once
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: fork-simple-stress
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: fork-simple-stress-signal
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: gem-pool
	  * Description:
	  *   Verifies creating and executing bb from gem pool
	  *   checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: open-vm
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: reloc-allocator
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: reopen
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: reopen-fork
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: reserve-simple
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: simple-allocator
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: standalone
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: two-level-inception
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  *
	  * SUBTEST: two-level-inception-interruptible
	  * Description: checking the virtual address ranges
	+ * Feature: igt_core
	  */
	 
	 #define OBJ_SIZE 1024
	diff --git a/tests/i915/api_intel_bb.c b/tests/i915/api_intel_bb.c
	index 09d90199ef4a..38ffd763b6f6 100644
	--- a/tests/i915/api_intel_bb.c
	+++ b/tests/i915/api_intel_bb.c
	@@ -43,95 +43,210 @@
	 #include "i915/i915_blt.h"
	 /**
	  * TEST: api intel bb
	- * Category: Infrastructure
	  * Description: intel_bb API check.
	- * Feature: igt_core
	- * Functionality: dummy buffer creation & submission
	  * Run type: FULL
	- * Sub-category: IGT Lib
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: add-remove-objects
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: bb-with-allocator
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: blit-noreloc-keep-cache
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: blit-noreloc-purge-cache
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: blit-reloc-keep-cache
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: blit-reloc-purge-cache
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: crc32
	  * Description: Compare cpu and gpu crc32 sums on input object
	+ * Feature: igt_core
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: delta-check
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: destroy-bb
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: full-batch
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: intel-bb-blit-none
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: intel-bb-blit-x
	+ * Feature: igt_core
	  *
	  * SUBTEST: intel-bb-blit-y
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: lot-of-buffers
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: misplaced-blitter
	+ * Category: Infrastructure
	  * Description:
	  *   Execute intel_bb with set of engines provided by userspace
	  *   checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: object-noreloc-keep-cache-simple
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: object-noreloc-purge-cache-simple
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: object-reloc-keep-cache
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: object-reloc-purge-cache
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: offset-control
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: purge-bb
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: render
	+ * Feature: igt_core
	  *
	  * SUBTEST: render-ccs
	+ * Feature: igt_core
	  *
	  * SUBTEST: reset-bb
	+ * Category: Infrastructure
	  * Description:
	  *   Ensure reset is possible on fresh bb
	  *   checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: reset-flags
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: simple-bb
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: simple-bb-ctx
	+ * Category: Infrastructure
	  * Description: checking dummy buffer creation & submission
	+ * Feature: igt_core
	+ * Functionality: dummy buffer creation & submission
	+ * Sub-category: IGT Lib
	+ * Test category: GEM_Legacy
	  */
	 
	 #define PAGE_SIZE 4096
	diff --git a/tests/i915/gem_basic.c b/tests/i915/gem_basic.c
	index 8df581bb3e48..6843bec16748 100644
	--- a/tests/i915/gem_basic.c
	+++ b/tests/i915/gem_basic.c
	@@ -43,27 +43,33 @@
	 #include "lib/igt_device_scan.h"
	 /**
	  * TEST: gem basic
	- * Category: Infrastructure
	  * Description: Tests basic gem_create and gem_close IOCTLs
	- * Functionality: driver handler
	- * Sub-category: i915
	  *
	  * SUBTEST: bad-close
	+ * Category: Infrastructure
	  * Description: Verify that gem_close fails with bad params.
	  * Feature: gem_core
	+ * Functionality: driver handler
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-close
	+ * Category: Infrastructure
	  * Description: Verify basic functionality of gem_create and gem_close.
	  * Feature: gem_core
	+ * Functionality: driver handler
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-fd-close
	+ * Category: Infrastructure
	  * Description: Verify that closing drm driver is possible with opened gem object.
	  * Feature: gem_core
	+ * Functionality: driver handler
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: multigpu-create-close
	diff --git a/tests/i915/gem_busy.c b/tests/i915/gem_busy.c
	index 34f6c5984b0b..0f48dbbfe75c 100644
	--- a/tests/i915/gem_busy.c
	+++ b/tests/i915/gem_busy.c
	@@ -32,49 +32,52 @@
	 #include "igt_vgem.h"
	 /**
	  * TEST: gem busy
	- * Category: Desktop client
	  * Description: Basic check of busy-ioctl ABI.
	  * Feature: cmd_submission
	- * Sub-category: i915
	- * Test category: GEM_Legacy
	+ * Run type: FULL
	  *
	  * SUBTEST: busy
	+ * Category: Desktop client
	  * Description: Basic test to check busyness of each engine.
	  * Functionality: semaphore
	- * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: close-race
	+ * Category: Desktop client
	  * Description: Test to check race condition by randomly closing the handle using gem_close.
	  * Functionality: semaphore
	- * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: extended
	+ * Category: Desktop client
	  * Description: Extended test to check busyness of dwstore-capable engines.
	  * Functionality: semaphore
	- * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: hang
	  * Description: Basic test to check hang state behaviour of engines with increased timeout.
	- * Run type: FULL
	  *
	  * SUBTEST: hang-extended
	  * Description:
	  *   Extended test to check hang state behaviour of dwstore-capable engines with increased
	  *   timeout.
	- * Run type: FULL
	  *
	  * SUBTEST: parallel
	+ * Category: Desktop client
	  * Description:
	  *   Extended test to check busyness of dwstore-capable engines while doing parallel
	  *   execution.
	  * Functionality: semaphore
	- * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: semaphore
	  * Description:
	  *   Test to check busyness of engine on submitting a new batch while engine is busy in executing
	  *   previous batch.
	- * Run type: FULL
	  */
	 
	 #define PAGE_ALIGN(x) ALIGN(x, 4096)
	diff --git a/tests/i915/gem_close_race.c b/tests/i915/gem_close_race.c
	index e02cea17ccad..1a2efeab293f 100644
	--- a/tests/i915/gem_close_race.c
	+++ b/tests/i915/gem_close_race.c
	@@ -50,23 +50,26 @@
	 #include "igt_device_scan.h"
	 /**
	  * TEST: gem close race
	- * Category: Infrastructure
	  * Description: Test try to race gem_close against workload submission.
	- * Functionality: driver handler
	- * Sub-category: i915
	  *
	  * SUBTEST: basic-process
	+ * Category: Infrastructure
	  * Description: Basic workload submission.
	  * Feature: synchronization
	+ * Functionality: driver handler
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-threads
	+ * Category: Infrastructure
	  * Description:
	  *   Share buffer handle across different drm fd's and trying to race gem_close against
	  *   continuous workload with minimum timeout.
	  * Feature: synchronization
	+ * Functionality: driver handler
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: contexts
	diff --git a/tests/i915/gem_create.c b/tests/i915/gem_create.c
	index ed79031f59de..3320717f25cf 100644
	--- a/tests/i915/gem_create.c
	+++ b/tests/i915/gem_create.c
	@@ -68,7 +68,6 @@
	  *   Ensure that basic gem_create and gem_create_ext works and that invalid input combinations
	  *   are rejected.
	  * Run type: FULL
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: busy-create
	  * Category: Infrastructure
	@@ -76,6 +75,7 @@
	  * Feature: mapping
	  * Functionality: buffer management
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-clear
	  * Category: Infrastructure
	@@ -83,6 +83,7 @@
	  * Feature: mapping
	  * Functionality: buffer management
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-ext-cpu-access-big
	  * Description:
	@@ -102,6 +103,7 @@
	  * Feature: mapping
	  * Functionality: buffer management
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-ext-placement-each
	  * Category: Infrastructure
	@@ -109,6 +111,7 @@
	  * Feature: mapping
	  * Functionality: buffer management
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-ext-placement-sanity-check
	  * Category: Infrastructure
	@@ -116,6 +119,7 @@
	  * Feature: mapping
	  * Functionality: buffer management
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-invalid-size
	  * Category: Infrastructure
	@@ -123,6 +127,7 @@
	  * Feature: mapping
	  * Functionality: buffer management
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-massive
	  * Category: Infrastructure
	@@ -130,6 +135,7 @@
	  * Feature: mapping
	  * Functionality: buffer management
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-size-update
	  * Category: Infrastructure
	@@ -137,6 +143,7 @@
	  * Feature: mapping
	  * Functionality: buffer management
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-valid-nonaligned
	  * Category: Infrastructure
	@@ -146,10 +153,12 @@
	  * Feature: mapping
	  * Functionality: buffer management
	  * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: hog-create
	  * Description: Create buffer objects while GPU is busy.
	  * Feature: mapping
	+ * Test category: GEM_Legacy
	  */
	 
	 IGT_TEST_DESCRIPTION("Ensure that basic gem_create and gem_create_ext works"
	diff --git a/tests/i915/gem_ctx_create.c b/tests/i915/gem_ctx_create.c
	index 3c806ee5b9d9..95e219482de6 100644
	--- a/tests/i915/gem_ctx_create.c
	+++ b/tests/i915/gem_ctx_create.c
	@@ -38,21 +38,23 @@
	 /**
	  * TEST: gem ctx create
	  * Description: Test the context create ioctls
	- * Feature: context
	  *
	  * SUBTEST: active
	  * Description:
	  *   For each engine calculate the average performance of context creation execution and
	  *   exercise context reclaim
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: active-all
	  * Description: Calculate the average performance of context creation and it's execution using all engines
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: basic
	  * Category: Infrastructure
	  * Description: Test random context creation
	+ * Feature: context
	  * Functionality: context management
	  * Run type: BAT
	  * Sub-category: i915
	@@ -61,6 +63,7 @@
	  * SUBTEST: basic-files
	  * Category: Infrastructure
	  * Description: Exercise implicit per-fd context creation
	+ * Feature: context
	  * Functionality: context management
	  * Run type: BAT
	  * Sub-category: i915
	@@ -68,48 +71,57 @@
	  *
	  * SUBTEST: ext-param
	  * Description: Verify valid and invalid context extensions
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: files
	  * Description: Exercise implicit per-fd context creation on 1 CPU for long duration
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: forked-active
	  * Description:
	  *   For each engine calculate the average performance of context creation and execution on
	  *   multiple parallel processes
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: forked-active-all
	  * Description:
	  *   Calculate the average performance of context creation and it's execution using all engines
	  *   on multiple parallel processes
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: forked-files
	  * Description: Exercise implicit per-fd context creation on all CPUs for long duration
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: hog
	  * Description:
	  *   For each engine calculate the average performance of context creation and execution while
	  *   all other engines are hogging the resources
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: iris-pipeline
	  * Description: Set, validate and execute particular context params
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: maximum-mem
	  * Description:
	  *   Create contexts upto available RAM size, calculate the average performance of their
	  *   execution on multiple parallel processes
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: maximum-swap
	  * Description:
	  *   Create contexts upto available RAM+SWAP size, calculate the average performance of their
	  *   execution on multiple parallel processes
	+ * Feature: context
	  * Run type: FULL
	  */
	 
	diff --git a/tests/i915/gem_ctx_exec.c b/tests/i915/gem_ctx_exec.c
	index 4109eb3f03d1..bd6671ec8d90 100644
	--- a/tests/i915/gem_ctx_exec.c
	+++ b/tests/i915/gem_ctx_exec.c
	@@ -50,46 +50,60 @@
	 /**
	  * TEST: gem ctx exec
	  * Description: Test context batch buffer execution.
	- * Feature: context
	- * Functionality: command submission
	- * Sub-category: i915
	  *
	  * SUBTEST: basic
	  * Category: Infrastructure
	  * Description: Check the basic context batch buffer execution.
	+ * Feature: context
	+ * Functionality: command submission
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-close-race
	  * Category: Infrastructure
	  * Description: Race the execution and interrupt handlers along a context, while closing it at a random time.
	+ * Feature: context
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-invalid-context
	  * Category: Infrastructure
	  * Description: Verify that execbuf with invalid context fails.
	+ * Feature: context
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-nohangcheck
	  * Category: Server
	  * Description: Verify that contexts are automatically shotdown on close, if hangchecking is disabled.
	+ * Feature: context
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-norecovery
	  * Category: Server
	  * Description: Check the status of context after a hang by setting and unsetting the RECOVERABLE.
	+ * Feature: context
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: eviction
	  * Description: Check maximum number of buffers it can evict for a context.
	+ * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: reset-pin-leak
	  * Description: Check if the kernel doesn't leak the vma pin_count for the last context on reset.
	+ * Feature: context
	  * Run type: FULL
	  */
	 
	diff --git a/tests/i915/gem_ctx_isolation.c b/tests/i915/gem_ctx_isolation.c
	index 4f806a22cb4a..d50a90597e6f 100644
	--- a/tests/i915/gem_ctx_isolation.c
	+++ b/tests/i915/gem_ctx_isolation.c
	@@ -28,38 +28,48 @@
	 #include "igt_types.h"
	 /**
	  * TEST: gem ctx isolation
	- * Category: Infrastructure
	  * Run type: FULL
	- * Sub-category: HW
	  *
	  * SUBTEST: clean
	+ * Category: Infrastructure
	  * Feature: context
	  * Functionality: security
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: dirty-create
	+ * Category: Infrastructure
	  * Feature: context
	  * Functionality: security
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: dirty-switch
	+ * Category: Infrastructure
	  * Feature: context
	  * Functionality: security
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: nonpriv
	+ * Category: Infrastructure
	  * Feature: context
	  * Functionality: security
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: nonpriv-switch
	+ * Category: Infrastructure
	  * Feature: context
	  * Functionality: security
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: preservation
	+ * Category: Infrastructure
	  * Feature: context
	  * Functionality: security
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: preservation-S3
	@@ -69,8 +79,10 @@
	  * Feature: context
	  *
	  * SUBTEST: preservation-reset
	+ * Category: Infrastructure
	  * Feature: context
	  * Functionality: security
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  */
	 
	diff --git a/tests/i915/gem_ctx_param.c b/tests/i915/gem_ctx_param.c
	index dddc946a28af..7c59fe3ed0db 100644
	--- a/tests/i915/gem_ctx_param.c
	+++ b/tests/i915/gem_ctx_param.c
	@@ -32,79 +32,143 @@
	 #include "i915/gem_vm.h"
	 /**
	  * TEST: gem ctx param
	- * Category: Infrastructure
	  * Description: Basic test for context set/get param input validation.
	- * Functionality: context management
	  * Run type: FULL
	- * Sub-category: i915
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic
	+ * Category: Infrastructure
	  * Description: Basic test for context get/set param ioctls using valid context
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-default
	+ * Category: Infrastructure
	  * Description: Basic test for context get/set param ioctls using default context
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: get-priority-new-ctx
	+ * Category: Infrastructure
	  * Description:
	  *   Test performed with context param set to priority.
	  *   Verify that priority is default for newly created context
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-ctx-get
	+ * Category: Infrastructure
	  * Description: Verify that context get param ioctl using invalid context returns relevant error
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-ctx-set
	+ * Category: Infrastructure
	  * Description: Verify that context set param ioctl using invalid context returns relevant error
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-get-engines
	+ * Category: Infrastructure
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-get-no-zeromap
	+ * Category: Infrastructure
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-get-ringsize
	+ * Category: Infrastructure
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-param-get
	+ * Category: Infrastructure
	  * Description: Checks that fetching context parameters using an unused param value is erroneous
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-param-set
	+ * Category: Infrastructure
	  * Description: Checks that setting context parameters using an unused param value is erroneous
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-set-no-zeromap
	+ * Category: Infrastructure
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-set-ringsize
	+ * Category: Infrastructure
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-size-get
	+ * Category: Infrastructure
	  * Description: Verify that context get param ioctl returns valid size for valid context
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-size-set
	+ * Category: Infrastructure
	  * Description: Verify that context set param ioctl using invalid size returns relevant error
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: non-root-set
	+ * Category: Infrastructure
	  * Description: Verify that context set param ioctl returns relevant error in non root mode
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: root-set
	+ * Category: Infrastructure
	  * Description: Verify that context set param ioctl works fine in root mode
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: set-priority-invalid-size
	+ * Category: Infrastructure
	  * Description:
	  *   Test performed with context param set to priority.
	  *   Verify that relevant error is returned on setting invalid ctx size with default priority
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: set-priority-not-supported
	  * Description:
	@@ -113,14 +177,22 @@
	  * Feature: context, no-set-priority
	  *
	  * SUBTEST: set-priority-range
	+ * Category: Infrastructure
	  * Description:
	  *   Test performed with context param set to priority.
	  *   Change priority range to test value overflow
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: vm
	+ * Category: Infrastructure
	  * Description: Tests that multiple contexts can share the same VMA
	  * Feature: context
	+ * Functionality: context management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  */
	 
	 IGT_TEST_DESCRIPTION("Basic test for context set/get param input validation.");
	diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
	index bc5a4b5b41ba..584137db4546 100644
	--- a/tests/i915/gem_ctx_persistence.c
	+++ b/tests/i915/gem_ctx_persistence.c
	@@ -47,76 +47,184 @@
	 #include "sw_sync.h"
	 /**
	  * TEST: gem ctx persistence
	- * Category: Server
	  * Feature: context
	- * Functionality: security
	  * Run type: FULL
	- * Sub-category: Compute
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines-cleanup
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines-hang
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines-hostile
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines-hostile-preempt
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines-mixed
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines-mixed-process
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines-persistence
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines-queued
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: file
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: hang
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: heartbeat-close
	  *
	  * SUBTEST: heartbeat-hang
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: heartbeat-hostile
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: heartbeat-many
	  *
	  * SUBTEST: heartbeat-stop
	  *
	  * SUBTEST: hostile
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: idempotent
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: legacy-engines-cleanup
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: legacy-engines-hang
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: legacy-engines-hostile
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: legacy-engines-hostile-preempt
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: legacy-engines-mixed
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: legacy-engines-mixed-process
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: legacy-engines-persistence
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: legacy-engines-queued
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: many-contexts
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: process
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: processes
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: saturated-hostile
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: saturated-hostile-nopreempt
	  *
	  * SUBTEST: smoketest
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: userptr
	+ * Category: Server
	+ * Functionality: security
	+ * Sub-category: Compute
	+ * Test category: GEM_Legacy
	  */
	 
	 #define RESET_TIMEOUT_MS 2 * MSEC_PER_SEC; /* default: 640ms */
	diff --git a/tests/i915/gem_ctx_shared.c b/tests/i915/gem_ctx_shared.c
	index f29005518c40..ede6db13b265 100644
	--- a/tests/i915/gem_ctx_shared.c
	+++ b/tests/i915/gem_ctx_shared.c
	@@ -50,56 +50,69 @@
	 /**
	  * TEST: gem ctx shared
	  * Description: Test shared contexts.
	- * Feature: context
	  * Run type: FULL
	  *
	  * SUBTEST: Q-in-order
	+ * Feature: context
	  *
	  * SUBTEST: Q-independent
	+ * Feature: context
	  *
	  * SUBTEST: Q-out-order
	+ * Feature: context
	  *
	  * SUBTEST: Q-promotion
	+ * Feature: context
	  *
	  * SUBTEST: Q-smoketest
	+ * Feature: context
	  *
	  * SUBTEST: Q-smoketest-all
	+ * Feature: context
	  *
	  * SUBTEST: create-shared-gtt
	  * Category: Desktop client
	+ * Feature: context
	  * Functionality: context management
	  * Sub-category: Media
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: detached-shared-gtt
	  * Category: Desktop client
	+ * Feature: context
	  * Functionality: context management
	  * Sub-category: Media
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: disjoint-timelines
	  * Category: Desktop client
	+ * Feature: context
	  * Functionality: context management
	  * Sub-category: Media
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: exec-shared-gtt
	  * Category: Desktop client
	+ * Feature: context
	  * Functionality: context management
	  * Sub-category: Media
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: exec-single-timeline
	  * Category: Desktop client
	+ * Feature: context
	  * Functionality: context management
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: exhaust-shared-gtt
	+ * Feature: context
	  *
	  * SUBTEST: exhaust-shared-gtt-lrc
	+ * Feature: context
	  *
	  * SUBTEST: single-timeline
	  * Category: Desktop client
	+ * Feature: context
	  * Functionality: context management
	  * Test category: GEM_Legacy
	  */
	diff --git a/tests/i915/gem_eio.c b/tests/i915/gem_eio.c
	index 241dbd828a2f..a5ebe6d2d187 100644
	--- a/tests/i915/gem_eio.c
	+++ b/tests/i915/gem_eio.c
	@@ -54,151 +54,197 @@
	 #include "sw_sync.h"
	 /**
	  * TEST: gem eio
	- * Category: Infrastructure
	  * Description: Test that specific ioctls report a wedged GPU (EIO).
	  * Run type: FULL
	- * Sub-category: i915
	  *
	  * SUBTEST: banned
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: context-create
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: create
	+ * Category: Infrastructure
	  * Description: Validate i915_gem_create_ioctl, while gpu is wedged for fb scanout.
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: create-ext
	+ * Category: Infrastructure
	  * Description:
	  *   Validate i915_gem_create_ext_ioctl and checks if returns clear backing store while gpu is
	  *   wedged for fb scanout.
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: execbuf
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: hibernate
	+ * Description: Test that specific ioctls report a wedged GPU (EIO) during suspend
	  * Feature: hibernate, reset, suspend
	- * Functionality: Test that specific ioctls report a wedged GPU (EIO) during suspend
	  * Test category: suspend
	  *
	  * SUBTEST: in-flight-10ms
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-1us
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-contexts-10ms
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-contexts-1us
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-contexts-immediate
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-external
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-immediate
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-internal-10ms
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-internal-1us
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-internal-immediate
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-flight-suspend
	+ * Description: Test that specific ioctls report a wedged GPU (EIO) during suspend
	  * Feature: reset, suspend
	- * Functionality: Test that specific ioctls report a wedged GPU (EIO) during suspend
	  * Test category: suspend
	  *
	  * SUBTEST: kms
	  * Feature: kms_gem_interop, reset
	  *
	  * SUBTEST: reset-stress
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: suspend
	+ * Description: Test that specific ioctls report a wedged GPU (EIO) during suspend
	  * Feature: reset, suspend
	- * Functionality: Test that specific ioctls report a wedged GPU (EIO) during suspend
	  * Test category: suspend
	  *
	  * SUBTEST: throttle
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: unwedge-stress
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: wait-10ms
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: wait-1us
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: wait-immediate
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: wait-wedge-10ms
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: wait-wedge-1us
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: wait-wedge-immediate
	+ * Category: Infrastructure
	  * Feature: reset
	  * Functionality: reset
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  */
	 
	diff --git a/tests/i915/gem_exec_basic.c b/tests/i915/gem_exec_basic.c
	index 3c47a98ef461..623f1ee52fb6 100644
	--- a/tests/i915/gem_exec_basic.c
	+++ b/tests/i915/gem_exec_basic.c
	@@ -27,17 +27,17 @@
	 #include "i915/gem_create.h"
	 /**
	  * TEST: gem exec basic
	- * Category: Infrastructure
	  * Description: Basic sanity check of execbuf-ioctl rings.
	- * Feature: cmd_submission
	- * Functionality: command submission
	- * Sub-category: i915
	  *
	  * SUBTEST: basic
	+ * Category: Infrastructure
	  * Description:
	  *   Check basic functionality of GEM_EXECBUFFER2 ioctl on every ring and iterating over memory
	  *   regions.
	+ * Feature: cmd_submission
	+ * Functionality: command submission
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  */
	 
	diff --git a/tests/i915/gem_exec_capture.c b/tests/i915/gem_exec_capture.c
	index 3ab659c039fc..453ae1af9101 100644
	--- a/tests/i915/gem_exec_capture.c
	+++ b/tests/i915/gem_exec_capture.c
	@@ -33,15 +33,15 @@
	 #include "igt_sysfs.h"
	 /**
	  * TEST: gem exec capture
	- * Category: Server
	  * Description: Check that we capture the user specified objects on a hang
	  * Feature: cmd_submission
	- * Functionality: offline debugging
	  * Run type: FULL
	- * Sub-category: debugger
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: capture
	+ * Category: Server
	+ * Functionality: offline debugging
	+ * Sub-category: debugger
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: capture-invisible
	  * Description:
	@@ -62,8 +62,16 @@
	  * SUBTEST: many-4K-zero
	  *
	  * SUBTEST: pi
	+ * Category: Server
	+ * Functionality: offline debugging
	+ * Sub-category: debugger
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: userptr
	+ * Category: Server
	+ * Functionality: offline debugging
	+ * Sub-category: debugger
	+ * Test category: GEM_Legacy
	  */
	 
	 #define MAX_RESET_TIME	600
	diff --git a/tests/i915/gem_exec_create.c b/tests/i915/gem_exec_create.c
	index 830e7581b893..00c190115ae2 100644
	--- a/tests/i915/gem_exec_create.c
	+++ b/tests/i915/gem_exec_create.c
	@@ -48,35 +48,47 @@
	 #include "i915/intel_memory_region.h"
	 /**
	  * TEST: gem exec create
	- * Category: Infrastructure
	  * Description:
	  *   This test overloads the driver with transient active objects and checks if we don't kill the
	  *   system under the memory pressure some of the symptoms this test look for include mysterious
	  *   hangs.
	- * Feature: cmd_submission
	- * Functionality: buffer management
	- * Sub-category: i915
	  *
	  * SUBTEST: basic
	+ * Category: Infrastructure
	  * Description: Check if we kill system by overloading it with active objects iterating over all engines.
	+ * Feature: cmd_submission
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: forked
	+ * Category: Infrastructure
	  * Description: Concurrently overloads system with active objects and checks if we kill system.
	+ * Feature: cmd_submission
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: legacy
	+ * Category: Infrastructure
	  * Description:
	  *   Check if we kill the system by overloading it with active objects iterating over legacy
	  *   engines.
	+ * Feature: cmd_submission
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: madvise
	+ * Category: Infrastructure
	  * Description: This test does a forced reclaim, behaving like a bad application leaking its bo cache.
	+ * Feature: cmd_submission
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  */
	 
	diff --git a/tests/i915/gem_exec_fence.c b/tests/i915/gem_exec_fence.c
	index 8dcaac23265b..1d09cfe07135 100644
	--- a/tests/i915/gem_exec_fence.c
	+++ b/tests/i915/gem_exec_fence.c
	@@ -47,35 +47,35 @@
	  * SUBTEST: basic-await
	  * Description: Basic check for explicit fence with async wait on each engine.
	  * Feature: cmd_submission, multitile, synchronization
	- * Functionality: Basic check for explicit fence with async wait on each engine.
	+ * Functionality: semaphore
	  * Run type: BAT
	  * Test category: MultiTile
	  *
	  * SUBTEST: basic-busy
	  * Description: Basic check for explicit fence on each busy engine.
	  * Feature: cmd_submission, multitile, synchronization
	- * Functionality: Basic check for explicit fence on each busy engine.
	+ * Functionality: semaphore
	  * Run type: BAT
	  * Test category: MultiTile
	  *
	  * SUBTEST: basic-busy-all
	  * Description: Basic check for composite fence on all busy engines.
	  * Feature: cmd_submission, multitile, synchronization
	- * Functionality: Basic check for composite fence on all busy engines.
	  * Run type: FULL
	  * Test category: MultiTile
	  *
	  * SUBTEST: basic-wait
	- * Description: Basic check for explicit fence with additinal wait time on each busy engine.
	+ * Description: Basic check for explicit fence with additional wait time on each busy engine.
	  * Feature: cmd_submission, multitile, synchronization
	- * Functionality: Basic check for explicit fence with additional wait time on each busy engine.
	+ * Functionality: semaphore
	  * Run type: BAT
	  * Test category: MultiTile
	  *
	  * SUBTEST: basic-wait-all
	- * Description: Basic check for composite fence with additional wait on all busy engines.
	+ * Description:
	+ *   Basic check for composite fence with additional wait on all busy engines.
	+ *   Execute the same batch on each engine and check that the composite fence across all engines completes only after the batch is completed on every engine.
	  * Feature: cmd_submission, multitile, synchronization
	- * Functionality: Execute the same batch on each engine and check that the composite fence across all engines completes only after the batch is completed on every engine.
	  * Run type: FULL
	  * Test category: MultiTile
	  *
	@@ -126,7 +126,6 @@
	  * SUBTEST: keep-in-fence
	  * Description: Check in-fence is not overwritten with out-fence on each engine.
	  * Feature: cmd_submission, multitile, synchronization
	- * Functionality: Check in-fence is not overwritten with out-fence on each engine
	  * Run type: FULL
	  * Test category: MultiTile
	  *
	@@ -140,9 +139,11 @@
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: nb-await
	- * Description: Check for explicit fence with non-blocking wait on each engine.
	+ * Description:
	+ *   Check for explicit fence with non-blocking wait on each engine.
	+ *   Check for explicit fence with non-blocking wait on each
	  * Feature: cmd_submission, multitile, synchronization
	- * Functionality: Check for explicit fence with non-blocking wait on each
	+ * Functionality: semaphore
	  * Run type: BAT
	  * Test category: MultiTile
	  *
	@@ -152,9 +153,10 @@
	  * Run type: FULL
	  *
	  * SUBTEST: parallel
	- * Description: Check for EXEC_FENCE_SUBMIT in parallel execution scenarios on each engine.
	+ * Description:
	+ *   Check for EXEC_FENCE_SUBMIT in parallel execution scenarios on each engine.
	+ *   Check for EXEC_FENCE_SUBMIT in parallel execution scenarios
	  * Feature: cmd_submission, multitile, synchronization
	- * Functionality: Check for EXEC_FENCE_SUBMIT in parallel execution scenarios
	  * Run type: FULL
	  * Test category: MultiTile
	  *
	diff --git a/tests/i915/gem_exec_gttfill.c b/tests/i915/gem_exec_gttfill.c
	index a31a8b82a9e4..4c32a04c0b0a 100644
	--- a/tests/i915/gem_exec_gttfill.c
	+++ b/tests/i915/gem_exec_gttfill.c
	@@ -28,27 +28,32 @@
	 #include "igt_rand.h"
	 /**
	  * TEST: gem exec gttfill
	- * Category: Infrastructure
	  * Description: Fill the GTT with batches.
	- * Functionality: command submission
	- * Sub-category: i915
	  *
	  * SUBTEST: all-engines
	+ * Category: Infrastructure
	  * Description: Stress test check behaviour/correctness of handling batches to fill gtt
	  * Feature: cmd_submission, gtt
	+ * Functionality: command submission
	  * Run type: FULL
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic
	+ * Category: Infrastructure
	  * Description: Checks if it can handle enough batches to fill gtt
	  * Feature: cmd_submission, gtt
	+ * Functionality: command submission
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines
	+ * Category: Infrastructure
	  * Description: Checks the correctness of handling enough batches to fill gtt for each engine
	  * Feature: cmd_submission, gtt
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: multigpu-basic
	diff --git a/tests/i915/gem_exec_nop.c b/tests/i915/gem_exec_nop.c
	index 101843acd651..067c92b47365 100644
	--- a/tests/i915/gem_exec_nop.c
	+++ b/tests/i915/gem_exec_nop.c
	@@ -50,23 +50,27 @@
	 
	 /**
	  * TEST: gem exec nop
	- * Category: Infrastructure
	  * Run type: FULL
	- * Sub-category: i915
	  *
	  * SUBTEST: basic-parallel
	+ * Category: Infrastructure
	  * Feature: cmd_submission
	  * Functionality: command submission
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-sequential
	+ * Category: Infrastructure
	  * Feature: cmd_submission
	  * Functionality: command submission
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-series
	+ * Category: Infrastructure
	  * Feature: cmd_submission
	  * Functionality: command submission
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: context-sequential
	diff --git a/tests/i915/gem_exec_parallel.c b/tests/i915/gem_exec_parallel.c
	index 55b51bfe3f31..bba861185631 100644
	--- a/tests/i915/gem_exec_parallel.c
	+++ b/tests/i915/gem_exec_parallel.c
	@@ -35,35 +35,51 @@
	 #include "igt_gt.h"
	 /**
	  * TEST: gem exec parallel
	- * Category: Infrastructure
	  * Description: Exercise filling buffers by many clients working in parallel.
	- * Feature: cmd_submission
	- * Functionality: command submission
	- * Sub-category: i915
	  *
	  * SUBTEST: basic
	+ * Category: Infrastructure
	  * Description: Check basic functionality per engine.
	+ * Feature: cmd_submission
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: contexts
	+ * Category: Infrastructure
	  * Description: Check with many contexts.
	+ * Feature: cmd_submission
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines
	+ * Category: Infrastructure
	  * Description: Check with engines working in parallel.
	+ * Feature: cmd_submission
	+ * Functionality: command submission
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: fds
	+ * Category: Infrastructure
	  * Description: Check with many fds.
	+ * Feature: cmd_submission
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: userptr
	+ * Category: Infrastructure
	  * Description: Check basic userptr thrashing.
	+ * Feature: cmd_submission
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  */
	 
	diff --git a/tests/i915/gem_exec_schedule.c b/tests/i915/gem_exec_schedule.c
	index 2156c043811c..c9be726abdd7 100644
	--- a/tests/i915/gem_exec_schedule.c
	+++ b/tests/i915/gem_exec_schedule.c
	@@ -46,90 +46,182 @@
	 #include "sw_sync.h"
	 /**
	  * TEST: gem exec schedule
	- * Category: Desktop \ Server
	  * Description: Check that we can control the order of execution
	- * Functionality: command submission
	  * Run type: FULL
	- * Sub-category: i915
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: deep
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: fairslice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: fairslice-all
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: fifo
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: implicit-boths
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: implicit-read-write
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: implicit-write-read
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: in-order
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: independent
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: lateslice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: manyslice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: noreorder
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: noreorder-corked
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: noreorder-priority
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: out-order
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: pi-common
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: pi-distinct-iova
	  * Feature: cmd_submission
	  *
	  * SUBTEST: pi-ringfull
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: pi-shared-iova
	  * Feature: cmd_submission
	  *
	  * SUBTEST: pi-userfault
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: preempt
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: preempt-contexts
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission, multictx
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: preempt-engines
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission, multictx
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: preempt-hang
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission, multictx
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: preempt-other
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission, multictx
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: preempt-other-chain
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission, multictx
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: preempt-queue
	  * Feature: cmd_submission, multictx
	@@ -144,91 +236,199 @@
	  * Feature: cmd_submission, multictx
	  *
	  * SUBTEST: preempt-self
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission, multictx
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: preempt-user
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission, multictx
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: preemptive-hang
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: promotion
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: reorder-wide
	  * Feature: cmd_submission
	  *
	  * SUBTEST: semaphore-codependency
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: semaphore-noskip
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: semaphore-power
	  * Feature: cmd_submission
	  *
	  * SUBTEST: semaphore-resolve
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: semaphore-user
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: smoketest
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: smoketest-all
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: submit-early-slice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: submit-golden-slice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: submit-late-slice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: thriceslice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: timeslicing
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-fairslice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-fairslice-all
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-independent
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-lateslice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-semaphore-codependency
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-semaphore-noskip
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-semaphore-resolve
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-semaphore-user
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-submit-early-slice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-submit-golden-slice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: u-submit-late-slice
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: wide
	+ * Category: Desktop \ Server
	  * Feature: cmd_submission
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  */
	 
	 #define LO 0
	diff --git a/tests/i915/gem_exec_suspend.c b/tests/i915/gem_exec_suspend.c
	index de1864224438..73fbf8cf653f 100644
	--- a/tests/i915/gem_exec_suspend.c
	+++ b/tests/i915/gem_exec_suspend.c
	@@ -39,82 +39,100 @@
	 /**
	  * TEST: gem exec suspend
	  * Description: Exercise simple execbufs runs across various suspend/resume cycles.
	- * Feature: cmd_submission, suspend
	  *
	  * SUBTEST: basic
	  * Description: Check basic functionality without any suspend/resume cycle.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: basic-S0
	  * Description: Check with suspend-to-idle target state.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: basic-S3
	  * Description: Check full cycle of suspend-to-mem.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: basic-S3-devices
	  * Description: Check with suspend-to-mem with devices only.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: basic-S4
	  * Description: Check full cycle of suspend-to-disk.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: basic-S4-devices
	  * Description: Check with suspend-to-disk with devices only.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: cached
	  * Description: Check without suspend/resume cycle state with cached object.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: cached-S3
	  * Description: Check suspend-to-mem state with cached object.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: cached-S4
	  * Description: Check suspend-to-disk state with cached object.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: fixed
	  * Description: Check without suspend/resume cycle state with fixed object.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: fixed-S3
	  * Description: Check suspend-to-mem state with fixed object.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: fixed-S4
	  * Description: Check suspend-to-disk state with fixed object.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: hang-S3
	  * Description: Check full cycle of suspend-to-mem with a pending GPU hang.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: hang-S4
	  * Description: Check full cycle of suspend-to-disk with a pending GPU hang.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: power-S0
	  * Description: Check power consumption during idle state.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: power-S3
	  * Description: Check power consumption during suspend-to-mem state.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: uncached
	  * Description: Check without suspend/resume cycle state with uncached object.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: uncached-S3
	  * Description: Check suspend-to-mem state with uncached object.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  *
	  * SUBTEST: uncached-S4
	  * Description: Check suspend-to-disk state with uncached object.
	+ * Feature: cmd_submission, suspend
	  * Run type: FULL
	  */
	 
	diff --git a/tests/i915/gem_exec_whisper.c b/tests/i915/gem_exec_whisper.c
	index bab9700640d8..1379f10dce1f 100644
	--- a/tests/i915/gem_exec_whisper.c
	+++ b/tests/i915/gem_exec_whisper.c
	@@ -39,60 +39,146 @@
	 #include "intel_ctx.h"
	 /**
	  * TEST: gem exec whisper
	- * Category: Infrastructure
	  * Feature: cmd_submission
	- * Functionality: command submission
	  * Run type: FULL
	- * Sub-category: i915
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-contexts
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-contexts-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-contexts-forked
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-contexts-forked-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-contexts-priority
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-contexts-priority-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-fds
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-fds-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-fds-forked
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-fds-forked-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-fds-priority
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-fds-priority-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-forked
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-forked-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-normal
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-normal-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-queues
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-queues-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-queues-forked
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-queues-forked-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-queues-priority
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-queues-priority-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-sync
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-sync-all
	+ * Category: Infrastructure
	+ * Functionality: command submission
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: chain
	  *
	diff --git a/tests/i915/gem_flink_basic.c b/tests/i915/gem_flink_basic.c
	index fd99ee5538e4..8a316cdae5fc 100644
	--- a/tests/i915/gem_flink_basic.c
	+++ b/tests/i915/gem_flink_basic.c
	@@ -40,35 +40,51 @@
	 #include "igt_types.h"
	 /**
	  * TEST: gem flink basic
	- * Category: Desktop client
	  * Description: Tests for flink - a way to export a gem object by name
	- * Feature: xorg_dri2
	- * Functionality: buffer management
	- * Sub-category: DRM
	  *
	  * SUBTEST: bad-flink
	+ * Category: Desktop client
	  * Description: Verify that GEM_FLINK ioctl with invalid gem object fails.
	+ * Feature: xorg_dri2
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: DRM
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: bad-open
	+ * Category: Desktop client
	  * Description: Verify that GEM_OPEN ioctl with invalid flink name fails.
	+ * Feature: xorg_dri2
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: DRM
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic
	+ * Category: Desktop client
	  * Description: Check if gem object can be exported to global namespace and then opened.
	+ * Feature: xorg_dri2
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: DRM
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: double-flink
	+ * Category: Desktop client
	  * Description: Tests that multiple flinks for the same gem object share the same name.
	+ * Feature: xorg_dri2
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: DRM
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: flink-lifetime
	+ * Category: Desktop client
	  * Description: Tests flink lifetime by referencing from multiple descriptors.
	+ * Feature: xorg_dri2
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: DRM
	  * Test category: GEM_Legacy
	  */
	 
	diff --git a/tests/i915/gem_gpgpu_fill.c b/tests/i915/gem_gpgpu_fill.c
	index e79df7409c01..25f2a96c1a80 100644
	--- a/tests/i915/gem_gpgpu_fill.c
	+++ b/tests/i915/gem_gpgpu_fill.c
	@@ -51,13 +51,13 @@
	 /**
	  * TEST: gem gpgpu fill
	  * Category: Server
	- * Feature: compute
	  * Functionality: command submission
	  * Run type: FULL
	  * Sub-category: Compute
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic
	+ * Feature: compute
	  */
	 
	 #define WIDTH 64
	diff --git a/tests/i915/gem_linear_blits.c b/tests/i915/gem_linear_blits.c
	index 40ab4fab3df4..bdbbf99efed4 100644
	--- a/tests/i915/gem_linear_blits.c
	+++ b/tests/i915/gem_linear_blits.c
	@@ -51,25 +51,33 @@
	 #include "i915/i915_blt.h"
	 /**
	  * TEST: gem linear blits
	- * Category: Infrastructure
	  * Description: Test doing many blits with a working set larger than the aperture size.
	- * Feature: blitter
	- * Functionality: command submission
	- * Sub-category: i915
	  *
	  * SUBTEST: basic
	+ * Category: Infrastructure
	  * Description: Basic blitter functionality check with 2 buffers
	+ * Feature: blitter
	+ * Functionality: command submission
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: interruptible
	+ * Category: Infrastructure
	  * Description: Test with interrupts in between the parent process
	+ * Feature: blitter
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: normal
	+ * Category: Infrastructure
	  * Description: The intent is to push beyond the working GTT size to force the driver to rebind the buffers
	+ * Feature: blitter
	+ * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  */
	 
	diff --git a/tests/i915/gem_lmem_swapping.c b/tests/i915/gem_lmem_swapping.c
	index 014068da79f3..6f1340ba0e41 100644
	--- a/tests/i915/gem_lmem_swapping.c
	+++ b/tests/i915/gem_lmem_swapping.c
	@@ -26,95 +26,169 @@
	 #include "i915/intel_mocs.h"
	 /**
	  * TEST: gem lmem swapping
	- * Category: Server
	  * Description: Exercise local memory swapping.
	- * Feature: local_memory
	- * Functionality: buffer management
	- * Sub-category: i915
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: heavy-multi
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: heavy-random
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: heavy-verify-multi
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: heavy-verify-multi-ccs
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	  * Run type: FULL
	  *
	  * SUBTEST: heavy-verify-random
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: heavy-verify-random-ccs
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	  * Run type: FULL
	  *
	  * SUBTEST: massive
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	  * Run type: FULL
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: massive-random
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	  * Run type: FULL
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: parallel-multi
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: parallel-random
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: parallel-random-engines
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: parallel-random-verify
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: parallel-random-verify-ccs
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	  * Run type: FULL
	  *
	  * SUBTEST: random
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: random-engines
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: smem-oom
	+ * Category: Server
	  * Description: Exercise local memory swapping during exhausting system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: verify
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: verify-ccs
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	  * Run type: FULL
	  *
	  * SUBTEST: verify-random
	+ * Category: Server
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	+ * Functionality: buffer management
	  * Run type: BAT
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: verify-random-ccs
	  * Description: Exercise local memory swapping to system memory
	+ * Feature: local_memory
	  * Run type: FULL
	  */
	 
	diff --git a/tests/i915/gem_madvise.c b/tests/i915/gem_madvise.c
	index 139376d1b3e3..4efa359ba7fa 100644
	--- a/tests/i915/gem_madvise.c
	+++ b/tests/i915/gem_madvise.c
	@@ -40,28 +40,32 @@
	 #include "i915/gem_create.h"
	 /**
	  * TEST: gem madvise
	- * Category: Desktop client
	  * Description: Checks that the kernel reports EFAULT when trying to use purged bo.
	- * Functionality: buffer management
	  * Run type: FULL
	- * Sub-category: i915
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: dontneed-after-mmap
	+ * Category: Desktop client
	  * Description:
	  *   Check signal for Segmentation Fault and bus error after obtaining a purgeable object and
	  *   calling for sighandler.
	  * Feature: caching, mapping
	+ * Functionality: buffer management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: dontneed-before-exec
	  * Description: Check if EXECBUFFER2 reports EFAULT when trying to submit purged bo for GPU.
	  * Feature: caching, gtt, mapping
	  *
	  * SUBTEST: dontneed-before-mmap
	+ * Category: Desktop client
	  * Description:
	  *   Check signal for Segmentation Fault and bus error before obtaining a purgeable object and
	  *   calling for sighandler.
	  * Feature: caching, mapping
	+ * Functionality: buffer management
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: dontneed-before-pwrite
	  * Description: Check if PWRITE reports EFAULT when trying to use purged bo for write operation.
	diff --git a/tests/i915/gem_mmap_offset.c b/tests/i915/gem_mmap_offset.c
	index f6d3374dd6e8..2537ecdc552b 100644
	--- a/tests/i915/gem_mmap_offset.c
	+++ b/tests/i915/gem_mmap_offset.c
	@@ -39,43 +39,91 @@
	 #include "igt_x86.h"
	 /**
	  * TEST: gem mmap offset
	- * Category: Infrastructure
	  * Description: Basic MMAP_OFFSET IOCTL tests for mem regions
	- * Feature: mapping
	- * Functionality: memory management
	  * Run type: FULL
	- * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: bad-extensions
	+ * Category: Infrastructure
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: bad-flags
	+ * Category: Infrastructure
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: bad-object
	+ * Category: Infrastructure
	  * Description: Verify mapping to invalid gem objects won't be created
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: basic-uaf
	+ * Category: Infrastructure
	  * Description: Check buffer object mapping persists after gem_close
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: blt-coherency
	+ * Category: Infrastructure
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: clear
	+ * Category: Infrastructure
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: close-race
	+ * Category: Infrastructure
	  * Description: Check race between close and mmap offset between threads
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: isolation
	+ * Category: Infrastructure
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: oob-read
	+ * Category: Infrastructure
	  * Description: Check for out-of-bound access in vm_access
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: open-flood
	+ * Category: Infrastructure
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: perf
	+ * Category: Infrastructure
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: pf-nonblock
	+ * Category: Infrastructure
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  *
	  * SUBTEST: ptrace
	+ * Category: Infrastructure
	+ * Feature: mapping
	+ * Functionality: memory management
	+ * Sub-category: i915
	  */
	 
	 IGT_TEST_DESCRIPTION("Basic MMAP_OFFSET IOCTL tests for mem regions\n");
	diff --git a/tests/i915/gem_ringfill.c b/tests/i915/gem_ringfill.c
	index d350cd7fea57..52471948edef 100644
	--- a/tests/i915/gem_ringfill.c
	+++ b/tests/i915/gem_ringfill.c
	@@ -43,17 +43,17 @@
	 #include <sys/ioctl.h>
	 /**
	  * TEST: gem ringfill
	- * Category: Infrastructure
	  * Description:
	  *   Exercise many tiny batchbuffer operations, in the hope of catching failure to manage the ring
	  *   properly near full.
	- * Sub-category: i915
	  *
	  * SUBTEST: basic-all
	+ * Category: Infrastructure
	  * Description: Basic check to fill the ring upto maximum on all engines simultaneously.
	  * Feature: cmd_submission
	  * Functionality: command submission
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: engines-S3
	@@ -67,9 +67,10 @@
	  * Run type: FULL
	  *
	  * SUBTEST: engines-basic
	- * Description: Basic check how the driver handles a full ring.
	+ * Description:
	+ *   Basic check how the driver handles a full ring.
	+ *   Test spamming ring with contexts
	  * Feature: cmd_submission, multitile
	- * Functionality: Test spamming ring with contexts
	  * Run type: FULL
	  * Test category: MultiTile
	  *
	@@ -118,9 +119,10 @@
	  * Run type: FULL
	  *
	  * SUBTEST: legacy-basic
	- * Description: Basic check how the driver handles a full ring - on legacy ring.
	+ * Description:
	+ *   Basic check how the driver handles a full ring - on legacy ring.
	+ *   Test spamming ring with contexts - legacy path
	  * Feature: cmd_submission, multitile
	- * Functionality: Test spamming ring with contexts - legacy path
	  * Run type: FULL
	  * Test category: MultiTile
	  *
	diff --git a/tests/i915/gem_softpin.c b/tests/i915/gem_softpin.c
	index 6bea75d1fe37..62478f4a3169 100644
	--- a/tests/i915/gem_softpin.c
	+++ b/tests/i915/gem_softpin.c
	@@ -33,75 +33,91 @@
	 #include "intel_allocator.h"
	 /**
	  * TEST: gem softpin
	- * Category: Infrastructure
	  * Description:
	  *   Tests softpin feature with normal usage, invalid inputs scenarios and couple of eviction
	  *   tests which copy buffers between CPU and GPU.
	- * Sub-category: i915
	  *
	  * SUBTEST: 32b-excludes-last-page
	+ * Category: Infrastructure
	  * Description: Check the last 32b page is excluded.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: allocator-basic
	+ * Category: Infrastructure
	  * Description: Check that we can place objects at start/end of the GTT using the allocator.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: allocator-basic-reserve
	+ * Category: Infrastructure
	  * Description: Check that if we can reserve a space for an object starting from a given offset.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: allocator-evict
	+ * Category: Infrastructure
	  * Description: Exercise eviction with softpinning.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: allocator-fork
	+ * Category: Infrastructure
	  * Description: Check if multiple processes can use alloctor.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: allocator-nopin
	+ * Category: Infrastructure
	  * Description: Check that we can combine manual placement with automatic GTT placement.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: allocator-nopin-reserve
	+ * Category: Infrastructure
	  * Description:
	  *   Check that we can combine manual placement with automatic GTT placement and
	  *   reserves/unreserves space for objects.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: evict-active
	+ * Category: Infrastructure
	  * Description: Check eviction with active bo.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: evict-active-interruptible
	+ * Category: Infrastructure
	  * Description: Check eviction with active bo with interrupts.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: evict-hang
	@@ -122,10 +138,12 @@
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: evict-single-offset
	+ * Category: Infrastructure
	  * Description: Use same offset for all engines and for different handles.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: evict-snoop
	@@ -139,24 +157,30 @@
	  * Run type: FULL
	  *
	  * SUBTEST: full
	+ * Category: Infrastructure
	  * Description: Check the total occupancy by using pad-to-size to fill the entire GTT.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid
	+ * Category: Infrastructure
	  * Description: Check that invalid inputs are handled correctly.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: noreloc
	+ * Category: Infrastructure
	  * Description: Check that noreloc support works.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: noreloc-S3
	@@ -170,45 +194,57 @@
	  * Run type: FULL
	  *
	  * SUBTEST: noreloc-interruptible
	+ * Category: Infrastructure
	  * Description: Check noreloc support with interruptible.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: overlap
	+ * Category: Infrastructure
	  * Description: Check all the possible pages aligned overlaps.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: reverse
	+ * Category: Infrastructure
	  * Description: Check that if the user demands the vma will be swapped.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: safe-alignment
	+ * Category: Infrastructure
	  * Description: Check start offset and alignment detection.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: BAT
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: softpin
	+ * Category: Infrastructure
	  * Description: Check softpinning of a gem buffer object.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: zero
	+ * Category: Infrastructure
	  * Description: Check full placement control under full-ppGTT.
	  * Feature: mapping
	  * Functionality: command submission
	  * Run type: FULL
	+ * Sub-category: i915
	  * Test category: GEM_Legacy
	  */
	 
	diff --git a/tests/i915/gem_sync.c b/tests/i915/gem_sync.c
	index 9a855a221654..1ee5b3f3d165 100644
	--- a/tests/i915/gem_sync.c
	+++ b/tests/i915/gem_sync.c
	@@ -66,16 +66,19 @@
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-each
	- * Description: Check synchronisation of ring.
	+ * Description:
	+ *   Check synchronisation of ring.
	+ *   Exercise all physical engine selection and legacy rings
	  * Feature: multitile, synchronization
	- * Functionality: Exercise all physical engine selection and legacy rings
	+ * Functionality: semaphore
	  * Run type: BAT
	  * Test category: MultiTile
	  *
	  * SUBTEST: basic-many-each
	- * Description: Create race condition and see if we can catch interrupts.
	+ * Description:
	+ *   Create race condition and see if we can catch interrupts.
	+ *   Basic check of ring to ring write synchronisation
	  * Feature: multitile, synchronization
	- * Functionality: Basic check of ring to ring write synchronisation
	  * Run type: FULL
	  * Test category: MultiTile
	  *
	@@ -89,9 +92,10 @@
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-store-each
	- * Description: Check that store synchronisation works.
	+ * Description:
	+ *   Check that store synchronisation works.
	+ *   Basic check of ring to ring write, store synchronisation
	  * Feature: multitile, synchronization
	- * Functionality: Basic check of ring to ring write, store synchronisation
	  * Run type: FULL
	  * Test category: MultiTile
	  *
	diff --git a/tests/i915/gem_wait.c b/tests/i915/gem_wait.c
	index 40e548579226..5549d8927e2c 100644
	--- a/tests/i915/gem_wait.c
	+++ b/tests/i915/gem_wait.c
	@@ -33,56 +33,70 @@
	 #include "igt_vgem.h"
	 /**
	  * TEST: gem wait
	- * Category: Infrastructure
	  * Description: Tests the GEM_WAIT ioctl
	  * Feature: synchronization
	- * Functionality: semaphore
	- * Sub-category: i915
	- * Test category: GEM_Legacy
	+ * Run type: FULL
	  *
	  * SUBTEST: await
	+ * Category: Infrastructure
	  * Description: Verify GEM_WAIT functionality in await mode.
	- * Run type: FULL
	+ * Functionality: semaphore
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: busy
	+ * Category: Infrastructure
	  * Description: Verify GEM_WAIT functionality in busy mode.
	- * Run type: FULL
	+ * Functionality: semaphore
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: hang-busy
	  * Description: Verify GEM_WAIT functionality in busy mode, when hang is allowed.
	- * Run type: FULL
	  *
	  * SUBTEST: hang-busy-write
	  * Description: Verify GEM_WAIT functionality in busy-write mode, when hang is allowed.
	- * Run type: FULL
	  *
	  * SUBTEST: hang-wait
	  * Description: Verify GEM_WAIT functionality in wait mode, when hang is allowed.
	- * Run type: FULL
	  *
	  * SUBTEST: hang-wait-write
	  * Description: Verify GEM_WAIT functionality in wait-write mode, when hang is allowed.
	- * Run type: FULL
	  *
	  * SUBTEST: invalid-buf
	+ * Category: Infrastructure
	  * Description: Verify that GEM_WAIT called with invalid buffer object will fail.
	- * Run type: FULL
	+ * Functionality: semaphore
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: invalid-flags
	+ * Category: Infrastructure
	  * Description: Verify that GEM_WAIT called with invalid flag will fail.
	- * Run type: FULL
	+ * Functionality: semaphore
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: wait
	+ * Category: Infrastructure
	  * Description: Verify GEM_WAIT functionality in wait mode.
	- * Run type: FULL
	+ * Functionality: semaphore
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: write-busy
	+ * Category: Infrastructure
	  * Description: Verify GEM_WAIT functionality in write-busy mode.
	- * Run type: FULL
	+ * Functionality: semaphore
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: write-wait
	+ * Category: Infrastructure
	  * Description: Verify GEM_WAIT functionality in write-wait mode.
	- * Run type: FULL
	+ * Functionality: semaphore
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  */
	 
	 IGT_TEST_DESCRIPTION("Tests the GEM_WAIT ioctl");
	diff --git a/tests/i915/gem_workarounds.c b/tests/i915/gem_workarounds.c
	index d9938b10ccd0..da8cfa0118e9 100644
	--- a/tests/i915/gem_workarounds.c
	+++ b/tests/i915/gem_workarounds.c
	@@ -34,23 +34,27 @@
	 #include "igt_types.h"
	 /**
	  * TEST: gem workarounds
	- * Category: Infrastructure
	  * Run type: FULL
	- * Sub-category: HW
	  *
	  * SUBTEST: basic-read
	+ * Category: Infrastructure
	  * Feature: workarounds
	  * Functionality: context management
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-read-context
	+ * Category: Infrastructure
	  * Feature: workarounds
	  * Functionality: context management
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-read-fd
	+ * Category: Infrastructure
	  * Feature: workarounds
	  * Functionality: context management
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: hibernate-resume
	@@ -63,33 +67,39 @@
	  * Feature: hibernate, workarounds
	  *
	  * SUBTEST: reset
	+ * Category: Infrastructure
	  * Feature: workarounds
	  * Functionality: context management
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: reset-context
	+ * Category: Infrastructure
	  * Feature: workarounds
	  * Functionality: context management
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: reset-fd
	+ * Category: Infrastructure
	  * Feature: workarounds
	  * Functionality: context management
	+ * Sub-category: HW
	  * Test category: GEM_Legacy
	  *
	  * SUBTEST: suspend-resume
	+ * Description: Test to verify gem WA registers during suspend-resume
	  * Feature: suspend, workarounds
	- * Functionality: Test to verify gem WA registers during suspend-resume
	  * Test category: suspend
	  *
	  * SUBTEST: suspend-resume-context
	+ * Description: Test to verify gem WA registers during suspend-resume
	  * Feature: suspend, workarounds
	- * Functionality: Test to verify gem WA registers during suspend-resume
	  * Test category: suspend
	  *
	  * SUBTEST: suspend-resume-fd
	+ * Description: Test to verify gem WA registers during suspend-resume
	  * Feature: suspend, workarounds
	- * Functionality: Test to verify gem WA registers during suspend-resume
	  * Test category: suspend
	  */
	 
	diff --git a/tests/i915/i915_module_load.c b/tests/i915/i915_module_load.c
	index 386be7d602dc..df24aee5e576 100644
	--- a/tests/i915/i915_module_load.c
	+++ b/tests/i915/i915_module_load.c
	@@ -25,21 +25,25 @@
	 #include <sys/utsname.h>
	 /**
	  * TEST: i915 module load
	- * Category: Infrastructure
	  * Description: Tests the i915 module loading.
	- * Functionality: driver handler
	- * Sub-category: i915
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: load
	+ * Category: Infrastructure
	  * Description: Check if i915 and friends are not yet loaded, then load them.
	  * Feature: core
	+ * Functionality: driver handler
	  * Run type: BAT
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: reload
	+ * Category: Infrastructure
	  * Description: Verify the basic functionality of i915 driver after it's reloaded.
	  * Feature: core, sriov-core
	+ * Functionality: driver handler
	  * Run type: BAT
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: reload-no-display
	  * Description: Verify that i915 driver can be successfully loaded with disabled display.
	@@ -47,9 +51,13 @@
	  * Run type: FULL
	  *
	  * SUBTEST: reload-with-fault-injection
	+ * Category: Infrastructure
	  * Description: Verify that i915 driver can be successfully reloaded at least once with fault injection.
	  * Feature: core, sriov-core
	+ * Functionality: driver handler
	  * Run type: FULL
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: resize-bar
	  * Description: Check whether lmem bar size can be resized to only supported sizes.
	diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c
	index 61ee7f63190a..e866e7fc9802 100644
	--- a/tests/i915/i915_pm_rpm.c
	+++ b/tests/i915/i915_pm_rpm.c
	@@ -42,12 +42,13 @@
	 #include <sys/stat.h>
	 /**
	  * TEST: i915 pm rpm
	- * Functionality: Validate PCI device D3 state enter-exit scenario using runtime PM
	- * Test category: pm_rpm
	  *
	  * SUBTEST: basic-pci-d3-state
	+ * Description: Validate PCI device D3 state enter-exit scenario using runtime PM
	  * Feature: pm_rpm
	+ * Functionality: D3 state entry-exit
	  * Run type: BAT
	+ * Test category: pm_rpm
	  *
	  * SUBTEST: basic-rte
	  * Feature: pm_rpm
	diff --git a/tests/i915/i915_pm_rps.c b/tests/i915/i915_pm_rps.c
	index 93e8e628b4f2..eaacc7c90cbd 100644
	--- a/tests/i915/i915_pm_rps.c
	+++ b/tests/i915/i915_pm_rps.c
	@@ -51,16 +51,18 @@
	  * Run type: BAT
	  *
	  * SUBTEST: engine-order
	- * Description: Check if context reuse does not affect waitboosting
	+ * Description:
	+ *   Check if context reuse does not affect waitboosting.
	+ *   Render P-States tests - verify GPU frequency changes
	  * Feature: pm_rps
	- * Functionality: Render P-States tests - verify GPU frequency changes
	  * Run type: FULL
	  * Test category: pm_rps
	  *
	  * SUBTEST: fence-order
	- * Description: Check if the order of fences does not affect waitboosting
	+ * Description:
	+ *   Check if the order of fences does not affect waitboosting.
	+ *   Render P-States tests - verify GPU frequency changes
	  * Feature: pm_rps, synchronization
	- * Functionality: Render P-States tests - verify GPU frequency changes
	  * Run type: FULL
	  * Test category: pm_rps
	  *
	diff --git a/tests/i915/i915_query.c b/tests/i915/i915_query.c
	index de3aa5c24f2d..62f7de428ec8 100644
	--- a/tests/i915/i915_query.c
	+++ b/tests/i915/i915_query.c
	@@ -29,36 +29,56 @@
	 #include <limits.h>
	 /**
	  * TEST: i915 query
	- * Category: Infrastructure
	  * Description: Testing the i915 query uAPI.
	- * Functionality: device topology
	  * Run type: FULL
	- * Sub-category: i915
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: engine-info
	+ * Category: Infrastructure
	  * Description: Positive tests for DRM_I915_QUERY_ENGINE_INFO
	  * Feature: gem_core
	+ * Functionality: device topology
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: engine-info-invalid
	+ * Category: Infrastructure
	  * Description: Negative tests for DRM_I915_QUERY_ENGINE_INFO
	  * Feature: gem_core
	+ * Functionality: device topology
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: hwconfig_table
	+ * Category: Infrastructure
	  * Description: Test DRM_I915_QUERY_HWCONFIG_BLOB query
	  * Feature: gem_core
	+ * Functionality: device topology
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: query-garbage
	+ * Category: Infrastructure
	  * Description: Test response to an invalid query call
	  * Feature: gem_core
	+ * Functionality: device topology
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: query-regions-garbage-items
	+ * Category: Infrastructure
	  * Description: Dodgy returned data tests for DRM_I915_QUERY_MEMORY_REGIONS
	  * Feature: gem_core
	+ * Functionality: device topology
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: query-regions-sanity-check
	+ * Category: Infrastructure
	  * Description: Basic tests for DRM_I915_QUERY_MEMORY_REGIONS
	  * Feature: gem_core
	+ * Functionality: device topology
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: query-regions-unallocated
	  * Description: Sanity check the region unallocated tracking
	@@ -69,12 +89,20 @@
	  * Feature: gem_core
	  *
	  * SUBTEST: query-topology-garbage-items
	+ * Category: Infrastructure
	  * Description: Test response to invalid DRM_I915_QUERY_TOPOLOGY_INFO query
	  * Feature: gem_core
	+ * Functionality: device topology
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: query-topology-kernel-writes
	+ * Category: Infrastructure
	  * Description: Guardband test for DRM_I915_QUERY_TOPOLOGY_INFO query
	  * Feature: gem_core
	+ * Functionality: device topology
	+ * Sub-category: i915
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: query-topology-known-pci-ids
	  * Description:
	diff --git a/tests/i915/i915_suspend.c b/tests/i915/i915_suspend.c
	index 4e7d568570b1..9f0a4d2ac5e0 100644
	--- a/tests/i915/i915_suspend.c
	+++ b/tests/i915/i915_suspend.c
	@@ -46,23 +46,27 @@
	 #include "igt_device_scan.h"
	 /**
	  * TEST: i915 suspend
	- * Test category: suspend
	  *
	  * SUBTEST: basic-s2idle-without-i915
	  * Description: Validate suspend-to-idle without i915 module
	  * Feature: suspend
	+ * Functionality: s2idle w/o i915
	  * Run type: BAT
	+ * Test category: suspend
	  *
	  * SUBTEST: basic-s3-without-i915
	- * Description: Validate S3 without i915 module
	+ * Description:
	+ *   Validate S3 without i915 module.
	+ *   Validate S3 state without i915 module
	  * Feature: suspend
	- * Functionality: Validate S3 state without i915 module
	  * Run type: BAT
	+ * Test category: suspend
	  *
	  * SUBTEST: debugfs-reader
	+ * Description: Test debugfs behavior during suspend to idle
	  * Feature: suspend
	- * Functionality: Test debugfs behavior during suspend to idle
	  * Run type: FULL
	+ * Test category: suspend
	  *
	  * SUBTEST: debugfs-reader-hibernate
	  * Feature: suspend
	@@ -85,9 +89,10 @@
	  * Run type: FULL
	  *
	  * SUBTEST: forcewake
	+ * Description: Test to prevent GT from suspend by opening forcewake handle
	  * Feature: suspend
	- * Functionality: Test to prevent GT from suspend by opening forcewake handle
	  * Run type: FULL
	+ * Test category: suspend
	  *
	  * SUBTEST: forcewake-hibernate
	  * Feature: suspend
	@@ -98,9 +103,10 @@
	  * Run type: FULL
	  *
	  * SUBTEST: sysfs-reader
	+ * Description: Test sysfs behavior during suspend to idle
	  * Feature: suspend
	- * Functionality: Test sysfs behavior during suspend to idle
	  * Run type: FULL
	+ * Test category: suspend
	  *
	  * SUBTEST: sysfs-reader-hibernate
	  * Feature: suspend
	diff --git a/tests/i915/perf.c b/tests/i915/perf.c
	index b7fa2924888e..55594ea6c671 100644
	--- a/tests/i915/perf.c
	+++ b/tests/i915/perf.c
	@@ -49,27 +49,31 @@
	  * TEST: perf
	  * Description: Test the i915 perf metrics streaming interface
	  * Run type: FULL
	- * Test category: Perf
	  *
	  * SUBTEST: blocking
	  * Description: Test blocking read with default hrtimer frequency
	  * Feature: i915 streaming interface, oa
	+ * Test category: Perf
	  *
	  * SUBTEST: blocking-parameterized
	  * Description: Test blocking read with different hrtimer frequencies
	  * Feature: i915 streaming interface, oa
	+ * Test category: Perf
	  *
	  * SUBTEST: buffer-fill
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: create-destroy-userspace-config
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: disabled-read-error
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: enable-disable
	  * Feature: oa
	@@ -89,6 +93,7 @@
	  * SUBTEST: gen12-invalid-class-instance
	  * Description: Verify invalid class instance
	  * Feature: i915 streaming interface, oa
	+ * Test category: Perf
	  *
	  * SUBTEST: gen12-mi-rpc
	  * Description: Test MI REPORT PERF COUNT for Gen 12
	@@ -97,6 +102,7 @@
	  * SUBTEST: gen12-oa-tlb-invalidate
	  * Description: Test OA TLB invalidate
	  * Feature: i915 streaming interface, oa
	+ * Test category: Perf
	  *
	  * SUBTEST: gen12-unprivileged-single-ctx-counters
	  * Description: Measure performance for a specific context using OAR in Gen 12
	@@ -114,61 +120,75 @@
	  * Feature: oa
	  *
	  * SUBTEST: i915-ref-count
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: invalid-create-userspace-config
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: invalid-oa-exponent
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: invalid-oa-format-id
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: invalid-oa-metric-set-id
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: invalid-open-flags
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: invalid-remove-userspace-config
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: low-oa-exponent-permissions
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: mi-rpc
	  * Feature: oa
	  *
	  * SUBTEST: missing-sample-flags
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: non-sampling-read-error
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: non-system-wide-paranoid
	  * Feature: oa
	  *
	  * SUBTEST: non-zero-reason
	- * Description: Test that reason field in OA reports is never 0 on Gen8+
	+ * Description:
	+ *   Test that reason field in OA reports is never 0 on Gen8+.
	+ *   Test that reason field in OA reports is never 0 on Gen8+
	  * Feature: i915 streaming interface, oa
	+ * Test category: Perf
	  *
	  * SUBTEST: oa-exponents
	  * Feature: oa
	  *
	  * SUBTEST: oa-formats
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: per-context-mode-unprivileged
	  * Feature: oa, obsolete
	@@ -176,36 +196,42 @@
	  * SUBTEST: polling
	  * Description: Test polled read with default hrtimer frequency
	  * Feature: i915 streaming interface, oa
	+ * Test category: Perf
	  *
	  * SUBTEST: polling-parameterized
	  * Description: Test polled read with different hrtimer frequencies
	  * Feature: i915 streaming interface, oa
	+ * Test category: Perf
	  *
	  * SUBTEST: polling-small-buf
	  * Description: Test polled read with buffer size smaller than available data
	  * Feature: i915 streaming interface, oa
	+ * Test category: Perf
	  *
	  * SUBTEST: rc6-disable
	  * Feature: oa
	  *
	  * SUBTEST: short-reads
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: stress-open-close
	  * Description: Stress tests opening & closing the i915-perf stream in a busy loop
	  * Feature: oa
	  *
	  * SUBTEST: sysctl-defaults
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  *
	  * SUBTEST: unprivileged-single-ctx-counters
	  * Feature: oa, obsolete
	  *
	  * SUBTEST: whitelisted-registers-userspace-config
	+ * Description: Test the i915 perf metrics streaming interface
	  * Feature: i915 streaming interface, oa
	- * Functionality: Test the i915 perf metrics streaming interface
	+ * Test category: Perf
	  */
	 
	 IGT_TEST_DESCRIPTION("Test the i915 perf metrics streaming interface");
	diff --git a/tests/i915/perf_pmu.c b/tests/i915/perf_pmu.c
	index bc0d517007d6..28897797f81c 100644
	--- a/tests/i915/perf_pmu.c
	+++ b/tests/i915/perf_pmu.c
	@@ -53,71 +53,86 @@
	  * TEST: perf pmu
	  * Description: Test the i915 pmu perf interface
	  * Run type: FULL
	- * Test category: Perf
	  *
	  * SUBTEST: all-busy-check-all
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: all-busy-idle-check-all
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: busy
	+ * Description: Test to ensure gpu is busy when there a workload by reading engine busyness pmu counters
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to ensure gpu is busy when there a workload by reading engine busyness pmu counters
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-accuracy-2
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-accuracy-50
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-accuracy-98
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-check-all
	+ * Description: Test to ensure gpu all engines report busy when there is a workload by reading engine busyness pmu counters
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to ensure gpu all engines report busy when there is a workload by reading engine busyness pmu counters
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-double-start
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-hang
	+ * Description: Test to ensure there is no hanf when all engines are busy
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to ensure there is no hanf when all engines are busy
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-idle
	+ * Description: Test to ensure gpu engine reports idle when there is no workload
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to ensure gpu engine reports idle when there is no workload
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-idle-check-all
	+ * Description: Test to ensure gpu all engine reports idle when there is no workload
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to ensure gpu all engine reports idle when there is no workload
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-idle-no-semaphores
	+ * Description: Test to verify gpu idle through engine business pmu counters
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to verify gpu idle through engine business pmu counters
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-no-semaphores
	+ * Description: Test to verify gpu busyness through engine business pmu counters
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to verify gpu busyness through engine business pmu counters
	+ * Test category: Perf
	  *
	  * SUBTEST: busy-start
	+ * Description: Test to verify gpu busyness through engine business pmu counters
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to verify gpu busyness through engine business pmu counters
	+ * Test category: Perf
	  *
	  * SUBTEST: cpu-hotplug
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: enable-race
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: event-wait
	  * Feature: obsolete, pmu
	@@ -126,71 +141,87 @@
	  * Feature: pmu
	  *
	  * SUBTEST: frequency
	+ * Description: Read requested freq and actual frequency via PMU within specified time interval for any given workload changes
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Read requested freq and actual frequency via PMU within specified time interval for any given workload changes
	+ * Test category: Perf
	  *
	  * SUBTEST: frequency-idle
	  * Feature: pmu
	  *
	  * SUBTEST: gt-awake
	+ * Description: Setup workload on all engines,measure gt awake time via pmu
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Setup workload on all engines,measure gt awake time via pmu
	+ * Test category: Perf
	  *
	  * SUBTEST: idle
	+ * Description: Test to ensure gpu is idle when there is no workload by reading engine busyness pmu counters
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to ensure gpu is idle when there is no workload by reading engine busyness pmu counters
	+ * Test category: Perf
	  *
	  * SUBTEST: idle-no-semaphores
	+ * Description: Test to ensure gpu is idle when there is no workload by reading engine busyness pmu counters
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to ensure gpu is idle when there is no workload by reading engine busyness pmu counters
	+ * Test category: Perf
	  *
	  * SUBTEST: init-busy
	+ * Description: Test to verify gpu busyness init through pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to verify gpu busyness init through pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: init-sema
	+ * Description: Test to verify gpu busyness init through pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to verify gpu busyness init through pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: init-wait
	+ * Description: Test to verify gpu busyness init through pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test to verify gpu busyness init through pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: interrupts
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: interrupts-sync
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: invalid-init
	+ * Description: Tests that i915 PMU corectly errors out in invalid initialization
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Tests that i915 PMU corectly errors out in invalid initialization
	+ * Test category: Perf
	  *
	  * SUBTEST: invalid-open
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: module-unload
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: most-busy-check-all
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: most-busy-idle-check-all
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: multi-client
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: pmu-read
	  * Description: Verify i915 pmu dir exists and read all events
	  * Feature: pmu
	+ * Test category: Perf
	  *
	  * SUBTEST: rc6
	  * Feature: pmu
	@@ -211,16 +242,19 @@
	  * Feature: pmu
	  *
	  * SUBTEST: semaphore-busy
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: semaphore-wait
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  *
	  * SUBTEST: semaphore-wait-idle
	+ * Description: Test the i915 pmu perf interface
	  * Feature: i915 pmu perf interface, pmu
	- * Functionality: Test the i915 pmu perf interface
	+ * Test category: Perf
	  */
	 
	 IGT_TEST_DESCRIPTION("Test the i915 pmu perf interface");
	diff --git a/tests/i915/sysfs_heartbeat_interval.c b/tests/i915/sysfs_heartbeat_interval.c
	index 9161ea5bbf59..a3de43a37e72 100644
	--- a/tests/i915/sysfs_heartbeat_interval.c
	+++ b/tests/i915/sysfs_heartbeat_interval.c
	@@ -45,26 +45,30 @@
	  * TEST: sysfs heartbeat interval
	  * Feature: SMI, cmd_submission
	  * Run type: FULL
	- * Test category: SysMan
	  *
	  * SUBTEST: idempotent
	- * Functionality: Test to check whether the heartbeat parameter reports the values set.
	+ * Description: Test to check whether the heartbeat parameter reports the values set.
	+ * Test category: SysMan
	  *
	  * SUBTEST: invalid
	- * Functionality: Test to check if heartbeat parameter rejects any unrepresentable intervals.
	+ * Description: Test to check if heartbeat parameter rejects any unrepresentable intervals.
	+ * Test category: SysMan
	  *
	  * SUBTEST: long
	  *
	  * SUBTEST: mixed
	- * Functionality: Run a mixed workload with non-preemptable hogs that exceed the heartbeat, and quicker innocents. Inspect the fence status of each to verify that only the hogs are reset.
	+ * Description: Run a mixed workload with non-preemptable hogs that exceed the heartbeat, and quicker innocents. Inspect the fence status of each to verify that only the hogs are reset.
	+ * Test category: SysMan
	  *
	  * SUBTEST: nopreempt
	- * Functionality: Test heartbeats with forced preemption disabled.
	+ * Description: Test heartbeats with forced preemption disabled.
	+ * Test category: SysMan
	  *
	  * SUBTEST: off
	  *
	  * SUBTEST: precise
	- * Functionality: Tests the heartbeats with preemption and heartbeat parameter enabled.
	+ * Description: Tests the heartbeats with preemption and heartbeat parameter enabled.
	+ * Test category: SysMan
	  */
	 
	 #define ATTR "heartbeat_interval_ms"
	diff --git a/tests/i915/sysfs_preempt_timeout.c b/tests/i915/sysfs_preempt_timeout.c
	index b7ec5ec3e4b7..3d24bf61ce6d 100644
	--- a/tests/i915/sysfs_preempt_timeout.c
	+++ b/tests/i915/sysfs_preempt_timeout.c
	@@ -44,18 +44,20 @@
	  * TEST: sysfs preempt timeout
	  * Feature: SMI, context
	  * Run type: FULL
	- * Test category: SysMan
	  *
	  * SUBTEST: idempotent
	- * Functionality: Test to check whether the preempt_timeout parameter reports the values set.
	+ * Description: Test to check whether the preempt_timeout parameter reports the values set.
	+ * Test category: SysMan
	  *
	  * SUBTEST: invalid
	- * Functionality: Test to check if preempt_timeout parameter rejects any unrepresentable intervals.
	+ * Description: Test to check if preempt_timeout parameter rejects any unrepresentable intervals.
	+ * Test category: SysMan
	  *
	  * SUBTEST: off
	  *
	  * SUBTEST: timeout
	- * Functionality: Test to measure the delay from requestion the preemption to its completion. Send down some non-preemptable workloads and then request a switch to a higher priority context. The HW will not be able to respond, so the kernel will be forced to reset the hog.
	+ * Description: Test to measure the delay from requestion the preemption to its completion. Send down some non-preemptable workloads and then request a switch to a higher priority context. The HW will not be able to respond, so the kernel will be forced to reset the hog.
	+ * Test category: SysMan
	  */
	 
	 #define ATTR "preempt_timeout_ms"
	diff --git a/tests/i915/sysfs_timeslice_duration.c b/tests/i915/sysfs_timeslice_duration.c
	index 58b0ed3f02d2..f1b51826481b 100644
	--- a/tests/i915/sysfs_timeslice_duration.c
	+++ b/tests/i915/sysfs_timeslice_duration.c
	@@ -47,21 +47,24 @@
	  * TEST: sysfs timeslice duration
	  * Feature: SMI, cmd_submission
	  * Run type: FULL
	- * Test category: SysMan
	  *
	  * SUBTEST: duration
	- * Functionality: Test to measure the timeslice duration by watching the xCS_TIMESTAMP and recording its value every time we switch into the context, using a couple of semaphores to busyspin for the timeslice.
	+ * Description: Test to measure the timeslice duration by watching the xCS_TIMESTAMP and recording its value every time we switch into the context, using a couple of semaphores to busyspin for the timeslice.
	+ * Test category: SysMan
	  *
	  * SUBTEST: idempotent
	- * Functionality: Test to check whether timeslice parameter reports the values set.
	+ * Description: Test to check whether timeslice parameter reports the values set.
	+ * Test category: SysMan
	  *
	  * SUBTEST: invalid
	- * Functionality: Test to check if timeslice parameter rejects any unrepresentable intervals.
	+ * Description: Test to check if timeslice parameter rejects any unrepresentable intervals.
	+ * Test category: SysMan
	  *
	  * SUBTEST: off
	  *
	  * SUBTEST: timeout
	- * Functionality: Couple a unpreemptable hog with a fast forced reset and measure the timeslice by how long it takes for the hog to be reset and the high priority context to complete.
	+ * Description: Couple a unpreemptable hog with a fast forced reset and measure the timeslice by how long it takes for the hog to be reset and the high priority context to complete.
	+ * Test category: SysMan
	  */
	 
	 #define ATTR "timeslice_duration_ms"
	diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c
	index 827d9b1d496c..85b9cf880331 100644
	--- a/tests/prime_vgem.c
	+++ b/tests/prime_vgem.c
	@@ -32,21 +32,25 @@
	 #include "intel_batchbuffer.h"	/* igt_blitter_src_copy() */
	 /**
	  * TEST: prime vgem
	- * Category: Infrastructure
	  * Description: Basic check of polling for prime/vgem fences.
	- * Functionality: mock device
	- * Sub-category: DRM
	- * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-blt
	+ * Category: Infrastructure
	  * Description: Examine blitter access path.
	  * Feature: prime
	+ * Functionality: mock device
	  * Run type: FULL
	+ * Sub-category: DRM
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-fence-blt
	+ * Category: Infrastructure
	  * Description: Examine blitter access path fencing.
	  * Feature: prime
	+ * Functionality: mock device
	  * Run type: FULL
	+ * Sub-category: DRM
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: basic-fence-flip
	  * Description: Examine vgem bo front/back flip fencing.
	@@ -79,14 +83,22 @@
	  * Run type: BAT
	  *
	  * SUBTEST: busy
	+ * Category: Infrastructure
	  * Description: Examine busy check of polling for vgem fence.
	  * Feature: prime
	+ * Functionality: mock device
	  * Run type: FULL
	+ * Sub-category: DRM
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: coherency-blt
	+ * Category: Infrastructure
	  * Description: Examine blitter access path WC coherency.
	  * Feature: prime
	+ * Functionality: mock device
	  * Run type: FULL
	+ * Sub-category: DRM
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: coherency-gtt
	  * Description: Examine concurrent access of vgem bo.
	@@ -104,9 +116,13 @@
	  * Run type: FULL
	  *
	  * SUBTEST: fence-wait
	+ * Category: Infrastructure
	  * Description: Examine basic dma-buf fence interop.
	  * Feature: prime, synchronization
	+ * Functionality: mock device
	  * Run type: FULL
	+ * Sub-category: DRM
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: fence-write-hang
	  * Description: Examine write access path fencing with a pending gpu hang.
	@@ -114,19 +130,31 @@
	  * Run type: FULL
	  *
	  * SUBTEST: shrink
	+ * Category: Infrastructure
	  * Description: Examine link establishment between shrinker and vgem bo.
	  * Feature: prime
	+ * Functionality: mock device
	  * Run type: FULL
	+ * Sub-category: DRM
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: sync
	+ * Category: Infrastructure
	  * Description: Examine sync on vgem fence.
	  * Feature: prime
	+ * Functionality: mock device
	  * Run type: FULL
	+ * Sub-category: DRM
	+ * Test category: GEM_Legacy
	  *
	  * SUBTEST: wait
	+ * Category: Infrastructure
	  * Description: Examine wait on vgem fence.
	  * Feature: prime
	+ * Functionality: mock device
	  * Run type: FULL
	+ * Sub-category: DRM
	+ * Test category: GEM_Legacy
	  */
	 
	 IGT_TEST_DESCRIPTION("Basic check of polling for prime/vgem fences.");

Mauro Carvalho Chehab (7):
  gem_exec_fence: fix a typo
  tests: better document core_* tests used for i915 validation
  tests: better document the remaining core used by i915 validation
  i915/gem_exec_*: better document gem exec tests used for i915
    validation
  i915/gem_ctx_*: better document i915 context tests
  i915/perf_*: better document tests
  i915/: better document the remaining i915 tests

 tests/core_auth.c                        |   4 +
 tests/core_getclient.c                   |   4 +
 tests/core_getstats.c                    |   4 +
 tests/core_getversion.c                  |   4 +
 tests/core_hotunplug.c                   |   8 +
 tests/core_setmaster.c                   |   4 +
 tests/core_setmaster_vs_auth.c           |   4 +
 tests/debugfs_test.c                     |  23 ++-
 tests/device_reset.c                     |   8 +-
 tests/dumb_buffer.c                      |   4 +
 tests/i915/api_intel_allocator.c         |  40 ++++-
 tests/i915/api_intel_bb.c                | 150 ++++++++++++++++-
 tests/i915/gem_barrier_race.c            |   1 +
 tests/i915/gem_basic.c                   |  13 ++
 tests/i915/gem_blits.c                   |   4 +
 tests/i915/gem_busy.c                    |  24 ++-
 tests/i915/gem_caching.c                 |   4 +
 tests/i915/gem_close.c                   |   4 +
 tests/i915/gem_close_race.c              |  10 ++
 tests/i915/gem_create.c                  |  50 +++++-
 tests/i915/gem_cs_tlb.c                  |   4 +
 tests/i915/gem_ctx_bad_destroy.c         |   4 +
 tests/i915/gem_ctx_create.c              |  22 ++-
 tests/i915/gem_ctx_engines.c             |   4 +
 tests/i915/gem_ctx_exec.c                |  28 +++-
 tests/i915/gem_ctx_freq.c                |   4 +
 tests/i915/gem_ctx_isolation.c           |  38 ++++-
 tests/i915/gem_ctx_param.c               |  76 +++++++++
 tests/i915/gem_ctx_persistence.c         | 112 +++++++++++++
 tests/i915/gem_ctx_shared.c              |  37 +++-
 tests/i915/gem_eio.c                     | 106 +++++++++++-
 tests/i915/gem_exec_alignment.c          |   4 +
 tests/i915/gem_exec_async.c              |   4 +
 tests/i915/gem_exec_await.c              |   4 +
 tests/i915/gem_exec_balancer.c           | 100 +++++++++++
 tests/i915/gem_exec_basic.c              |   8 +-
 tests/i915/gem_exec_big.c                |   4 +
 tests/i915/gem_exec_capture.c            |  12 ++
 tests/i915/gem_exec_create.c             |  21 ++-
 tests/i915/gem_exec_endless.c            |   4 +
 tests/i915/gem_exec_fence.c              | 124 +++++++++++++-
 tests/i915/gem_exec_gttfill.c            |  12 ++
 tests/i915/gem_exec_nop.c                |  12 ++
 tests/i915/gem_exec_parallel.c           |  26 ++-
 tests/i915/gem_exec_params.c             |  76 +++++++++
 tests/i915/gem_exec_schedule.c           | 204 +++++++++++++++++++++++
 tests/i915/gem_exec_store.c              |   4 +
 tests/i915/gem_exec_suspend.c            |  20 ++-
 tests/i915/gem_exec_whisper.c            |  90 ++++++++++
 tests/i915/gem_exercise_blt.c            |   9 +-
 tests/i915/gem_flink_basic.c             |  32 +++-
 tests/i915/gem_flink_race.c              |   4 +
 tests/i915/gem_gpgpu_fill.c              |   6 +-
 tests/i915/gem_linear_blits.c            |  16 +-
 tests/i915/gem_lmem_evict.c              |   1 +
 tests/i915/gem_lmem_swapping.c           |  80 ++++++++-
 tests/i915/gem_madvise.c                 |   8 +
 tests/i915/gem_mmap_offset.c             |  54 +++++-
 tests/i915/gem_pipe_control_store_loop.c |   4 +
 tests/i915/gem_ppgtt.c                   |   6 +
 tests/i915/gem_request_retire.c          |   4 +
 tests/i915/gem_ringfill.c                |  14 +-
 tests/i915/gem_shrink.c                  |   4 +
 tests/i915/gem_softpin.c                 | 105 +++++++++++-
 tests/i915/gem_spin_batch.c              |  37 ++++
 tests/i915/gem_sync.c                    |  24 ++-
 tests/i915/gem_unref_active_buffers.c    |   4 +
 tests/i915/gem_userptr_blits.c           |  76 +++++++++
 tests/i915/gem_vm_create.c               |   4 +
 tests/i915/gem_wait.c                    |  40 +++--
 tests/i915/gem_workarounds.c             |  30 ++++
 tests/i915/i915_getparams_basic.c        |   4 +
 tests/i915/i915_hangman.c                |  40 ++++-
 tests/i915/i915_hwmon.c                  |   1 +
 tests/i915/i915_module_load.c            |  12 ++
 tests/i915/i915_pciid.c                  |   4 +
 tests/i915/i915_pm_rpm.c                 |   3 +
 tests/i915/i915_pm_rps.c                 |  10 +-
 tests/i915/i915_power.c                  |   1 +
 tests/i915/i915_query.c                  |  32 ++++
 tests/i915/i915_suspend.c                |  13 +-
 tests/i915/perf.c                        |  96 ++++++++---
 tests/i915/perf_pmu.c                    | 137 +++++++++++----
 tests/i915/sysfs_defaults.c              |   4 +
 tests/i915/sysfs_heartbeat_interval.c    |  10 ++
 tests/i915/sysfs_preempt_timeout.c       |   6 +
 tests/i915/sysfs_timeslice_duration.c    |   8 +
 tests/prime_busy.c                       |   4 +
 tests/prime_mmap.c                       |   4 +
 tests/prime_mmap_coherency.c             |   4 +
 tests/prime_self_import.c                |   4 +
 tests/prime_vgem.c                       |  37 +++-
 tests/sw_sync.c                          |   4 +
 tests/syncobj_basic.c                    |   4 +
 tests/syncobj_timeline.c                 |   4 +
 tests/syncobj_wait.c                     |   4 +
 tests/vgem_basic.c                       |  14 ++
 tests/vgem_slow.c                        |   4 +
 98 files changed, 2426 insertions(+), 135 deletions(-)

-- 
2.40.1



More information about the igt-dev mailing list