summaryrefslogtreecommitdiff
path: root/drivers/gpu
diff options
context:
space:
mode:
authorMichal Wajdeczko <michal.wajdeczko@intel.com>2026-01-09 16:12:18 +0100
committerMichal Wajdeczko <michal.wajdeczko@intel.com>2026-01-12 14:38:43 +0100
commit401fabd6e2767e92cb5b23ec38948cec1d52c754 (patch)
treecc08d2fb63cbea040278f3f3b9612f569869109d /drivers/gpu
parentff4eca1f46f3c2c485055e2c31432ab1ec5dbb96 (diff)
drm/xe/mert: Use local mert variable to simplify the code
There is no need to always refer to MERT data using tile pointer. Use of local mert pointer will simplify the code and make it look like other existing MERT function. Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com> Cc: Lukasz Laguna <lukasz.laguna@intel.com> Reviewed-by: Lukasz Laguna <lukasz.laguna@intel.com> Link: https://patch.msgid.link/20260109151219.26206-5-michal.wajdeczko@intel.com
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/xe/xe_mert.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/gpu/drm/xe/xe_mert.c b/drivers/gpu/drm/xe/xe_mert.c
index 598b039dfe25..ad832e89256c 100644
--- a/drivers/gpu/drm/xe/xe_mert.c
+++ b/drivers/gpu/drm/xe/xe_mert.c
@@ -52,6 +52,7 @@ int xe_mert_invalidate_lmtt(struct xe_device *xe)
void xe_mert_irq_handler(struct xe_device *xe, u32 master_ctl)
{
struct xe_tile *tile = xe_device_get_root_tile(xe);
+ struct xe_mert *mert = &tile->mert;
unsigned long flags;
u32 reg_val;
u8 err;
@@ -69,13 +70,13 @@ void xe_mert_irq_handler(struct xe_device *xe, u32 master_ctl)
else if (err)
drm_dbg(&xe->drm, "MERT catastrophic error: Unexpected fault (0x%x)\n", err);
- spin_lock_irqsave(&tile->mert.lock, flags);
- if (tile->mert.tlb_inv_triggered) {
+ spin_lock_irqsave(&mert->lock, flags);
+ if (mert->tlb_inv_triggered) {
reg_val = xe_mmio_read32(&tile->mmio, MERT_TLB_INV_DESC_A);
if (!(reg_val & MERT_TLB_INV_DESC_A_VALID)) {
- tile->mert.tlb_inv_triggered = false;
- complete_all(&tile->mert.tlb_inv_done);
+ mert->tlb_inv_triggered = false;
+ complete_all(&mert->tlb_inv_done);
}
}
- spin_unlock_irqrestore(&tile->mert.lock, flags);
+ spin_unlock_irqrestore(&mert->lock, flags);
}