[PATCH] drm/xe/tests: Add legacy IP descriptors to param generators
Jani Nikula
jani.nikula at linux.intel.com
Wed Jul 2 08:35:17 UTC 2025
On Tue, 01 Jul 2025, Lucas De Marchi <lucas.demarchi at intel.com> wrote:
> On Fri, Jun 27, 2025 at 08:11:10PM +0200, Michal Wajdeczko wrote:
>>Recently introduced kunit parameter generators where based on
>>the existing arrays which have only GDMID-bsaed IP and didn't
>>take into account legacy IP definitions from pre-GMDID era.
>>
>>Add test only arrays with legacy IPs (as those will not change)
>>and extend param generators to start iterating over them.
>>
>> [ ] =================== xe_pci (2 subtests) ====================
>> [ ] ==================== check_graphics_ip ====================
>> [ ] [PASSED] 12.00 Xe_LP
>> [ ] [PASSED] 12.10 Xe_LP+
>> [ ] [PASSED] 12.55 Xe_HPG
>> [ ] [PASSED] 12.60 Xe_HPC
>> [ ] [PASSED] 12.70 Xe_LPG
>> [ ] [PASSED] 12.71 Xe_LPG
>> [ ] [PASSED] 12.74 Xe_LPG+
>> [ ] [PASSED] 20.01 Xe2_HPG
>> [ ] [PASSED] 20.02 Xe2_HPG
>> [ ] [PASSED] 20.04 Xe2_LPG
>> [ ] [PASSED] 30.00 Xe3_LPG
>> [ ] [PASSED] 30.01 Xe3_LPG
>> [ ] [PASSED] 30.03 Xe3_LPG
>> [ ] ================ [PASSED] check_graphics_ip ================
>> [ ] ===================== check_media_ip ======================
>> [ ] [PASSED] 12.00 Xe_M
>> [ ] [PASSED] 12.55 Xe_HPM
>> [ ] [PASSED] 13.00 Xe_LPM+
>> [ ] [PASSED] 13.01 Xe2_HPM
>> [ ] [PASSED] 20.00 Xe2_LPM
>> [ ] [PASSED] 30.00 Xe3_LPM
>> [ ] [PASSED] 30.02 Xe3_LPM
>> [ ] ================= [PASSED] check_media_ip ==================
>> [ ] ===================== [PASSED] xe_pci ======================
>>
>>Signed-off-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
>>Cc: Lucas De Marchi <lucas.demarchi at intel.com>
>>Cc: Matt Roper <matthew.d.roper at intel.com>
>>---
>> drivers/gpu/drm/xe/tests/xe_pci.c | 33 +++++++++++++++++++++++++++++++
>> 1 file changed, 33 insertions(+)
>>
>>diff --git a/drivers/gpu/drm/xe/tests/xe_pci.c b/drivers/gpu/drm/xe/tests/xe_pci.c
>>index baccb657bd05..c5acee52b458 100644
>>--- a/drivers/gpu/drm/xe/tests/xe_pci.c
>>+++ b/drivers/gpu/drm/xe/tests/xe_pci.c
>>@@ -12,12 +12,31 @@
>> #include <kunit/test-bug.h>
>> #include <kunit/visibility.h>
>>
>>+#define IS_ARRAY_ROW(arr, row) ((typeof(&(arr)[0]))(row) - (arr) < ARRAY_SIZE(arr))
>>+
>> static void xe_ip_kunit_desc(const struct xe_ip *param, char *desc)
>> {
>> snprintf(desc, KUNIT_PARAM_DESC_SIZE, "%u.%02u %s",
>> param->verx100 / 100, param->verx100 % 100, param->name);
>> }
>>
>>+/* Pre-GMDID Graphics IPs */
>>+static const struct xe_ip legacy_graphics_ips[] = {
>>+ graphics_ip_xelp,
>>+ graphics_ip_xelpp,
>>+ graphics_ip_xehpg,
>>+ graphics_ip_xehpc,
>>+};
>>+
>>+/* Pre-GMDID Media IPs */
>>+static const struct xe_ip legacy_media_ips[] = {
>>+ media_ip_xem,
>>+ media_ip_xehpm,
>>+};
>>+
>>+KUNIT_ARRAY_PARAM(legacy_graphics_ip, legacy_graphics_ips, xe_ip_kunit_desc);
>>+KUNIT_ARRAY_PARAM(legacy_media_ip, legacy_media_ips, xe_ip_kunit_desc);
>>+
>> KUNIT_ARRAY_PARAM(graphics_ip, graphics_ips, xe_ip_kunit_desc);
>> KUNIT_ARRAY_PARAM(media_ip, media_ips, xe_ip_kunit_desc);
>>
>>@@ -34,6 +53,13 @@ KUNIT_ARRAY_PARAM(media_ip, media_ips, xe_ip_kunit_desc);
>> */
>> const void *xe_pci_graphics_ip_gen_param(const void *prev, char *desc)
>> {
>>+ const void *next = legacy_graphics_ip_gen_params(prev, desc);
>>+
>>+ if (next)
>>+ return next;
>>+ if (IS_ARRAY_ROW(legacy_graphics_ips, prev))
I don't understand what "is array row" means.
BR,
Jani.
>
> I don't like much this way of iterating over multiple arrays, but for a
> test generator is probably fine. Maybe add a comment on top of
> 'Pre-GMDID Graphics IPs`:
>
> /*
> * Mimic the way gmdid IPs are declared so the same param
> * generator can be used for both
> */
>
>
> anyway,
>
> Reviewed-by: Lucas De Marchi <lucas.demarchi at intel.com>
>
> Lucas De Marchi
>
>>+ prev = NULL;
>>+
>> return graphics_ip_gen_params(prev, desc);
>> }
>> EXPORT_SYMBOL_IF_KUNIT(xe_pci_graphics_ip_gen_param);
>>@@ -51,6 +77,13 @@ EXPORT_SYMBOL_IF_KUNIT(xe_pci_graphics_ip_gen_param);
>> */
>> const void *xe_pci_media_ip_gen_param(const void *prev, char *desc)
>> {
>>+ const void *next = legacy_media_ip_gen_params(prev, desc);
>>+
>>+ if (next)
>>+ return next;
>>+ if (IS_ARRAY_ROW(legacy_media_ips, prev))
>>+ prev = NULL;
>>+
>> return media_ip_gen_params(prev, desc);
>> }
>> EXPORT_SYMBOL_IF_KUNIT(xe_pci_media_ip_gen_param);
>>--
>>2.47.1
>>
--
Jani Nikula, Intel
More information about the Intel-xe
mailing list