aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Auld <[email protected]>2023-11-29 10:37:07 +0000
committerRodrigo Vivi <[email protected]>2023-12-21 11:45:09 -0500
commit8e35780233cee1b2d257e6adf4d82b08ded15e88 (patch)
tree22e891d981674f50465d027dd6957087368734be
parent975e4a3795d4f1373be538177525c0b714e0e65e (diff)
drm/xe/mocs: update MOCS table for xe2
Looks like there were some changes at some point here for preferring L4 uncached for some of the indexes. Triple checked the PAT settings also, but that looks all correct as per current BSpec. BSpec: 71582 Signed-off-by: Matthew Auld <[email protected]> Cc: Lucas De Marchi <[email protected]> Cc: Matt Roper <[email protected]> Reviewed-by: Lucas De Marchi <[email protected]> Signed-off-by: Rodrigo Vivi <[email protected]>
-rw-r--r--drivers/gpu/drm/xe/xe_mocs.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpu/drm/xe/xe_mocs.c b/drivers/gpu/drm/xe/xe_mocs.c
index 12a6d39fcd4a..ef79552e4f2f 100644
--- a/drivers/gpu/drm/xe/xe_mocs.c
+++ b/drivers/gpu/drm/xe/xe_mocs.c
@@ -366,9 +366,9 @@ static const struct xe_mocs_entry mtl_mocs_desc[] = {
static const struct xe_mocs_entry xe2_mocs_table[] = {
/* Defer to PAT */
- MOCS_ENTRY(0, XE2_L3_0_WB | L4_0_WB, 0),
- /* Cached L3 + L4 */
- MOCS_ENTRY(1, IG_PAT | XE2_L3_0_WB | L4_0_WB, 0),
+ MOCS_ENTRY(0, XE2_L3_0_WB | L4_3_UC, 0),
+ /* Cached L3, Uncached L4 */
+ MOCS_ENTRY(1, IG_PAT | XE2_L3_0_WB | L4_3_UC, 0),
/* Uncached L3, Cached L4 */
MOCS_ENTRY(2, IG_PAT | XE2_L3_3_UC | L4_0_WB, 0),
/* Uncached L3 + L4 */
@@ -390,8 +390,8 @@ static unsigned int get_mocs_settings(struct xe_device *xe,
info->table = xe2_mocs_table;
info->n_entries = XE2_NUM_MOCS_ENTRIES;
info->uc_index = 3;
- info->wb_index = 1;
- info->unused_entries_index = 1;
+ info->wb_index = 4;
+ info->unused_entries_index = 4;
break;
case XE_PVC:
info->size = ARRAY_SIZE(pvc_mocs_desc);