FILE
xe_wa_test.c
File preview with syntax highlighting.
linux-6.19.14/drivers/gpu/drm/xe/tests/xe_wa_test.c
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright © 2023 Intel Corporation 4 */ 5 6#include <drm/drm_drv.h> 7#include <drm/drm_kunit_helpers.h> 8 9#include <kunit/test.h> 10 11#include "xe_device.h" 12#include "xe_kunit_helpers.h" 13#include "xe_pci_test.h" 14#include "xe_reg_sr.h" 15#include "xe_tuning.h" 16#include "xe_wa.h" 17 18static int xe_wa_test_init(struct kunit *test) 19{ 20 const struct xe_pci_fake_data *param = test->param_value; 21 struct xe_pci_fake_data data = *param; 22 struct xe_device *xe; 23 struct device *dev; 24 int ret; 25 26 dev = drm_kunit_helper_alloc_device(test); 27 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dev); 28 29 xe = xe_kunit_helper_alloc_xe_device(test, dev); 30 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, xe); 31 32 test->priv = &data; 33 ret = xe_pci_fake_device_init(xe); 34 KUNIT_ASSERT_EQ(test, ret, 0); 35 36 if (!param->graphics_verx100) 37 xe->info.step = param->step; 38 39 /* TODO: init hw engines for engine/LRC WAs */ 40 xe->drm.dev = dev; 41 test->priv = xe; 42 43 return 0; 44} 45 46static void xe_wa_gt(struct kunit *test) 47{ 48 struct xe_device *xe = test->priv; 49 struct xe_gt *gt; 50 int id; 51 52 for_each_gt(gt, xe, id) { 53 xe_reg_sr_init(>->reg_sr, "GT", xe); 54 55 xe_wa_process_gt(gt); 56 xe_tuning_process_gt(gt); 57 58 KUNIT_ASSERT_EQ(test, gt->reg_sr.errors, 0); 59 } 60} 61 62static struct kunit_case xe_wa_tests[] = { 63 KUNIT_CASE_PARAM(xe_wa_gt, xe_pci_fake_data_gen_params), 64 {} 65}; 66 67static struct kunit_suite xe_rtp_test_suite = { 68 .name = "xe_wa", 69 .init = xe_wa_test_init, 70 .test_cases = xe_wa_tests, 71}; 72 73kunit_test_suite(xe_rtp_test_suite);
~/
Read-only file preview.