Commit c462f81b authored by Nirmoy Das's avatar Nirmoy Das
Browse files

drm/xe: Introduce has_atomic_enable_pte_bit device info



Add has_atomic_enable_pte_bit to specify that a device
has PTE_AE bit in its PTE feild. Currently XE2 and PVC
supports this so set this for those two.

This will help consolidate setting atomic access bit in PTE
logic which is spread between multiple files.

Reviewed-by: default avatarOak Zeng <oak.zeng@intel.com>
Reviewed-by: default avatarJosé Roberto de Souza <jose.souza@intel.com>
Acked-by: default avatarLionel Landwerlin <lionel.g.landwerlin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240430162529.21588-2-nirmoy.das@intel.com


Signed-off-by: default avatarNirmoy Das <nirmoy.das@intel.com>
parent e9c190b9
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -281,6 +281,8 @@ struct xe_device {
		u8 has_heci_gscfi:1;
		/** @info.skip_guc_pc: Skip GuC based PM feature init */
		u8 skip_guc_pc:1;
		/** @info.has_atomic_enable_pte_bit: Device has atomic enable PTE bit */
		u8 has_atomic_enable_pte_bit:1;

#if IS_ENABLED(CONFIG_DRM_XE_DISPLAY)
		struct {
+3 −0
Original line number Diff line number Diff line
@@ -146,6 +146,7 @@ static const struct xe_graphics_desc graphics_xehpc = {
	.vram_flags = XE_VRAM_FLAGS_NEED64K,

	.has_asid = 1,
	.has_atomic_enable_pte_bit = 1,
	.has_flat_ccs = 0,
	.has_usm = 1,
};
@@ -163,6 +164,7 @@ static const struct xe_graphics_desc graphics_xelpg = {
#define XE2_GFX_FEATURES \
	.dma_mask_size = 46, \
	.has_asid = 1, \
	.has_atomic_enable_pte_bit = 1, \
	.has_flat_ccs = 1, \
	.has_range_tlb_invalidation = 1, \
	.has_usm = 1, \
@@ -629,6 +631,7 @@ static int xe_info_init(struct xe_device *xe,
	xe->info.va_bits = graphics_desc->va_bits;
	xe->info.vm_max_level = graphics_desc->vm_max_level;
	xe->info.has_asid = graphics_desc->has_asid;
	xe->info.has_atomic_enable_pte_bit = graphics_desc->has_atomic_enable_pte_bit;
	xe->info.has_flat_ccs = graphics_desc->has_flat_ccs;
	xe->info.has_range_tlb_invalidation = graphics_desc->has_range_tlb_invalidation;
	xe->info.has_usm = graphics_desc->has_usm;
+1 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ struct xe_graphics_desc {
	u8 max_remote_tiles:2;

	u8 has_asid:1;
	u8 has_atomic_enable_pte_bit:1;
	u8 has_flat_ccs:1;
	u8 has_range_tlb_invalidation:1;
	u8 has_usm:1;