mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-07 22:08:33 -04:00
drm/xe/kunit: Promote fake platform parameter list
The list of all known representative platforms defined in xe_wa could be used in more places by other test suites. Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com> Cc: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com> Link: https://lore.kernel.org/r/20250829171922.572-6-michal.wajdeczko@intel.com
This commit is contained in:
@@ -12,6 +12,75 @@
|
||||
#include <kunit/test-bug.h>
|
||||
#include <kunit/visibility.h>
|
||||
|
||||
#define PLATFORM_CASE(platform__, graphics_step__) \
|
||||
{ \
|
||||
.platform = XE_ ## platform__, \
|
||||
.subplatform = XE_SUBPLATFORM_NONE, \
|
||||
.step = { .graphics = STEP_ ## graphics_step__ } \
|
||||
}
|
||||
|
||||
#define SUBPLATFORM_CASE(platform__, subplatform__, graphics_step__) \
|
||||
{ \
|
||||
.platform = XE_ ## platform__, \
|
||||
.subplatform = XE_SUBPLATFORM_ ## platform__ ## _ ## subplatform__, \
|
||||
.step = { .graphics = STEP_ ## graphics_step__ } \
|
||||
}
|
||||
|
||||
#define GMDID_CASE(platform__, graphics_verx100__, graphics_step__, \
|
||||
media_verx100__, media_step__) \
|
||||
{ \
|
||||
.platform = XE_ ## platform__, \
|
||||
.subplatform = XE_SUBPLATFORM_NONE, \
|
||||
.graphics_verx100 = graphics_verx100__, \
|
||||
.media_verx100 = media_verx100__, \
|
||||
.step = { .graphics = STEP_ ## graphics_step__, \
|
||||
.media = STEP_ ## media_step__ } \
|
||||
}
|
||||
|
||||
static const struct xe_pci_fake_data cases[] = {
|
||||
PLATFORM_CASE(TIGERLAKE, B0),
|
||||
PLATFORM_CASE(DG1, A0),
|
||||
PLATFORM_CASE(DG1, B0),
|
||||
PLATFORM_CASE(ALDERLAKE_S, A0),
|
||||
PLATFORM_CASE(ALDERLAKE_S, B0),
|
||||
PLATFORM_CASE(ALDERLAKE_S, C0),
|
||||
PLATFORM_CASE(ALDERLAKE_S, D0),
|
||||
PLATFORM_CASE(ALDERLAKE_P, A0),
|
||||
PLATFORM_CASE(ALDERLAKE_P, B0),
|
||||
PLATFORM_CASE(ALDERLAKE_P, C0),
|
||||
SUBPLATFORM_CASE(ALDERLAKE_S, RPLS, D0),
|
||||
SUBPLATFORM_CASE(ALDERLAKE_P, RPLU, E0),
|
||||
SUBPLATFORM_CASE(DG2, G10, C0),
|
||||
SUBPLATFORM_CASE(DG2, G11, B1),
|
||||
SUBPLATFORM_CASE(DG2, G12, A1),
|
||||
GMDID_CASE(METEORLAKE, 1270, A0, 1300, A0),
|
||||
GMDID_CASE(METEORLAKE, 1271, A0, 1300, A0),
|
||||
GMDID_CASE(METEORLAKE, 1274, A0, 1300, A0),
|
||||
GMDID_CASE(LUNARLAKE, 2004, A0, 2000, A0),
|
||||
GMDID_CASE(LUNARLAKE, 2004, B0, 2000, A0),
|
||||
GMDID_CASE(BATTLEMAGE, 2001, A0, 1301, A1),
|
||||
GMDID_CASE(PANTHERLAKE, 3000, A0, 3000, A0),
|
||||
};
|
||||
|
||||
KUNIT_ARRAY_PARAM(platform, cases, xe_pci_fake_data_desc);
|
||||
|
||||
/**
|
||||
* xe_pci_fake_data_gen_params - Generate struct xe_pci_fake_data parameters
|
||||
* @prev: the pointer to the previous parameter to iterate from or NULL
|
||||
* @desc: output buffer with minimum size of KUNIT_PARAM_DESC_SIZE
|
||||
*
|
||||
* This function prepares struct xe_pci_fake_data parameter.
|
||||
*
|
||||
* To be used only as a parameter generator function in &KUNIT_CASE_PARAM.
|
||||
*
|
||||
* Return: pointer to the next parameter or NULL if no more parameters
|
||||
*/
|
||||
const void *xe_pci_fake_data_gen_params(const void *prev, char *desc)
|
||||
{
|
||||
return platform_gen_params(prev, desc);
|
||||
}
|
||||
EXPORT_SYMBOL_IF_KUNIT(xe_pci_fake_data_gen_params);
|
||||
|
||||
static const struct xe_device_desc *lookup_desc(enum xe_platform p)
|
||||
{
|
||||
const struct xe_device_desc *desc;
|
||||
|
||||
@@ -24,6 +24,7 @@ struct xe_pci_fake_data {
|
||||
};
|
||||
|
||||
int xe_pci_fake_device_init(struct xe_device *xe);
|
||||
const void *xe_pci_fake_data_gen_params(const void *prev, char *desc);
|
||||
void xe_pci_fake_data_desc(const struct xe_pci_fake_data *param, char *desc);
|
||||
|
||||
const void *xe_pci_graphics_ip_gen_param(const void *prev, char *desc);
|
||||
|
||||
@@ -15,59 +15,6 @@
|
||||
#include "xe_tuning.h"
|
||||
#include "xe_wa.h"
|
||||
|
||||
#define PLATFORM_CASE(platform__, graphics_step__) \
|
||||
{ \
|
||||
.platform = XE_ ## platform__, \
|
||||
.subplatform = XE_SUBPLATFORM_NONE, \
|
||||
.step = { .graphics = STEP_ ## graphics_step__ } \
|
||||
}
|
||||
|
||||
|
||||
#define SUBPLATFORM_CASE(platform__, subplatform__, graphics_step__) \
|
||||
{ \
|
||||
.platform = XE_ ## platform__, \
|
||||
.subplatform = XE_SUBPLATFORM_ ## platform__ ## _ ## subplatform__, \
|
||||
.step = { .graphics = STEP_ ## graphics_step__ } \
|
||||
}
|
||||
|
||||
#define GMDID_CASE(platform__, graphics_verx100__, graphics_step__, \
|
||||
media_verx100__, media_step__) \
|
||||
{ \
|
||||
.platform = XE_ ## platform__, \
|
||||
.subplatform = XE_SUBPLATFORM_NONE, \
|
||||
.graphics_verx100 = graphics_verx100__, \
|
||||
.media_verx100 = media_verx100__, \
|
||||
.step = { .graphics = STEP_ ## graphics_step__, \
|
||||
.media = STEP_ ## media_step__ } \
|
||||
}
|
||||
|
||||
static const struct xe_pci_fake_data cases[] = {
|
||||
PLATFORM_CASE(TIGERLAKE, B0),
|
||||
PLATFORM_CASE(DG1, A0),
|
||||
PLATFORM_CASE(DG1, B0),
|
||||
PLATFORM_CASE(ALDERLAKE_S, A0),
|
||||
PLATFORM_CASE(ALDERLAKE_S, B0),
|
||||
PLATFORM_CASE(ALDERLAKE_S, C0),
|
||||
PLATFORM_CASE(ALDERLAKE_S, D0),
|
||||
PLATFORM_CASE(ALDERLAKE_P, A0),
|
||||
PLATFORM_CASE(ALDERLAKE_P, B0),
|
||||
PLATFORM_CASE(ALDERLAKE_P, C0),
|
||||
SUBPLATFORM_CASE(ALDERLAKE_S, RPLS, D0),
|
||||
SUBPLATFORM_CASE(ALDERLAKE_P, RPLU, E0),
|
||||
SUBPLATFORM_CASE(DG2, G10, C0),
|
||||
SUBPLATFORM_CASE(DG2, G11, B1),
|
||||
SUBPLATFORM_CASE(DG2, G12, A1),
|
||||
GMDID_CASE(METEORLAKE, 1270, A0, 1300, A0),
|
||||
GMDID_CASE(METEORLAKE, 1271, A0, 1300, A0),
|
||||
GMDID_CASE(METEORLAKE, 1274, A0, 1300, A0),
|
||||
GMDID_CASE(LUNARLAKE, 2004, A0, 2000, A0),
|
||||
GMDID_CASE(LUNARLAKE, 2004, B0, 2000, A0),
|
||||
GMDID_CASE(BATTLEMAGE, 2001, A0, 1301, A1),
|
||||
GMDID_CASE(PANTHERLAKE, 3000, A0, 3000, A0),
|
||||
};
|
||||
|
||||
KUNIT_ARRAY_PARAM(platform, cases, xe_pci_fake_data_desc);
|
||||
|
||||
static int xe_wa_test_init(struct kunit *test)
|
||||
{
|
||||
const struct xe_pci_fake_data *param = test->param_value;
|
||||
@@ -120,7 +67,7 @@ static void xe_wa_gt(struct kunit *test)
|
||||
}
|
||||
|
||||
static struct kunit_case xe_wa_tests[] = {
|
||||
KUNIT_CASE_PARAM(xe_wa_gt, platform_gen_params),
|
||||
KUNIT_CASE_PARAM(xe_wa_gt, xe_pci_fake_data_gen_params),
|
||||
{}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user