Matthew Brost
da3799c975
drm/xe: Use GuC to do GGTT invalidations for the GuC firmware
...
Only the GuC should be issuing TLB invalidations if it is enabled. Part
of this patch is sanitize the device on driver unload to ensure we do
not send GuC based TLB invalidations during driver unload.
Signed-off-by: Matthew Brost <matthew.brost@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Reviewed-by: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com >
2023-12-19 18:27:47 -05:00
Matthew Brost
332dd0116c
drm/xe: Add range based TLB invalidations
...
If the platform supports range based TLB invalidations use them. Hide
these details in the xe_gt_tlb_invalidation layer.
Signed-off-by: Matthew Brost <matthew.brost@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Reviewed-by: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com >
2023-12-19 18:27:46 -05:00
Matthew Brost
fc108a8b75
drm/xe: Add TLB invalidation fence
...
Fence will be signaled when TLB invalidation completion.
Signed-off-by: Matthew Brost <matthew.brost@intel.com >
Suggested-by: Thomas Hellström <thomas.hellstrom@linux.intel.com >
Reviewed-by: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
2023-12-19 18:27:45 -05:00
Matthew Brost
a9351846d9
drm/xe: Break of TLB invalidation into its own file
...
TLB invalidation is used by more than USM (page faults) so break this
code out into its own file.
Signed-off-by: Matthew Brost <matthew.brost@intel.com >
Reviewed-by: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
2023-12-19 18:27:45 -05:00