mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 10:04:04 +02:00
drm/xe/uapi: Add DRM_XE_QUERY_CONFIG_FLAG_HAS_CPU_ADDR_MIRROR
Add the DRM_XE_QUERY_CONFIG_FLAG_HAS_CPU_ADDR_MIRROR device query flag, which indicates whether the device supports CPU address mirroring. The intent is for UMDs to use this query to determine if a VM can be set up with CPU address mirroring. This flag is implemented by checking if the device supports GPU faults. v7: - Only report enabled if CONFIG_DRM_GPUSVM is selected (CI) Signed-off-by: Matthew Brost <matthew.brost@intel.com> Reviewed-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com> Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com> Reviewed-by: Tejas Upadhyay <tejas.upadhyay@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250306012657.3505757-20-matthew.brost@intel.com
This commit is contained in:
parent
c73b2cbd10
commit
77613a2e10
|
|
@ -338,8 +338,11 @@ static int query_config(struct xe_device *xe, struct drm_xe_device_query *query)
|
|||
config->info[DRM_XE_QUERY_CONFIG_REV_AND_DEVICE_ID] =
|
||||
xe->info.devid | (xe->info.revid << 16);
|
||||
if (xe_device_get_root_tile(xe)->mem.vram.usable_size)
|
||||
config->info[DRM_XE_QUERY_CONFIG_FLAGS] =
|
||||
config->info[DRM_XE_QUERY_CONFIG_FLAGS] |=
|
||||
DRM_XE_QUERY_CONFIG_FLAG_HAS_VRAM;
|
||||
if (xe->info.has_usm && IS_ENABLED(CONFIG_DRM_GPUSVM))
|
||||
config->info[DRM_XE_QUERY_CONFIG_FLAGS] |=
|
||||
DRM_XE_QUERY_CONFIG_FLAG_HAS_CPU_ADDR_MIRROR;
|
||||
config->info[DRM_XE_QUERY_CONFIG_FLAGS] |=
|
||||
DRM_XE_QUERY_CONFIG_FLAG_HAS_LOW_LATENCY;
|
||||
config->info[DRM_XE_QUERY_CONFIG_MIN_ALIGNMENT] =
|
||||
|
|
|
|||
|
|
@ -395,6 +395,8 @@ struct drm_xe_query_mem_regions {
|
|||
* has usable VRAM
|
||||
* - %DRM_XE_QUERY_CONFIG_FLAG_HAS_LOW_LATENCY - Flag is set if the device
|
||||
* has low latency hint support
|
||||
* - %DRM_XE_QUERY_CONFIG_FLAG_HAS_CPU_ADDR_MIRROR - Flag is set if the
|
||||
* device has CPU address mirroring support
|
||||
* - %DRM_XE_QUERY_CONFIG_MIN_ALIGNMENT - Minimal memory alignment
|
||||
* required by this device, typically SZ_4K or SZ_64K
|
||||
* - %DRM_XE_QUERY_CONFIG_VA_BITS - Maximum bits of a virtual address
|
||||
|
|
@ -412,6 +414,7 @@ struct drm_xe_query_config {
|
|||
#define DRM_XE_QUERY_CONFIG_FLAGS 1
|
||||
#define DRM_XE_QUERY_CONFIG_FLAG_HAS_VRAM (1 << 0)
|
||||
#define DRM_XE_QUERY_CONFIG_FLAG_HAS_LOW_LATENCY (1 << 1)
|
||||
#define DRM_XE_QUERY_CONFIG_FLAG_HAS_CPU_ADDR_MIRROR (1 << 2)
|
||||
#define DRM_XE_QUERY_CONFIG_MIN_ALIGNMENT 2
|
||||
#define DRM_XE_QUERY_CONFIG_VA_BITS 3
|
||||
#define DRM_XE_QUERY_CONFIG_MAX_EXEC_QUEUE_PRIORITY 4
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user