Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 20c24ff4 authored by Senthil Kumar Rajagopal's avatar Senthil Kumar Rajagopal
Browse files

msm: camera: isp: Send error if regupdate doesn't come



If Regupdate doesn't come for a particular threshold value,
send error to halt the application.

Change-Id: Ib39b87c32db722fbb61b0f350584bc1860e990ac
Signed-off-by: default avatarSenthil Kumar Rajagopal <skrajago@codeaurora.org>
parent 09ac3781
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@
#define MAX_NUM_COMPOSITE_MASK 4
#define MAX_NUM_STATS_COMP_MASK 2
#define MAX_INIT_FRAME_DROP 31
#define MAX_REG_UPDATE_THRESHOLD 10
#define ISP_Q2 (1 << 2)

#define VFE_PING_FLAG 0xFFFFFFFF
@@ -373,6 +374,7 @@ struct msm_vfe_axi_composite_info {
struct msm_vfe_src_info {
	uint32_t frame_id;
	uint32_t camif_sof_frame_id;
	uint32_t reg_update_frame_id;
	uint8_t active;
	uint8_t pix_stream_count;
	uint8_t raw_stream_count;
+2 −0
Original line number Diff line number Diff line
@@ -737,6 +737,8 @@ static void msm_vfe40_reg_update(struct vfe_device *vfe_dev,
	ISP_DBG("%s update_mask %x\n", __func__, update_mask);

	spin_lock_irqsave(&vfe_dev->reg_update_lock, flags);
	vfe_dev->axi_data.src_info[VFE_PIX_0].reg_update_frame_id =
		vfe_dev->axi_data.src_info[VFE_PIX_0].frame_id;
	vfe_dev->reg_update_requested |= update_mask;
	msm_camera_io_w_mb(vfe_dev->reg_update_requested,
		vfe_dev->vfe_base + 0x378);
+2 −0
Original line number Diff line number Diff line
@@ -611,6 +611,8 @@ static void msm_vfe44_reg_update(struct vfe_device *vfe_dev,

	spin_lock_irqsave(&vfe_dev->reg_update_lock, flags);
	vfe_dev->reg_update_requested |= update_mask;
	vfe_dev->axi_data.src_info[VFE_PIX_0].reg_update_frame_id =
		vfe_dev->axi_data.src_info[VFE_PIX_0].frame_id;
	msm_camera_io_w_mb(vfe_dev->reg_update_requested,
		vfe_dev->vfe_base + 0x378);
	spin_unlock_irqrestore(&vfe_dev->reg_update_lock, flags);
+2 −0
Original line number Diff line number Diff line
@@ -537,6 +537,8 @@ static void msm_vfe46_reg_update(struct vfe_device *vfe_dev,
	ISP_DBG("%s update_mask %x\n", __func__, update_mask);

	spin_lock_irqsave(&vfe_dev->reg_update_lock, flags);
	vfe_dev->axi_data.src_info[VFE_PIX_0].reg_update_frame_id =
		vfe_dev->axi_data.src_info[VFE_PIX_0].frame_id;
	vfe_dev->reg_update_requested |= update_mask;
	msm_camera_io_w_mb(vfe_dev->reg_update_requested,
		vfe_dev->vfe_base + 0x3D8);
+2 −0
Original line number Diff line number Diff line
@@ -631,6 +631,8 @@ static void msm_vfe47_reg_update(struct vfe_device *vfe_dev,
	ISP_DBG("%s update_mask %x\n", __func__, update_mask);

	spin_lock_irqsave(&vfe_dev->reg_update_lock, flags);
	vfe_dev->axi_data.src_info[VFE_PIX_0].reg_update_frame_id =
		vfe_dev->axi_data.src_info[VFE_PIX_0].frame_id;
	vfe_dev->reg_update_requested |= update_mask;
	msm_camera_io_w_mb(vfe_dev->reg_update_requested,
		vfe_dev->vfe_base + 0x4AC);
Loading