On 07/08/2024, Markus Elfring wrote:
> …
>> registers of the display controller is accessed without command sequencer
> …
> 
> Wording suggestion:
>   The registers of …                  are …

Will do.

> 
> 
> …
>> +++ b/drivers/gpu/drm/imx/dc/dc-crtc.c
>> @@ -0,0 +1,578 @@
> …
>> +static irqreturn_t
>> +dc_crtc_dec_framecomplete_irq_handler(int irq, void *dev_id)
>> +{
> …
>> +    spin_lock_irqsave(&crtc->dev->event_lock, flags);
>> +    if (dc_crtc->event) {
> …
>> +    }
>> +    spin_unlock_irqrestore(&crtc->dev->event_lock, flags);
>> +
>> +    return IRQ_HANDLED;
>> +}
> …
> 
> Under which circumstances would you become interested to apply a statement
> like “guard(spinlock_irqsave)(&crtc->dev->event_lock);”?

I just follow the kerneldoc of drm_crtc_send_vblank_event() to
hold event lock like many other drivers do.

https://elixir.bootlin.com/linux/v6.10-rc6/source/drivers/gpu/drm/drm_vblank.c#L1120

> https://elixir.bootlin.com/linux/v6.10-rc6/source/include/linux/spinlock.h#L574
> 
> Regards,
> Markus

-- 
Regards,
Liu Ying

Reply via email to