Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/xe/pat: Clean up PAT register definitions

Replace the deprecated "GEN" terminology in the PAT definitions.

Acked-by: Nirmoy Das <nirmoy.das@intel.com>
Link: https://lore.kernel.org/r/20230324210415.2434992-5-matthew.d.roper@intel.com
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

authored by

Matt Roper and committed by
Rodrigo Vivi
366974e4 152d7f2d

+38 -35
+38 -35
drivers/gpu/drm/xe/xe_pat.c
··· 12 12 13 13 #define _PAT_INDEX(index) (0x4800 + (index) * 4) 14 14 15 - #define GEN8_PPAT_WB (3<<0) 16 - #define GEN8_PPAT_WT (2<<0) 17 - #define GEN8_PPAT_WC (1<<0) 18 - #define GEN8_PPAT_UC (0<<0) 19 - #define GEN12_PPAT_CLOS(x) ((x)<<2) 15 + #define MTL_L4_POLICY_MASK REG_GENMASK(3, 2) 16 + #define MTL_PAT_3_UC REG_FIELD_PREP(MTL_L4_POLICY_MASK, 3) 17 + #define MTL_PAT_1_WT REG_FIELD_PREP(MTL_L4_POLICY_MASK, 1) 18 + #define MTL_PAT_0_WB REG_FIELD_PREP(MTL_L4_POLICY_MASK, 0) 19 + #define MTL_INDEX_COH_MODE_MASK REG_GENMASK(1, 0) 20 + #define MTL_3_COH_2W REG_FIELD_PREP(MTL_INDEX_COH_MODE_MASK, 3) 21 + #define MTL_2_COH_1W REG_FIELD_PREP(MTL_INDEX_COH_MODE_MASK, 2) 22 + #define MTL_0_COH_NON REG_FIELD_PREP(MTL_INDEX_COH_MODE_MASK, 0) 23 + 24 + #define PVC_CLOS_LEVEL_MASK REG_GENMASK(3, 2) 25 + #define PVC_PAT_CLOS(x) REG_FIELD_PREP(PVC_CLOS_LEVEL_MASK, x) 26 + 27 + #define TGL_MEM_TYPE_MASK REG_GENMASK(1, 0) 28 + #define TGL_PAT_WB REG_FIELD_PREP(TGL_MEM_TYPE_MASK, 3) 29 + #define TGL_PAT_WT REG_FIELD_PREP(TGL_MEM_TYPE_MASK, 2) 30 + #define TGL_PAT_WC REG_FIELD_PREP(TGL_MEM_TYPE_MASK, 1) 31 + #define TGL_PAT_UC REG_FIELD_PREP(TGL_MEM_TYPE_MASK, 0) 20 32 21 33 const u32 tgl_pat_table[] = { 22 - [0] = GEN8_PPAT_WB, 23 - [1] = GEN8_PPAT_WC, 24 - [2] = GEN8_PPAT_WT, 25 - [3] = GEN8_PPAT_UC, 26 - [4] = GEN8_PPAT_WB, 27 - [5] = GEN8_PPAT_WB, 28 - [6] = GEN8_PPAT_WB, 29 - [7] = GEN8_PPAT_WB, 34 + [0] = TGL_PAT_WB, 35 + [1] = TGL_PAT_WC, 36 + [2] = TGL_PAT_WT, 37 + [3] = TGL_PAT_UC, 38 + [4] = TGL_PAT_WB, 39 + [5] = TGL_PAT_WB, 40 + [6] = TGL_PAT_WB, 41 + [7] = TGL_PAT_WB, 30 42 }; 31 43 32 44 const u32 pvc_pat_table[] = { 33 - [0] = GEN8_PPAT_UC, 34 - [1] = GEN8_PPAT_WC, 35 - [2] = GEN8_PPAT_WT, 36 - [3] = GEN8_PPAT_WB, 37 - [4] = GEN12_PPAT_CLOS(1) | GEN8_PPAT_WT, 38 - [5] = GEN12_PPAT_CLOS(1) | GEN8_PPAT_WB, 39 - [6] = GEN12_PPAT_CLOS(2) | GEN8_PPAT_WT, 40 - [7] = GEN12_PPAT_CLOS(2) | GEN8_PPAT_WB, 45 + [0] = TGL_PAT_UC, 46 + [1] = TGL_PAT_WC, 47 + [2] = TGL_PAT_WT, 48 + [3] = TGL_PAT_WB, 49 + [4] = PVC_PAT_CLOS(1) | TGL_PAT_WT, 50 + [5] = PVC_PAT_CLOS(1) | TGL_PAT_WB, 51 + [6] = PVC_PAT_CLOS(2) | TGL_PAT_WT, 52 + [7] = PVC_PAT_CLOS(2) | TGL_PAT_WB, 41 53 }; 42 54 43 - #define MTL_PPAT_L4_CACHE_POLICY_MASK REG_GENMASK(3, 2) 44 - #define MTL_PAT_INDEX_COH_MODE_MASK REG_GENMASK(1, 0) 45 - #define MTL_PPAT_3_UC REG_FIELD_PREP(MTL_PPAT_L4_CACHE_POLICY_MASK, 3) 46 - #define MTL_PPAT_1_WT REG_FIELD_PREP(MTL_PPAT_L4_CACHE_POLICY_MASK, 1) 47 - #define MTL_PPAT_0_WB REG_FIELD_PREP(MTL_PPAT_L4_CACHE_POLICY_MASK, 0) 48 - #define MTL_3_COH_2W REG_FIELD_PREP(MTL_PAT_INDEX_COH_MODE_MASK, 3) 49 - #define MTL_2_COH_1W REG_FIELD_PREP(MTL_PAT_INDEX_COH_MODE_MASK, 2) 50 - #define MTL_0_COH_NON REG_FIELD_PREP(MTL_PAT_INDEX_COH_MODE_MASK, 0) 51 - 52 55 const u32 mtl_pat_table[] = { 53 - [0] = MTL_PPAT_0_WB, 54 - [1] = MTL_PPAT_1_WT | MTL_2_COH_1W, 55 - [2] = MTL_PPAT_3_UC | MTL_2_COH_1W, 56 - [3] = MTL_PPAT_0_WB | MTL_2_COH_1W, 57 - [4] = MTL_PPAT_0_WB | MTL_3_COH_2W, 56 + [0] = MTL_PAT_0_WB, 57 + [1] = MTL_PAT_1_WT | MTL_2_COH_1W, 58 + [2] = MTL_PAT_3_UC | MTL_2_COH_1W, 59 + [3] = MTL_PAT_0_WB | MTL_2_COH_1W, 60 + [4] = MTL_PAT_0_WB | MTL_3_COH_2W, 58 61 }; 59 62 60 63 #define PROGRAM_PAT_UNICAST(gt, table) do { \