Hi, Julien:
On Thu, 2024-07-04 at 15:36 +0200, 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 [off-list ref]
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 <redacted>
Signed-off-by: Florian Sylvestre <redacted>
[Paul Elder fix irq locking]
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Co-developed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Co-developed-by: Julien Stephan <jstephan@baylibre.com>
Signed-off-by: Julien Stephan <jstephan@baylibre.com>
---
[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;
+
+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);
+else
+cam_dev->hw_functions->mtk_cam_cmos_vf_hw_disable(cam_dev);
+spin_unlock_irqrestore(&cam_dev->irqlock, flags);
+
+out:
+pm_runtime_put_autosuspend(dev);
+}
+