Loading drivers/media/platform/msm/camera/cam_core/cam_context_utils.c +46 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,11 @@ int cam_context_buf_done_from_hw(struct cam_context *ctx, struct cam_hw_done_event_data *done = (struct cam_hw_done_event_data *)done_event_data; if (!ctx || !done) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, done); return -EINVAL; } if (list_empty(&ctx->active_req_list)) { CAM_ERR(CAM_CTXT, "no active request"); return -EIO; Loading Loading @@ -78,6 +83,12 @@ int cam_context_apply_req_to_hw(struct cam_context *ctx, struct cam_ctx_request *req; struct cam_hw_config_args cfg; if (!ctx || !apply) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, apply); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading Loading @@ -119,6 +130,11 @@ static void cam_context_sync_callback(int32_t sync_obj, int status, void *data) struct cam_ctx_request *req = NULL; struct cam_req_mgr_apply_request apply; if (!ctx) { CAM_ERR(CAM_CTXT, "Invalid input param"); return; } spin_lock(&ctx->lock); if (!list_empty(&ctx->pending_req_list)) req = list_first_entry(&ctx->pending_req_list, Loading @@ -144,6 +160,11 @@ int32_t cam_context_release_dev_to_hw(struct cam_context *ctx, struct cam_hw_release_args arg; struct cam_ctx_request *req; if (!ctx) { CAM_ERR(CAM_CTXT, "Invalid input param"); return -EINVAL; } if ((!ctx->hw_mgr_intf) || (!ctx->hw_mgr_intf->hw_release)) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); return -EINVAL; Loading Loading @@ -209,6 +230,12 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, size_t len = 0; int32_t i = 0; if (!ctx || !cmd) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, cmd); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading Loading @@ -304,6 +331,12 @@ int32_t cam_context_acquire_dev_to_hw(struct cam_context *ctx, struct cam_create_dev_hdl req_hdl_param; struct cam_hw_release_args release; if (!ctx || !cmd) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, cmd); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading Loading @@ -377,6 +410,12 @@ int32_t cam_context_start_dev_to_hw(struct cam_context *ctx, int rc = 0; struct cam_hw_start_args arg; if (!ctx || !cmd) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, cmd); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading @@ -392,6 +431,7 @@ int32_t cam_context_start_dev_to_hw(struct cam_context *ctx, } if (ctx->hw_mgr_intf->hw_start) { arg.ctxt_to_hw_map = ctx->ctxt_to_hw_map; rc = ctx->hw_mgr_intf->hw_start(ctx->hw_mgr_intf->hw_mgr_priv, &arg); if (rc) { Loading @@ -412,6 +452,12 @@ int32_t cam_context_stop_dev_to_hw(struct cam_context *ctx) struct cam_hw_stop_args stop; struct cam_ctx_request *req; if (!ctx) { CAM_ERR(CAM_CTXT, "Invalid input param"); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_bus/cam_vfe_bus_ver2.c +35 −24 Original line number Diff line number Diff line Loading @@ -650,6 +650,8 @@ static enum cam_vfe_bus_packer_format switch (out_fmt) { case CAM_FORMAT_NV21: case CAM_FORMAT_NV12: case CAM_FORMAT_UBWC_NV12: case CAM_FORMAT_UBWC_NV12_4R: return PACKER_FMT_PLAIN_8_LSB_MSB_10; case CAM_FORMAT_PLAIN64: return PACKER_FMT_PLAIN_64; Loading @@ -660,10 +662,6 @@ static enum cam_vfe_bus_packer_format case CAM_FORMAT_MIPI_RAW_14: case CAM_FORMAT_MIPI_RAW_16: case CAM_FORMAT_MIPI_RAW_20: case CAM_FORMAT_QTI_RAW_8: case CAM_FORMAT_QTI_RAW_10: case CAM_FORMAT_QTI_RAW_12: case CAM_FORMAT_QTI_RAW_14: case CAM_FORMAT_PLAIN128: case CAM_FORMAT_PLAIN8: case CAM_FORMAT_PLAIN16_8: Loading @@ -675,6 +673,9 @@ static enum cam_vfe_bus_packer_format case CAM_FORMAT_PD8: case CAM_FORMAT_PD10: return PACKER_FMT_PLAIN_128; case CAM_FORMAT_UBWC_TP10: case CAM_FORMAT_TP10: return PACKER_FMT_TP_10; default: return PACKER_FMT_MAX; } Loading Loading @@ -721,6 +722,7 @@ static int cam_vfe_bus_acquire_wm( rsrc_data->height = out_port_info->height; if (rsrc_data->index < 3) { /* Write master 0-2 refers to RDI 0/ RDI 1/RDI 2 */ rsrc_data->width = CAM_VFE_RDI_BUS_DEFAULT_WIDTH; rsrc_data->height = 0; rsrc_data->stride = CAM_VFE_RDI_BUS_DEFAULT_STRIDE; Loading @@ -728,50 +730,59 @@ static int cam_vfe_bus_acquire_wm( rsrc_data->en_cfg = 0x3; } else if (rsrc_data->index < 5 || rsrc_data->index == 7 || rsrc_data->index == 8) { switch (plane) { case PLANE_Y: /* Write master 3, 4 - for Full OUT , 7-8 FD OUT */ switch (rsrc_data->format) { case CAM_FORMAT_UBWC_NV12: case CAM_FORMAT_UBWC_NV12_4R: case CAM_FORMAT_UBWC_TP10: rsrc_data->en_ubwc = 1; /* Fall through for NV12 */ case CAM_FORMAT_NV21: case CAM_FORMAT_NV12: switch (plane) { case PLANE_C: rsrc_data->height /= 2; break; default: case PLANE_Y: break; default: CAM_ERR(CAM_ISP, "Invalid plane %d\n", plane); return -EINVAL; } break; case CAM_FORMAT_UBWC_TP10: rsrc_data->en_ubwc = 1; /* Fall through for LINEAR TP10 */ case CAM_FORMAT_TP10: rsrc_data->width = rsrc_data->width * 4 / 3; switch (plane) { case PLANE_C: switch (rsrc_data->format) { case CAM_FORMAT_NV21: case CAM_FORMAT_NV12: rsrc_data->height /= 2; break; case CAM_FORMAT_UBWC_NV12: case CAM_FORMAT_UBWC_NV12_4R: case CAM_FORMAT_UBWC_TP10: rsrc_data->height /= 2; rsrc_data->en_ubwc = 1; case PLANE_Y: break; default: break; CAM_ERR(CAM_ISP, "Invalid plane %d\n", plane); return -EINVAL; } break; default: CAM_ERR(CAM_ISP, "Invalid plane type %d", plane); CAM_ERR(CAM_ISP, "Invalid format %d\n", rsrc_data->format); return -EINVAL; } rsrc_data->en_cfg = 0x1; } else if (rsrc_data->index >= 11) { /* Write master 11-19 stats */ rsrc_data->width = 0; rsrc_data->height = 0; rsrc_data->stride = 1; rsrc_data->en_cfg = 0x3; } else { /* Write master 5-6 DS ports , 9 - Raw dump , 10 PDAF */ rsrc_data->width = rsrc_data->width * 4; rsrc_data->height = rsrc_data->height / 2; rsrc_data->en_cfg = 0x1; } if (vfe_out_res_id >= CAM_ISP_IFE_OUT_RES_RDI_0 && vfe_out_res_id <= CAM_ISP_IFE_OUT_RES_RDI_3) rsrc_data->frame_based = 1; Loading drivers/media/platform/msm/camera/cam_sensor_module/cam_cci/cam_cci_core.c +18 −18 Original line number Diff line number Diff line Loading @@ -145,13 +145,13 @@ static int32_t cam_cci_write_i2c_queue(struct cci_device *cci_dev, void __iomem *base = soc_info->reg_map[0].mem_base; if (!cci_dev) { CAM_ERR(CAM_CCI, "%s: failed %d"); CAM_ERR(CAM_CCI, "Failed"); return -EINVAL; } rc = cam_cci_validate_queue(cci_dev, 1, master, queue); if (rc < 0) { CAM_ERR(CAM_CCI, "Failed %d"); CAM_ERR(CAM_CCI, "Failed %d", rc); return rc; } CAM_DBG(CAM_CCI, "CCI_I2C_M0_Q0_LOAD_DATA_ADDR:val 0x%x:0x%x", Loading Loading @@ -184,42 +184,43 @@ static void cam_cci_dump_registers(struct cci_device *cci_dev, uint32_t reg_offset = 0; /* CCI Top Registers */ CCI_DBG(" **** %s : %d CCI TOP Registers ****"); CAM_DBG(CAM_CCI, "****CCI TOP Registers ****"); for (i = 0; i < DEBUG_TOP_REG_COUNT; i++) { reg_offset = DEBUG_TOP_REG_START + i * 4; read_val = cam_io_r_mb(cci_dev->base + reg_offset); CCI_DBG("offset = 0x%X value = 0x%X", CAM_DBG(CAM_CCI, "offset = 0x%X value = 0x%X", reg_offset, read_val); } /* CCI Master registers */ CCI_DBG(" ****CCI MASTER %d Registers ****", CAM_DBG(CAM_CCI, "****CCI MASTER %d Registers ****", master); for (i = 0; i < DEBUG_MASTER_REG_COUNT; i++) { if (i == 6) continue; reg_offset = DEBUG_MASTER_REG_START + master*0x100 + i * 4; read_val = cam_io_r_mb(cci_dev->base + reg_offset); CCI_DBG("offset = 0x%X value = 0x%X", reg_offset, read_val); CAM_DBG(CAM_CCI, "offset = 0x%X value = 0x%X", reg_offset, read_val); } /* CCI Master Queue registers */ CCI_DBG(" **** CCI MASTER%d QUEUE%d Registers ****", CAM_DBG(CAM_CCI, " **** CCI MASTER%d QUEUE%d Registers ****", master, queue); for (i = 0; i < DEBUG_MASTER_QUEUE_REG_COUNT; i++) { reg_offset = DEBUG_MASTER_QUEUE_REG_START + master*0x200 + queue*0x100 + i * 4; read_val = cam_io_r_mb(cci_dev->base + reg_offset); CCI_DBG("offset = 0x%X value = 0x%X", CAM_DBG(CAM_CCI, "offset = 0x%X value = 0x%X", reg_offset, read_val); } /* CCI Interrupt registers */ CCI_DBG(" ****CCI Interrupt Registers ****"); CAM_DBG(CAM_CCI, " ****CCI Interrupt Registers ****"); for (i = 0; i < DEBUG_INTR_REG_COUNT; i++) { reg_offset = DEBUG_INTR_REG_START + i * 4; read_val = cam_io_r_mb(cci_dev->base + reg_offset); CCI_DBG("offset = 0x%X value = 0x%X", CAM_DBG(CAM_CCI, "offset = 0x%X value = 0x%X", reg_offset, read_val); } } Loading Loading @@ -449,8 +450,7 @@ static int32_t cam_cci_calc_cmd_len(struct cci_device *cci_dev, } if (len > cci_dev->payload_size) { CAM_ERR(CAM_CCI, "%s: %d Len error: %d", len); CAM_ERR(CAM_CCI, "Len error: %d", len); return -EINVAL; } Loading Loading @@ -660,7 +660,7 @@ static int32_t cam_cci_data_queue(struct cci_device *cci_dev, rc = cam_cci_lock_queue(cci_dev, master, queue, 1); if (rc < 0) { CAM_ERR(CAM_CCI, "%s failed line %d"); CAM_ERR(CAM_CCI, "failed line %d", rc); return rc; } Loading @@ -670,7 +670,7 @@ static int32_t cam_cci_data_queue(struct cci_device *cci_dev, len = cam_cci_calc_cmd_len(cci_dev, c_ctrl, cmd_size, i2c_cmd, &pack); if (len <= 0) { CAM_ERR(CAM_CCI, "%s failed line %d"); CAM_ERR(CAM_CCI, "failed"); return -EINVAL; } Loading Loading @@ -918,7 +918,7 @@ static int32_t cam_cci_read(struct v4l2_subdev *sd, val = cam_io_r_mb(base + CCI_I2C_M0_Q0_CUR_WORD_CNT_ADDR + master * 0x200 + queue * 0x100); CAM_DBG(CAM_CCI, "%s cur word cnt 0x%x", val); CAM_DBG(CAM_CCI, "cur word cnt 0x%x", val); cam_io_w_mb(val, base + CCI_I2C_M0_Q0_EXEC_WORD_CNT_ADDR + master * 0x200 + queue * 0x100); Loading Loading @@ -989,7 +989,7 @@ static int32_t cam_cci_i2c_write(struct v4l2_subdev *sd, cci_dev = v4l2_get_subdevdata(sd); if (cci_dev->cci_state != CCI_STATE_ENABLED) { CAM_ERR(CAM_CCI, "%s invalid cci state %d", CAM_ERR(CAM_CCI, "invalid cci state %d", cci_dev->cci_state); return -EINVAL; } Loading @@ -1013,7 +1013,7 @@ static int32_t cam_cci_i2c_write(struct v4l2_subdev *sd, cci_dev->cci_i2c_queue_info[master][queue].max_queue_size-1, master, queue); if (rc < 0) { CAM_ERR(CAM_CCI, "%s:%d Initial validataion failed rc %d", CAM_ERR(CAM_CCI, "Initial validataion failed rc %d", rc); return rc; } Loading drivers/media/platform/msm/camera/cam_sensor_module/cam_sensor/cam_sensor_soc.c +0 −1 Original line number Diff line number Diff line Loading @@ -218,7 +218,6 @@ int32_t cam_sensor_parse_dt(struct cam_sensor_ctrl_t *s_ctrl) /* Initialize mutex */ mutex_init(&(s_ctrl->cam_sensor_mutex)); CAM_DBG(CAM_SENSOR, "%s: %d"); /* Initialize default parameters */ for (i = 0; i < soc_info->num_clk; i++) { soc_info->clk[i] = devm_clk_get(&soc_info->pdev->dev, Loading drivers/media/platform/msm/camera/cam_sensor_module/cam_sensor_io/cam_sensor_cci_i2c.c +0 −1 Original line number Diff line number Diff line Loading @@ -206,7 +206,6 @@ int32_t cam_sensor_cci_i2c_util(struct cam_sensor_cci_client *cci_client, int32_t rc = 0; struct cam_cci_ctrl cci_ctrl; CAM_DBG(CAM_SENSOR, "%s line %d"); cci_ctrl.cmd = cci_cmd; cci_ctrl.cci_info = cci_client; rc = v4l2_subdev_call(cci_client->cci_subdev, Loading Loading
drivers/media/platform/msm/camera/cam_core/cam_context_utils.c +46 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,11 @@ int cam_context_buf_done_from_hw(struct cam_context *ctx, struct cam_hw_done_event_data *done = (struct cam_hw_done_event_data *)done_event_data; if (!ctx || !done) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, done); return -EINVAL; } if (list_empty(&ctx->active_req_list)) { CAM_ERR(CAM_CTXT, "no active request"); return -EIO; Loading Loading @@ -78,6 +83,12 @@ int cam_context_apply_req_to_hw(struct cam_context *ctx, struct cam_ctx_request *req; struct cam_hw_config_args cfg; if (!ctx || !apply) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, apply); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading Loading @@ -119,6 +130,11 @@ static void cam_context_sync_callback(int32_t sync_obj, int status, void *data) struct cam_ctx_request *req = NULL; struct cam_req_mgr_apply_request apply; if (!ctx) { CAM_ERR(CAM_CTXT, "Invalid input param"); return; } spin_lock(&ctx->lock); if (!list_empty(&ctx->pending_req_list)) req = list_first_entry(&ctx->pending_req_list, Loading @@ -144,6 +160,11 @@ int32_t cam_context_release_dev_to_hw(struct cam_context *ctx, struct cam_hw_release_args arg; struct cam_ctx_request *req; if (!ctx) { CAM_ERR(CAM_CTXT, "Invalid input param"); return -EINVAL; } if ((!ctx->hw_mgr_intf) || (!ctx->hw_mgr_intf->hw_release)) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); return -EINVAL; Loading Loading @@ -209,6 +230,12 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, size_t len = 0; int32_t i = 0; if (!ctx || !cmd) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, cmd); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading Loading @@ -304,6 +331,12 @@ int32_t cam_context_acquire_dev_to_hw(struct cam_context *ctx, struct cam_create_dev_hdl req_hdl_param; struct cam_hw_release_args release; if (!ctx || !cmd) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, cmd); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading Loading @@ -377,6 +410,12 @@ int32_t cam_context_start_dev_to_hw(struct cam_context *ctx, int rc = 0; struct cam_hw_start_args arg; if (!ctx || !cmd) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, cmd); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading @@ -392,6 +431,7 @@ int32_t cam_context_start_dev_to_hw(struct cam_context *ctx, } if (ctx->hw_mgr_intf->hw_start) { arg.ctxt_to_hw_map = ctx->ctxt_to_hw_map; rc = ctx->hw_mgr_intf->hw_start(ctx->hw_mgr_intf->hw_mgr_priv, &arg); if (rc) { Loading @@ -412,6 +452,12 @@ int32_t cam_context_stop_dev_to_hw(struct cam_context *ctx) struct cam_hw_stop_args stop; struct cam_ctx_request *req; if (!ctx) { CAM_ERR(CAM_CTXT, "Invalid input param"); rc = -EINVAL; goto end; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "HW interface is not ready"); rc = -EFAULT; Loading
drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_bus/cam_vfe_bus_ver2.c +35 −24 Original line number Diff line number Diff line Loading @@ -650,6 +650,8 @@ static enum cam_vfe_bus_packer_format switch (out_fmt) { case CAM_FORMAT_NV21: case CAM_FORMAT_NV12: case CAM_FORMAT_UBWC_NV12: case CAM_FORMAT_UBWC_NV12_4R: return PACKER_FMT_PLAIN_8_LSB_MSB_10; case CAM_FORMAT_PLAIN64: return PACKER_FMT_PLAIN_64; Loading @@ -660,10 +662,6 @@ static enum cam_vfe_bus_packer_format case CAM_FORMAT_MIPI_RAW_14: case CAM_FORMAT_MIPI_RAW_16: case CAM_FORMAT_MIPI_RAW_20: case CAM_FORMAT_QTI_RAW_8: case CAM_FORMAT_QTI_RAW_10: case CAM_FORMAT_QTI_RAW_12: case CAM_FORMAT_QTI_RAW_14: case CAM_FORMAT_PLAIN128: case CAM_FORMAT_PLAIN8: case CAM_FORMAT_PLAIN16_8: Loading @@ -675,6 +673,9 @@ static enum cam_vfe_bus_packer_format case CAM_FORMAT_PD8: case CAM_FORMAT_PD10: return PACKER_FMT_PLAIN_128; case CAM_FORMAT_UBWC_TP10: case CAM_FORMAT_TP10: return PACKER_FMT_TP_10; default: return PACKER_FMT_MAX; } Loading Loading @@ -721,6 +722,7 @@ static int cam_vfe_bus_acquire_wm( rsrc_data->height = out_port_info->height; if (rsrc_data->index < 3) { /* Write master 0-2 refers to RDI 0/ RDI 1/RDI 2 */ rsrc_data->width = CAM_VFE_RDI_BUS_DEFAULT_WIDTH; rsrc_data->height = 0; rsrc_data->stride = CAM_VFE_RDI_BUS_DEFAULT_STRIDE; Loading @@ -728,50 +730,59 @@ static int cam_vfe_bus_acquire_wm( rsrc_data->en_cfg = 0x3; } else if (rsrc_data->index < 5 || rsrc_data->index == 7 || rsrc_data->index == 8) { switch (plane) { case PLANE_Y: /* Write master 3, 4 - for Full OUT , 7-8 FD OUT */ switch (rsrc_data->format) { case CAM_FORMAT_UBWC_NV12: case CAM_FORMAT_UBWC_NV12_4R: case CAM_FORMAT_UBWC_TP10: rsrc_data->en_ubwc = 1; /* Fall through for NV12 */ case CAM_FORMAT_NV21: case CAM_FORMAT_NV12: switch (plane) { case PLANE_C: rsrc_data->height /= 2; break; default: case PLANE_Y: break; default: CAM_ERR(CAM_ISP, "Invalid plane %d\n", plane); return -EINVAL; } break; case CAM_FORMAT_UBWC_TP10: rsrc_data->en_ubwc = 1; /* Fall through for LINEAR TP10 */ case CAM_FORMAT_TP10: rsrc_data->width = rsrc_data->width * 4 / 3; switch (plane) { case PLANE_C: switch (rsrc_data->format) { case CAM_FORMAT_NV21: case CAM_FORMAT_NV12: rsrc_data->height /= 2; break; case CAM_FORMAT_UBWC_NV12: case CAM_FORMAT_UBWC_NV12_4R: case CAM_FORMAT_UBWC_TP10: rsrc_data->height /= 2; rsrc_data->en_ubwc = 1; case PLANE_Y: break; default: break; CAM_ERR(CAM_ISP, "Invalid plane %d\n", plane); return -EINVAL; } break; default: CAM_ERR(CAM_ISP, "Invalid plane type %d", plane); CAM_ERR(CAM_ISP, "Invalid format %d\n", rsrc_data->format); return -EINVAL; } rsrc_data->en_cfg = 0x1; } else if (rsrc_data->index >= 11) { /* Write master 11-19 stats */ rsrc_data->width = 0; rsrc_data->height = 0; rsrc_data->stride = 1; rsrc_data->en_cfg = 0x3; } else { /* Write master 5-6 DS ports , 9 - Raw dump , 10 PDAF */ rsrc_data->width = rsrc_data->width * 4; rsrc_data->height = rsrc_data->height / 2; rsrc_data->en_cfg = 0x1; } if (vfe_out_res_id >= CAM_ISP_IFE_OUT_RES_RDI_0 && vfe_out_res_id <= CAM_ISP_IFE_OUT_RES_RDI_3) rsrc_data->frame_based = 1; Loading
drivers/media/platform/msm/camera/cam_sensor_module/cam_cci/cam_cci_core.c +18 −18 Original line number Diff line number Diff line Loading @@ -145,13 +145,13 @@ static int32_t cam_cci_write_i2c_queue(struct cci_device *cci_dev, void __iomem *base = soc_info->reg_map[0].mem_base; if (!cci_dev) { CAM_ERR(CAM_CCI, "%s: failed %d"); CAM_ERR(CAM_CCI, "Failed"); return -EINVAL; } rc = cam_cci_validate_queue(cci_dev, 1, master, queue); if (rc < 0) { CAM_ERR(CAM_CCI, "Failed %d"); CAM_ERR(CAM_CCI, "Failed %d", rc); return rc; } CAM_DBG(CAM_CCI, "CCI_I2C_M0_Q0_LOAD_DATA_ADDR:val 0x%x:0x%x", Loading Loading @@ -184,42 +184,43 @@ static void cam_cci_dump_registers(struct cci_device *cci_dev, uint32_t reg_offset = 0; /* CCI Top Registers */ CCI_DBG(" **** %s : %d CCI TOP Registers ****"); CAM_DBG(CAM_CCI, "****CCI TOP Registers ****"); for (i = 0; i < DEBUG_TOP_REG_COUNT; i++) { reg_offset = DEBUG_TOP_REG_START + i * 4; read_val = cam_io_r_mb(cci_dev->base + reg_offset); CCI_DBG("offset = 0x%X value = 0x%X", CAM_DBG(CAM_CCI, "offset = 0x%X value = 0x%X", reg_offset, read_val); } /* CCI Master registers */ CCI_DBG(" ****CCI MASTER %d Registers ****", CAM_DBG(CAM_CCI, "****CCI MASTER %d Registers ****", master); for (i = 0; i < DEBUG_MASTER_REG_COUNT; i++) { if (i == 6) continue; reg_offset = DEBUG_MASTER_REG_START + master*0x100 + i * 4; read_val = cam_io_r_mb(cci_dev->base + reg_offset); CCI_DBG("offset = 0x%X value = 0x%X", reg_offset, read_val); CAM_DBG(CAM_CCI, "offset = 0x%X value = 0x%X", reg_offset, read_val); } /* CCI Master Queue registers */ CCI_DBG(" **** CCI MASTER%d QUEUE%d Registers ****", CAM_DBG(CAM_CCI, " **** CCI MASTER%d QUEUE%d Registers ****", master, queue); for (i = 0; i < DEBUG_MASTER_QUEUE_REG_COUNT; i++) { reg_offset = DEBUG_MASTER_QUEUE_REG_START + master*0x200 + queue*0x100 + i * 4; read_val = cam_io_r_mb(cci_dev->base + reg_offset); CCI_DBG("offset = 0x%X value = 0x%X", CAM_DBG(CAM_CCI, "offset = 0x%X value = 0x%X", reg_offset, read_val); } /* CCI Interrupt registers */ CCI_DBG(" ****CCI Interrupt Registers ****"); CAM_DBG(CAM_CCI, " ****CCI Interrupt Registers ****"); for (i = 0; i < DEBUG_INTR_REG_COUNT; i++) { reg_offset = DEBUG_INTR_REG_START + i * 4; read_val = cam_io_r_mb(cci_dev->base + reg_offset); CCI_DBG("offset = 0x%X value = 0x%X", CAM_DBG(CAM_CCI, "offset = 0x%X value = 0x%X", reg_offset, read_val); } } Loading Loading @@ -449,8 +450,7 @@ static int32_t cam_cci_calc_cmd_len(struct cci_device *cci_dev, } if (len > cci_dev->payload_size) { CAM_ERR(CAM_CCI, "%s: %d Len error: %d", len); CAM_ERR(CAM_CCI, "Len error: %d", len); return -EINVAL; } Loading Loading @@ -660,7 +660,7 @@ static int32_t cam_cci_data_queue(struct cci_device *cci_dev, rc = cam_cci_lock_queue(cci_dev, master, queue, 1); if (rc < 0) { CAM_ERR(CAM_CCI, "%s failed line %d"); CAM_ERR(CAM_CCI, "failed line %d", rc); return rc; } Loading @@ -670,7 +670,7 @@ static int32_t cam_cci_data_queue(struct cci_device *cci_dev, len = cam_cci_calc_cmd_len(cci_dev, c_ctrl, cmd_size, i2c_cmd, &pack); if (len <= 0) { CAM_ERR(CAM_CCI, "%s failed line %d"); CAM_ERR(CAM_CCI, "failed"); return -EINVAL; } Loading Loading @@ -918,7 +918,7 @@ static int32_t cam_cci_read(struct v4l2_subdev *sd, val = cam_io_r_mb(base + CCI_I2C_M0_Q0_CUR_WORD_CNT_ADDR + master * 0x200 + queue * 0x100); CAM_DBG(CAM_CCI, "%s cur word cnt 0x%x", val); CAM_DBG(CAM_CCI, "cur word cnt 0x%x", val); cam_io_w_mb(val, base + CCI_I2C_M0_Q0_EXEC_WORD_CNT_ADDR + master * 0x200 + queue * 0x100); Loading Loading @@ -989,7 +989,7 @@ static int32_t cam_cci_i2c_write(struct v4l2_subdev *sd, cci_dev = v4l2_get_subdevdata(sd); if (cci_dev->cci_state != CCI_STATE_ENABLED) { CAM_ERR(CAM_CCI, "%s invalid cci state %d", CAM_ERR(CAM_CCI, "invalid cci state %d", cci_dev->cci_state); return -EINVAL; } Loading @@ -1013,7 +1013,7 @@ static int32_t cam_cci_i2c_write(struct v4l2_subdev *sd, cci_dev->cci_i2c_queue_info[master][queue].max_queue_size-1, master, queue); if (rc < 0) { CAM_ERR(CAM_CCI, "%s:%d Initial validataion failed rc %d", CAM_ERR(CAM_CCI, "Initial validataion failed rc %d", rc); return rc; } Loading
drivers/media/platform/msm/camera/cam_sensor_module/cam_sensor/cam_sensor_soc.c +0 −1 Original line number Diff line number Diff line Loading @@ -218,7 +218,6 @@ int32_t cam_sensor_parse_dt(struct cam_sensor_ctrl_t *s_ctrl) /* Initialize mutex */ mutex_init(&(s_ctrl->cam_sensor_mutex)); CAM_DBG(CAM_SENSOR, "%s: %d"); /* Initialize default parameters */ for (i = 0; i < soc_info->num_clk; i++) { soc_info->clk[i] = devm_clk_get(&soc_info->pdev->dev, Loading
drivers/media/platform/msm/camera/cam_sensor_module/cam_sensor_io/cam_sensor_cci_i2c.c +0 −1 Original line number Diff line number Diff line Loading @@ -206,7 +206,6 @@ int32_t cam_sensor_cci_i2c_util(struct cam_sensor_cci_client *cci_client, int32_t rc = 0; struct cam_cci_ctrl cci_ctrl; CAM_DBG(CAM_SENSOR, "%s line %d"); cci_ctrl.cmd = cci_cmd; cci_ctrl.cci_info = cci_client; rc = v4l2_subdev_call(cci_client->cci_subdev, Loading