فهرست منبع

msm: camera: isp: Reset the CSID debug info on release

Reset the CSID debug info on release. Without releasing the
IRQ enabled for previous session will be trigerred in next session
as well.

Change-Id: I3d4dec4446926f60ba772a9608c96513a9919a4f
CRs-Fixed: 2830502
Signed-off-by: Gaurav Jindal <[email protected]>
Gaurav Jindal 4 سال پیش
والد
کامیت
b1bb0805a9

+ 4 - 0
drivers/cam_isp/isp_hw_mgr/isp_hw/ife_csid_hw/cam_ife_csid_hw_ver1.c

@@ -205,6 +205,8 @@ static int cam_ife_csid_ver1_set_debug(
 	int bit_pos = 0;
 	uint32_t val;
 
+	memset(&csid_hw->debug_info, 0,
+		sizeof(struct cam_ife_csid_debug_info));
 	csid_hw->debug_info.debug_val = debug_val;
 
 	while (debug_val) {
@@ -1837,6 +1839,8 @@ int cam_ife_csid_ver1_release(void *hw_priv,
 	if (!csid_hw->counters.csi2_reserve_cnt) {
 		memset(&csid_hw->rx_cfg, 0,
 			sizeof(struct cam_ife_csid_rx_cfg));
+		memset(&csid_hw->debug_info, 0,
+			sizeof(struct cam_ife_csid_debug_info));
 		csid_hw->event_cb = NULL;
 		csid_hw->token = NULL;
 	}

+ 4 - 0
drivers/cam_isp/isp_hw_mgr/isp_hw/ife_csid_hw/cam_ife_csid_hw_ver2.c

@@ -231,6 +231,8 @@ static int cam_ife_csid_ver2_set_debug(
 	int bit_pos = 0;
 	uint32_t val;
 
+	memset(&csid_hw->debug_info, 0,
+		sizeof(struct cam_ife_csid_debug_info));
 	csid_hw->debug_info.debug_val = debug_val;
 
 	while (debug_val) {
@@ -1791,6 +1793,8 @@ int cam_ife_csid_ver2_release(void *hw_priv,
 			sizeof(struct cam_ife_csid_rx_cfg));
 		memset(&csid_hw->top_cfg, 0,
 			sizeof(struct cam_ife_csid_ver2_top_cfg));
+		memset(&csid_hw->debug_info, 0,
+			sizeof(struct cam_ife_csid_debug_info));
 		csid_hw->token = NULL;
 	}