Skip to content

Commit e4afdef

Browse files
saiteja13427mattrope
authored andcommitted
drm/xe: Refactor dma_mask_size
dma_mask_size is more related to the platform than the GT IP. Thus move it to platform descriptors. v2: - Rebase Signed-off-by: Sai Teja Pottumuttu <[email protected]> Reviewed-by: Matt Roper <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected] Signed-off-by: Matt Roper <[email protected]>
1 parent 492f8d2 commit e4afdef

File tree

2 files changed

+16
-7
lines changed

2 files changed

+16
-7
lines changed

drivers/gpu/drm/xe/xe_pci.c

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ struct xe_device_desc {
5555

5656
enum xe_platform platform;
5757

58+
u8 dma_mask_size;
59+
5860
u8 require_force_probe:1;
5961
u8 is_dgfx:1;
6062

@@ -85,7 +87,6 @@ static const struct xe_graphics_desc graphics_xelp = {
8587

8688
.hw_engine_mask = BIT(XE_HW_ENGINE_RCS0) | BIT(XE_HW_ENGINE_BCS0),
8789

88-
.dma_mask_size = 39,
8990
.va_bits = 48,
9091
.vm_max_level = 3,
9192
};
@@ -97,14 +98,12 @@ static const struct xe_graphics_desc graphics_xelpp = {
9798

9899
.hw_engine_mask = BIT(XE_HW_ENGINE_RCS0) | BIT(XE_HW_ENGINE_BCS0),
99100

100-
.dma_mask_size = 39,
101101
.va_bits = 48,
102102
.vm_max_level = 3,
103103
};
104104

105105
#define XE_HP_FEATURES \
106106
.has_range_tlb_invalidation = true, \
107-
.dma_mask_size = 46, \
108107
.va_bits = 48, \
109108
.vm_max_level = 3
110109

@@ -139,7 +138,6 @@ static const struct xe_graphics_desc graphics_xehpc = {
139138
BIT(XE_HW_ENGINE_CCS2) | BIT(XE_HW_ENGINE_CCS3),
140139

141140
XE_HP_FEATURES,
142-
.dma_mask_size = 52,
143141
.max_remote_tiles = 1,
144142
.va_bits = 57,
145143
.vm_max_level = 4,
@@ -160,7 +158,6 @@ static const struct xe_graphics_desc graphics_xelpg = {
160158
};
161159

162160
#define XE2_GFX_FEATURES \
163-
.dma_mask_size = 46, \
164161
.has_asid = 1, \
165162
.has_atomic_enable_pte_bit = 1, \
166163
.has_flat_ccs = 1, \
@@ -220,6 +217,7 @@ static const struct xe_device_desc tgl_desc = {
220217
.graphics = &graphics_xelp,
221218
.media = &media_xem,
222219
PLATFORM(TIGERLAKE),
220+
.dma_mask_size = 39,
223221
.has_display = true,
224222
.has_llc = true,
225223
.require_force_probe = true,
@@ -229,6 +227,7 @@ static const struct xe_device_desc rkl_desc = {
229227
.graphics = &graphics_xelp,
230228
.media = &media_xem,
231229
PLATFORM(ROCKETLAKE),
230+
.dma_mask_size = 39,
232231
.has_display = true,
233232
.has_llc = true,
234233
.require_force_probe = true,
@@ -240,6 +239,7 @@ static const struct xe_device_desc adl_s_desc = {
240239
.graphics = &graphics_xelp,
241240
.media = &media_xem,
242241
PLATFORM(ALDERLAKE_S),
242+
.dma_mask_size = 39,
243243
.has_display = true,
244244
.has_llc = true,
245245
.require_force_probe = true,
@@ -255,6 +255,7 @@ static const struct xe_device_desc adl_p_desc = {
255255
.graphics = &graphics_xelp,
256256
.media = &media_xem,
257257
PLATFORM(ALDERLAKE_P),
258+
.dma_mask_size = 39,
258259
.has_display = true,
259260
.has_llc = true,
260261
.require_force_probe = true,
@@ -268,6 +269,7 @@ static const struct xe_device_desc adl_n_desc = {
268269
.graphics = &graphics_xelp,
269270
.media = &media_xem,
270271
PLATFORM(ALDERLAKE_N),
272+
.dma_mask_size = 39,
271273
.has_display = true,
272274
.has_llc = true,
273275
.require_force_probe = true,
@@ -281,6 +283,7 @@ static const struct xe_device_desc dg1_desc = {
281283
.media = &media_xem,
282284
DGFX_FEATURES,
283285
PLATFORM(DG1),
286+
.dma_mask_size = 39,
284287
.has_display = true,
285288
.has_heci_gscfi = 1,
286289
.require_force_probe = true,
@@ -304,6 +307,7 @@ static const u16 dg2_g12_ids[] = { INTEL_DG2_G12_IDS(NOP), 0 };
304307
static const struct xe_device_desc ats_m_desc = {
305308
.graphics = &graphics_xehpg,
306309
.media = &media_xehpm,
310+
.dma_mask_size = 46,
307311
.require_force_probe = true,
308312

309313
DG2_FEATURES,
@@ -313,6 +317,7 @@ static const struct xe_device_desc ats_m_desc = {
313317
static const struct xe_device_desc dg2_desc = {
314318
.graphics = &graphics_xehpg,
315319
.media = &media_xehpm,
320+
.dma_mask_size = 46,
316321
.require_force_probe = true,
317322

318323
DG2_FEATURES,
@@ -323,6 +328,7 @@ static const __maybe_unused struct xe_device_desc pvc_desc = {
323328
.graphics = &graphics_xehpc,
324329
DGFX_FEATURES,
325330
PLATFORM(PVC),
331+
.dma_mask_size = 52,
326332
.has_display = false,
327333
.has_heci_gscfi = 1,
328334
.require_force_probe = true,
@@ -332,25 +338,29 @@ static const struct xe_device_desc mtl_desc = {
332338
/* .graphics and .media determined via GMD_ID */
333339
.require_force_probe = true,
334340
PLATFORM(METEORLAKE),
341+
.dma_mask_size = 46,
335342
.has_display = true,
336343
.has_pxp = true,
337344
};
338345

339346
static const struct xe_device_desc lnl_desc = {
340347
PLATFORM(LUNARLAKE),
348+
.dma_mask_size = 46,
341349
.has_display = true,
342350
.has_pxp = true,
343351
};
344352

345353
static const struct xe_device_desc bmg_desc = {
346354
DGFX_FEATURES,
347355
PLATFORM(BATTLEMAGE),
356+
.dma_mask_size = 46,
348357
.has_display = true,
349358
.has_heci_cscfi = 1,
350359
};
351360

352361
static const struct xe_device_desc ptl_desc = {
353362
PLATFORM(PANTHERLAKE),
363+
.dma_mask_size = 46,
354364
.has_display = true,
355365
.require_force_probe = true,
356366
};
@@ -617,6 +627,7 @@ static int xe_info_init_early(struct xe_device *xe,
617627
xe->info.subplatform = subplatform_desc ?
618628
subplatform_desc->subplatform : XE_SUBPLATFORM_NONE;
619629

630+
xe->info.dma_mask_size = desc->dma_mask_size;
620631
xe->info.is_dgfx = desc->is_dgfx;
621632
xe->info.has_heci_gscfi = desc->has_heci_gscfi;
622633
xe->info.has_heci_cscfi = desc->has_heci_cscfi;
@@ -682,7 +693,6 @@ static int xe_info_init(struct xe_device *xe,
682693
xe->info.graphics_name = graphics_desc->name;
683694
xe->info.media_name = media_desc ? media_desc->name : "none";
684695

685-
xe->info.dma_mask_size = graphics_desc->dma_mask_size;
686696
xe->info.vram_flags = graphics_desc->vram_flags;
687697
xe->info.va_bits = graphics_desc->va_bits;
688698
xe->info.vm_max_level = graphics_desc->vm_max_level;

drivers/gpu/drm/xe/xe_pci_types.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ struct xe_graphics_desc {
1313
u8 ver;
1414
u8 rel;
1515

16-
u8 dma_mask_size; /* available DMA address bits */
1716
u8 va_bits;
1817
u8 vm_max_level;
1918
u8 vram_flags;

0 commit comments

Comments
 (0)