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