On Thu, 18 Sep 2025, Ville Syrjälä <ville.syrj...@linux.intel.com> wrote:
> On Thu, Sep 18, 2025 at 03:41:24PM +0300, Jani Nikula wrote:
>> diff --git a/drivers/gpu/drm/i915/i915_irq.c 
>> b/drivers/gpu/drm/i915/i915_irq.c
>> index ab65402bc6bf..af2b43679b1b 100644
>> --- a/drivers/gpu/drm/i915/i915_irq.c
>> +++ b/drivers/gpu/drm/i915/i915_irq.c
>> @@ -656,22 +656,9 @@ static irqreturn_t dg1_irq_handler(int irq, void *arg)
>>  static void ilk_irq_reset(struct drm_i915_private *dev_priv)
>>  {
>>      struct intel_display *display = dev_priv->display;
>> -    struct intel_uncore *uncore = &dev_priv->uncore;
>> -
>> -    gen2_irq_reset(uncore, DE_IRQ_REGS);
>> -    display->irq.ilk_de_imr_mask = ~0u;
>> -
>> -    if (GRAPHICS_VER(dev_priv) == 7)
>> -            intel_uncore_write(uncore, GEN7_ERR_INT, 0xffffffff);
>> -
>> -    if (IS_HASWELL(dev_priv)) {
>> -            intel_uncore_write(uncore, EDP_PSR_IMR, 0xffffffff);
>> -            intel_uncore_write(uncore, EDP_PSR_IIR, 0xffffffff);
>> -    }
>>  
>>      gen5_gt_irq_reset(to_gt(dev_priv));
>> -
>> -    ibx_display_irq_reset(display);
>> +    ilk_display_irq_reset(display);
>
> The master interrupt enable bit is in DEIER, so we really should
> reset that first. I suppose we could just do the entire display
> irq reset before the gt stuff (ie. effectively just move the pch
> irq reset ahead of the gt irq reset).

Thanks for catching this. I had a glance at other irq reset functions,
which seemed to have gt before display, but I just didn't put deeper
thought into why and what's different.

v3 on the list.


-- 
Jani Nikula, Intel

Reply via email to