Hi, Julien: On Wed, 2024-01-10 at 15:14 +0100, Julien Stephan wrote: > > External email : Please do not click links or open attachments until > you have verified the sender or the content. > From: Phi-bang Nguyen <pnguyen@xxxxxxxxxxxx> > > This driver provides a path to bypass the SoC ISP so that image data > coming from the SENINF can go directly into memory without any image > processing. This allows the use of an external ISP. > > Signed-off-by: Phi-bang Nguyen <pnguyen@xxxxxxxxxxxx> > Signed-off-by: Florian Sylvestre <fsylvestre@xxxxxxxxxxxx> > [Paul Elder fix irq locking] > Signed-off-by: Paul Elder <paul.elder@xxxxxxxxxxxxxxxx> > Co-developed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > Co-developed-by: Julien Stephan <jstephan@xxxxxxxxxxxx> > Signed-off-by: Julien Stephan <jstephan@xxxxxxxxxxxx> > --- [snip] > + > +static void mtk_cam_cmos_vf_enable(struct mtk_cam_dev *cam_dev, > + bool enable, bool pak_en) > +{ > + struct device *dev = cam_dev->dev; > + unsigned long flags = 0; > + > + if (pm_runtime_get_sync(dev) < 0) { > + dev_err(dev, "failed to get pm_runtime\n"); > + goto out; > + } > + > + spin_lock_irqsave(&cam_dev->irqlock, flags); The comment of cam_dev->irqlock is "Protects the buffer list". Why do you protect hw_enable/hw_disable? And I think the naming of irqlock should be changed to 'buf_list_lock'. Regards, CK > + if (enable) > + (*cam_dev->hw_functions- > >mtk_cam_cmos_vf_hw_enable)(cam_dev, pak_en); > + else > + (*cam_dev->hw_functions- > >mtk_cam_cmos_vf_hw_disable)(cam_dev, pak_en); > + spin_unlock_irqrestore(&cam_dev->irqlock, flags); > + > +out: > + pm_runtime_put_autosuspend(dev); > +} > +