drm/xe/mocs: Refactor mocs/l3cc loop
authorLucas De Marchi <lucas.demarchi@intel.com>
Wed, 28 Feb 2024 06:10:44 +0000 (22:10 -0800)
committerLucas De Marchi <lucas.demarchi@intel.com>
Fri, 1 Mar 2024 04:28:42 +0000 (20:28 -0800)
There's no reason to keep the assignment an condition in the same
statement, particularly making use of the comma operator. Improve
readability by doing each step on its own statement. This will make
supporting odd number of entries more easily.

Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240228061048.3661978-2-lucas.demarchi@intel.com
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
drivers/gpu/drm/xe/tests/xe_mocs.c
drivers/gpu/drm/xe/xe_mocs.c

index df0cbb2ddcb508a716b66104135b7963424bae50..7c91e01c47a3a6dfe03e179df3ce7bc8cc245e21 100644 (file)
@@ -49,11 +49,11 @@ static void read_l3cc_table(struct xe_gt *gt,
        ret = xe_force_wake_get(gt_to_fw(gt), XE_FW_GT);
        KUNIT_ASSERT_EQ_MSG(test, ret, 0, "Forcewake Failed.\n");
        mocs_dbg(&gt_to_xe(gt)->drm, "L3CC entries:%d\n", info->n_entries);
-       for (i = 0;
-            i < (info->n_entries + 1) / 2 ?
-            (l3cc = l3cc_combine(get_entry_l3cc(info, 2 * i),
-                                 get_entry_l3cc(info, 2 * i + 1))), 1 : 0;
-            i++) {
+
+       for (i = 0; i < (info->n_entries + 1) / 2; i++) {
+               l3cc = l3cc_combine(get_entry_l3cc(info, 2 * i),
+                                   get_entry_l3cc(info, 2 * i + 1));
+
                if (GRAPHICS_VERx100(gt_to_xe(gt)) >= 1250)
                        reg_val = xe_gt_mcr_unicast_read_any(gt, XEHP_LNCFCMOCS(i));
                else
@@ -84,9 +84,10 @@ static void read_mocs_table(struct xe_gt *gt,
        mocs_dbg(&gt_to_xe(gt)->drm, "Global MOCS entries:%d\n", info->n_entries);
        drm_WARN_ONCE(&xe->drm, !info->unused_entries_index,
                      "Unused entries index should have been defined\n");
-       for (i = 0;
-            i < info->n_entries ? (mocs = get_entry_control(info, i)), 1 : 0;
-            i++) {
+
+       for (i = 0; i < info->n_entries; i++) {
+               mocs = get_entry_control(info, i);
+
                if (GRAPHICS_VERx100(gt_to_xe(gt)) >= 1250)
                        reg_val = xe_gt_mcr_unicast_read_any(gt, XEHP_GLOBAL_MOCS(i));
                else
index 609d997b3e9b09e063b7a3a19f7793e3fd71360b..001e4301c639d704317ad26bea12c625583c5ef7 100644 (file)
@@ -473,9 +473,9 @@ static void __init_mocs_table(struct xe_gt *gt,
        mocs_dbg(&gt_to_xe(gt)->drm, "entries:%d\n", info->n_entries);
        drm_WARN_ONCE(&xe->drm, !info->unused_entries_index,
                      "Unused entries index should have been defined\n");
-       for (i = 0;
-            i < info->n_entries ? (mocs = get_entry_control(info, i)), 1 : 0;
-            i++) {
+       for (i = 0; i < info->n_entries; i++) {
+               mocs = get_entry_control(info, i);
+
                mocs_dbg(&gt_to_xe(gt)->drm, "GLOB_MOCS[%d] 0x%x 0x%x\n", i,
                         XELP_GLOBAL_MOCS(i).addr, mocs);
 
@@ -511,13 +511,12 @@ static void init_l3cc_table(struct xe_gt *gt,
        u32 l3cc;
 
        mocs_dbg(&gt_to_xe(gt)->drm, "entries:%d\n", info->n_entries);
-       for (i = 0;
-            i < (info->n_entries + 1) / 2 ?
-            (l3cc = l3cc_combine(get_entry_l3cc(info, 2 * i),
-                                 get_entry_l3cc(info, 2 * i + 1))), 1 : 0;
-            i++) {
-               mocs_dbg(&gt_to_xe(gt)->drm, "LNCFCMOCS[%d] 0x%x 0x%x\n", i, XELP_LNCFCMOCS(i).addr,
-                        l3cc);
+       for (i = 0; i < (info->n_entries + 1) / 2; i++) {
+               l3cc = l3cc_combine(get_entry_l3cc(info, 2 * i),
+                                   get_entry_l3cc(info, 2 * i + 1));
+
+               mocs_dbg(&gt_to_xe(gt)->drm, "LNCFCMOCS[%d] 0x%x 0x%x\n", i,
+                        XELP_LNCFCMOCS(i).addr, l3cc);
 
                if (GRAPHICS_VERx100(gt_to_xe(gt)) >= 1250)
                        xe_gt_mcr_multicast_write(gt, XEHP_LNCFCMOCS(i), l3cc);