msm: camera: cdm: Enhance CSID logs for debug purpose
Enable the csid long packet and cphy packet capture feature to log the VC, DT and WC info during the error IRQ. CRs-fixed: 3029730 Change-Id: I86c3400b58ecd5243d93b0fbbe0d4a38f895320e Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Dieser Commit ist enthalten in:
@@ -1156,8 +1156,9 @@ static int cam_ife_csid_hw_ver1_path_cfg(
|
||||
static int cam_ife_csid_ver1_rx_capture_config(
|
||||
struct cam_ife_csid_ver1_hw *csid_hw)
|
||||
{
|
||||
const struct cam_ife_csid_ver1_reg_info *csid_reg;
|
||||
struct cam_hw_soc_info *soc_info;
|
||||
const struct cam_ife_csid_ver1_reg_info *csid_reg;
|
||||
struct cam_hw_soc_info *soc_info;
|
||||
struct cam_ife_csid_rx_cfg *rx_cfg;
|
||||
uint32_t vc, dt, i;
|
||||
uint32_t val = 0;
|
||||
|
||||
@@ -1170,6 +1171,7 @@ static int cam_ife_csid_ver1_rx_capture_config(
|
||||
csid_hw->hw_intf->hw_idx);
|
||||
return 0;
|
||||
}
|
||||
rx_cfg = &csid_hw->rx_cfg;
|
||||
|
||||
vc = csid_hw->cid_data[i].vc_dt[CAM_IFE_CSID_MULTI_VC_DT_GRP_0].vc;
|
||||
dt = csid_hw->cid_data[i].vc_dt[CAM_IFE_CSID_MULTI_VC_DT_GRP_0].dt;
|
||||
@@ -1180,28 +1182,20 @@ static int cam_ife_csid_ver1_rx_capture_config(
|
||||
|
||||
if (csid_hw->debug_info.debug_val &
|
||||
CAM_IFE_CSID_DEBUG_ENABLE_SHORT_PKT_CAPTURE)
|
||||
val = ((1 <<
|
||||
csid_reg->csi2_reg->capture_short_pkt_en_shift) |
|
||||
(vc <<
|
||||
csid_reg->csi2_reg->capture_short_pkt_vc_shift));
|
||||
val = ((1 << csid_reg->csi2_reg->capture_short_pkt_en_shift) |
|
||||
(vc << csid_reg->csi2_reg->capture_short_pkt_vc_shift));
|
||||
|
||||
if (csid_hw->debug_info.debug_val &
|
||||
CAM_IFE_CSID_DEBUG_ENABLE_LONG_PKT_CAPTURE)
|
||||
val |= ((1 <<
|
||||
csid_reg->csi2_reg->capture_long_pkt_en_shift) |
|
||||
(dt <<
|
||||
csid_reg->csi2_reg->capture_long_pkt_dt_shift) |
|
||||
(vc <<
|
||||
csid_reg->csi2_reg->capture_long_pkt_vc_shift));
|
||||
/* CAM_IFE_CSID_DEBUG_ENABLE_LONG_PKT_CAPTURE */
|
||||
val |= ((1 << csid_reg->csi2_reg->capture_long_pkt_en_shift) |
|
||||
(dt << csid_reg->csi2_reg->capture_long_pkt_dt_shift) |
|
||||
(vc << csid_reg->csi2_reg->capture_long_pkt_vc_shift));
|
||||
|
||||
if (csid_hw->debug_info.debug_val &
|
||||
CAM_IFE_CSID_DEBUG_ENABLE_CPHY_PKT_CAPTURE)
|
||||
val |= ((1 <<
|
||||
csid_reg->csi2_reg->capture_cphy_pkt_en_shift) |
|
||||
(dt <<
|
||||
csid_reg->csi2_reg->capture_cphy_pkt_dt_shift) |
|
||||
(vc <<
|
||||
csid_reg->csi2_reg->capture_cphy_pkt_vc_shift));
|
||||
/* CAM_IFE_CSID_DEBUG_ENABLE_CPHY_PKT_CAPTURE*/
|
||||
if (rx_cfg->lane_type == CAM_ISP_LANE_TYPE_CPHY) {
|
||||
val |= ((1 << csid_reg->csi2_reg->capture_cphy_pkt_en_shift) |
|
||||
(dt << csid_reg->csi2_reg->capture_cphy_pkt_dt_shift) |
|
||||
(vc << csid_reg->csi2_reg->capture_cphy_pkt_vc_shift));
|
||||
}
|
||||
|
||||
cam_io_w_mb(val, soc_info->reg_map[0].mem_base +
|
||||
csid_reg->csi2_reg->capture_ctrl_addr);
|
||||
|
@@ -3488,8 +3488,9 @@ end:
|
||||
static int cam_ife_csid_ver2_rx_capture_config(
|
||||
struct cam_ife_csid_ver2_hw *csid_hw)
|
||||
{
|
||||
const struct cam_ife_csid_ver2_reg_info *csid_reg;
|
||||
struct cam_hw_soc_info *soc_info;
|
||||
const struct cam_ife_csid_ver2_reg_info *csid_reg;
|
||||
struct cam_hw_soc_info *soc_info;
|
||||
struct cam_ife_csid_rx_cfg *rx_cfg;
|
||||
uint32_t vc, dt, i;
|
||||
uint32_t val = 0;
|
||||
|
||||
@@ -3503,43 +3504,34 @@ static int cam_ife_csid_ver2_rx_capture_config(
|
||||
return 0;
|
||||
}
|
||||
|
||||
rx_cfg = &csid_hw->rx_cfg;
|
||||
|
||||
vc = csid_hw->cid_data[i].vc_dt[CAM_IFE_CSID_MULTI_VC_DT_GRP_0].vc;
|
||||
dt = csid_hw->cid_data[i].vc_dt[CAM_IFE_CSID_MULTI_VC_DT_GRP_0].dt;
|
||||
|
||||
csid_reg = (struct cam_ife_csid_ver2_reg_info *)
|
||||
csid_hw->core_info->csid_reg;
|
||||
csid_reg = (struct cam_ife_csid_ver2_reg_info *) csid_hw->core_info->csid_reg;
|
||||
soc_info = &csid_hw->hw_info->soc_info;
|
||||
|
||||
if (csid_hw->debug_info.debug_val &
|
||||
CAM_IFE_CSID_DEBUG_ENABLE_SHORT_PKT_CAPTURE)
|
||||
val = ((1 <<
|
||||
csid_reg->csi2_reg->capture_short_pkt_en_shift) |
|
||||
(vc <<
|
||||
csid_reg->csi2_reg->capture_short_pkt_vc_shift));
|
||||
val = ((1 << csid_reg->csi2_reg->capture_short_pkt_en_shift) |
|
||||
(vc << csid_reg->csi2_reg->capture_short_pkt_vc_shift));
|
||||
|
||||
if (csid_hw->debug_info.debug_val &
|
||||
CAM_IFE_CSID_DEBUG_ENABLE_LONG_PKT_CAPTURE)
|
||||
val |= ((1 <<
|
||||
csid_reg->csi2_reg->capture_long_pkt_en_shift) |
|
||||
(dt <<
|
||||
csid_reg->csi2_reg->capture_long_pkt_dt_shift) |
|
||||
(vc <<
|
||||
csid_reg->csi2_reg->capture_long_pkt_vc_shift));
|
||||
/* CAM_IFE_CSID_DEBUG_ENABLE_LONG_PKT_CAPTURE */
|
||||
val |= ((1 << csid_reg->csi2_reg->capture_long_pkt_en_shift) |
|
||||
(dt << csid_reg->csi2_reg->capture_long_pkt_dt_shift) |
|
||||
(vc << csid_reg->csi2_reg->capture_long_pkt_vc_shift));
|
||||
|
||||
if (csid_hw->debug_info.debug_val &
|
||||
CAM_IFE_CSID_DEBUG_ENABLE_CPHY_PKT_CAPTURE)
|
||||
val |= ((1 <<
|
||||
csid_reg->csi2_reg->capture_cphy_pkt_en_shift) |
|
||||
(dt <<
|
||||
csid_reg->csi2_reg->capture_cphy_pkt_dt_shift) |
|
||||
(vc <<
|
||||
csid_reg->csi2_reg->capture_cphy_pkt_vc_shift));
|
||||
/* CAM_IFE_CSID_DEBUG_ENABLE_CPHY_PKT_CAPTURE */
|
||||
if (rx_cfg->lane_type == CAM_ISP_LANE_TYPE_CPHY) {
|
||||
val |= ((1 << csid_reg->csi2_reg->capture_cphy_pkt_en_shift) |
|
||||
(dt << csid_reg->csi2_reg->capture_cphy_pkt_dt_shift) |
|
||||
(vc << csid_reg->csi2_reg->capture_cphy_pkt_vc_shift));
|
||||
}
|
||||
|
||||
cam_io_w_mb(val, soc_info->reg_map[0].mem_base +
|
||||
csid_reg->csi2_reg->capture_ctrl_addr);
|
||||
cam_io_w_mb(val, soc_info->reg_map[0].mem_base + csid_reg->csi2_reg->capture_ctrl_addr);
|
||||
|
||||
CAM_DBG(CAM_ISP, "CSID[%d] rx capture_ctrl: 0x%x",
|
||||
csid_hw->hw_intf->hw_idx, val);
|
||||
CAM_DBG(CAM_ISP, "CSID[%d] rx capture_ctrl: 0x%x", csid_hw->hw_intf->hw_idx, val);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
In neuem Issue referenzieren
Einen Benutzer sperren