drm/xe/tests/mocs: Update xe_force_wake_get() return handling
authorHimal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Mon, 14 Oct 2024 07:55:47 +0000 (13:25 +0530)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 17 Oct 2024 14:17:08 +0000 (10:17 -0400)
With xe_force_wake_get() now returning the refcount-incremented domain
mask, a return value of 0 indicates failure for single domains.
Change assert condition to incorporate this change in return and
pass the return value to xe_force_wake_put()

v3
- return xe_wakeref_t instead of int in xe_force_wake_get()

v5
- return unsigned int for xe_force_wake_get()

Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
Reviewed-by: Badal Nilawar <badal.nilawar@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241014075601.2324382-13-himal.prasad.ghimiray@intel.com
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/tests/xe_mocs.c

index ea932c051cc7a6f5885aaf9dc17262e38872f23d..6f9b7a266b41955cd205d09b731b3f7a741df46e 100644 (file)
@@ -43,12 +43,11 @@ static void read_l3cc_table(struct xe_gt *gt,
 {
        struct kunit *test = kunit_get_current_test();
        u32 l3cc, l3cc_expected;
-       unsigned int i;
+       unsigned int fw_ref, i;
        u32 reg_val;
-       u32 ret;
 
-       ret = xe_force_wake_get(gt_to_fw(gt), XE_FW_GT);
-       KUNIT_ASSERT_EQ_MSG(test, ret, 0, "Forcewake Failed.\n");
+       fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FW_GT);
+       KUNIT_ASSERT_NE_MSG(test, fw_ref, 0, "Forcewake Failed.\n");
 
        for (i = 0; i < info->num_mocs_regs; i++) {
                if (!(i & 1)) {
@@ -72,7 +71,7 @@ static void read_l3cc_table(struct xe_gt *gt,
                KUNIT_EXPECT_EQ_MSG(test, l3cc_expected, l3cc,
                                    "l3cc idx=%u has incorrect val.\n", i);
        }
-       xe_force_wake_put(gt_to_fw(gt), XE_FW_GT);
+       xe_force_wake_put(gt_to_fw(gt), fw_ref);
 }
 
 static void read_mocs_table(struct xe_gt *gt,
@@ -80,15 +79,14 @@ static void read_mocs_table(struct xe_gt *gt,
 {
        struct kunit *test = kunit_get_current_test();
        u32 mocs, mocs_expected;
-       unsigned int i;
+       unsigned int fw_ref, i;
        u32 reg_val;
-       u32 ret;
 
        KUNIT_EXPECT_TRUE_MSG(test, info->unused_entries_index,
                              "Unused entries index should have been defined\n");
 
-       ret = xe_force_wake_get(gt_to_fw(gt), XE_FW_GT);
-       KUNIT_ASSERT_EQ_MSG(test, ret, 0, "Forcewake Failed.\n");
+       fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FW_GT);
+       KUNIT_ASSERT_NE_MSG(test, fw_ref, 0, "Forcewake Failed.\n");
 
        for (i = 0; i < info->num_mocs_regs; i++) {
                if (regs_are_mcr(gt))
@@ -106,7 +104,7 @@ static void read_mocs_table(struct xe_gt *gt,
                                    "mocs reg 0x%x has incorrect val.\n", i);
        }
 
-       xe_force_wake_put(gt_to_fw(gt), XE_FW_GT);
+       xe_force_wake_put(gt_to_fw(gt), fw_ref);
 }
 
 static int mocs_kernel_test_run_device(struct xe_device *xe)