Loading arch/arm64/boot/dts/qcom/sdmmagpie-camera-sensor-idp.dtsi +6 −6 Original line number Diff line number Diff line Loading @@ -313,39 +313,39 @@ cam_sensor_rear_active: cam_sensor_rear_active { pins = "gpio1"; function = "normal"; power-source = <0>; power-source = <1>; bias-disable; }; cam_sensor_rear_suspend: cam_sensor_rear_suspend { pins = "gpio1"; function = "normal"; power-source = <0>; power-source = <1>; bias-pull-down; }; cam_sensor_rear2_active: cam_sensor_rear2_active { pins = "gpio2"; function = "normal"; power-source = <0>; power-source = <1>; bias-disable; }; cam_sensor_rear2_suspend: cam_sensor_rear2_suspend { pins = "gpio2"; function = "normal"; power-source = <0>; power-source = <1>; bias-pull-down; }; cam_sensor_front_active: cam_sensor_front_active { pins = "gpio4"; function = "normal"; power-source = <0>; power-source = <1>; bias-disable; }; cam_sensor_front_suspend: cam_sensor_front_suspend { pins = "gpio4"; function = "normal"; power-source = <0>; power-source = <1>; bias-pull-down; }; }; arch/arm64/boot/dts/qcom/sm6150-camera.dtsi +8 −6 Original line number Diff line number Diff line Loading @@ -638,9 +638,10 @@ cam_vfe0: qcom,vfe0@acaf000 { cell-index = <0>; compatible = "qcom,vfe170"; reg-names = "ife"; reg = <0xacaf000 0x4000>; reg-cam-base = <0xaf000>; reg-names = "ife", "cam_camnoc"; reg = <0xacaf000 0x4000>, <0xac42000 0x5000>; reg-cam-base = <0xaf000 0x42000>; interrupt-names = "ife"; interrupts = <0 465 0>; regulator-names = "camss", "ife0"; Loading Loading @@ -725,9 +726,10 @@ cam_vfe1: qcom,vfe1@acb6000 { cell-index = <1>; compatible = "qcom,vfe170"; reg-names = "ife"; reg = <0xacb6000 0x4000>; reg-cam-base = <0xb6000>; reg-names = "ife", "cam_camnoc"; reg = <0xacb6000 0x4000>, <0xac42000 0x5000>; reg-cam-base = <0xb6000 0x42000>; interrupt-names = "ife"; interrupts = <0 467 0>; regulator-names = "camss", "ife1"; Loading drivers/media/platform/msm/camera/cam_core/cam_context.c +1 −0 Original line number Diff line number Diff line Loading @@ -527,6 +527,7 @@ int cam_context_init(struct cam_context *ctx, ctx->dev_name = dev_name; ctx->dev_id = dev_id; ctx->ctx_id = ctx_id; ctx->last_flush_req = 0; ctx->ctx_crm_intf = NULL; ctx->crm_ctx_intf = crm_node_intf; ctx->hw_mgr_intf = hw_mgr_intf; Loading drivers/media/platform/msm/camera/cam_core/cam_context_utils.c +15 −13 Original line number Diff line number Diff line Loading @@ -337,15 +337,13 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, if (!ctx || !cmd) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, cmd); rc = -EINVAL; goto end; return -EINVAL; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "[%s][%d] HW interface is not ready", ctx->dev_name, ctx->ctx_id); rc = -EFAULT; goto end; return -EFAULT; } rc = cam_context_validate_thread(); if (rc) Loading @@ -362,8 +360,7 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, if (!req) { CAM_ERR(CAM_CTXT, "[%s][%d] No more request obj free", ctx->dev_name, ctx->ctx_id); rc = -ENOMEM; goto end; return -ENOMEM; } memset(req, 0, sizeof(*req)); Loading @@ -389,7 +386,7 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, "request %lld has been flushed, reject packet", packet->header.request_id); rc = -EINVAL; goto free_req; goto free_cpu_buf; } if (packet->header.request_id > ctx->last_flush_req) Loading @@ -415,7 +412,7 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, "[%s][%d] Prepare config packet failed in HW layer", ctx->dev_name, ctx->ctx_id); rc = -EFAULT; goto free_req; goto free_cpu_buf; } req->num_hw_update_entries = cfg.num_hw_update_entries; req->num_out_map_entries = cfg.num_out_map_entries; Loading Loading @@ -466,30 +463,35 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, req->request_id); cam_context_putref(ctx); goto put_ref; } CAM_DBG(CAM_CTXT, "register in fence cb: %d ret = %d", req->in_map_entries[j].sync_id, rc); } goto end; } if (cam_mem_put_cpu_buf((int32_t) cmd->packet_handle)) CAM_WARN(CAM_CTXT, "[%s][%d] Can not put packet address", ctx->dev_name, ctx->ctx_id); return rc; put_ref: for (--i; i >= 0; i--) { rc = cam_sync_put_obj_ref(req->out_map_entries[i].sync_id); if (rc) if (cam_sync_put_obj_ref(req->out_map_entries[i].sync_id)) CAM_ERR(CAM_CTXT, "Failed to put ref of fence %d", req->out_map_entries[i].sync_id); } free_cpu_buf: if (cam_mem_put_cpu_buf((int32_t) cmd->packet_handle)) CAM_WARN(CAM_CTXT, "[%s][%d] Can not put packet address", ctx->dev_name, ctx->ctx_id); free_req: spin_lock(&ctx->lock); list_add_tail(&req->list, &ctx->free_req_list); req->ctx = NULL; spin_unlock(&ctx->lock); end: return rc; } Loading drivers/media/platform/msm/camera/cam_cpas/cpas_top/cpastop_v175_120.h +3 −3 Original line number Diff line number Diff line Loading @@ -74,7 +74,7 @@ static struct cam_camnoc_irq_err .err_enable = { .access_type = CAM_REG_TYPE_READ_WRITE, .enable = true, .offset = 0x3Ba0, /* SPECIFIC_IFE02_ENCERREN_LOW */ .offset = 0x3BA0, /* SPECIFIC_IFE02_ENCERREN_LOW */ .value = 1, }, .err_status = { Loading Loading @@ -163,13 +163,13 @@ static struct cam_camnoc_irq_err .err_enable = { .access_type = CAM_REG_TYPE_READ_WRITE, .enable = true, .offset = 0x2088, /* SBM_FLAGOUTSET0_LOW */ .offset = 0x2288, /* SBM_FLAGOUTSET0_LOW */ .value = 0x1, }, .err_status = { .access_type = CAM_REG_TYPE_READ, .enable = true, .offset = 0x2090, /* SBM_FLAGOUTSTATUS0_LOW */ .offset = 0x2290, /* SBM_FLAGOUTSTATUS0_LOW */ }, .err_clear = { .enable = false, Loading Loading
arch/arm64/boot/dts/qcom/sdmmagpie-camera-sensor-idp.dtsi +6 −6 Original line number Diff line number Diff line Loading @@ -313,39 +313,39 @@ cam_sensor_rear_active: cam_sensor_rear_active { pins = "gpio1"; function = "normal"; power-source = <0>; power-source = <1>; bias-disable; }; cam_sensor_rear_suspend: cam_sensor_rear_suspend { pins = "gpio1"; function = "normal"; power-source = <0>; power-source = <1>; bias-pull-down; }; cam_sensor_rear2_active: cam_sensor_rear2_active { pins = "gpio2"; function = "normal"; power-source = <0>; power-source = <1>; bias-disable; }; cam_sensor_rear2_suspend: cam_sensor_rear2_suspend { pins = "gpio2"; function = "normal"; power-source = <0>; power-source = <1>; bias-pull-down; }; cam_sensor_front_active: cam_sensor_front_active { pins = "gpio4"; function = "normal"; power-source = <0>; power-source = <1>; bias-disable; }; cam_sensor_front_suspend: cam_sensor_front_suspend { pins = "gpio4"; function = "normal"; power-source = <0>; power-source = <1>; bias-pull-down; }; };
arch/arm64/boot/dts/qcom/sm6150-camera.dtsi +8 −6 Original line number Diff line number Diff line Loading @@ -638,9 +638,10 @@ cam_vfe0: qcom,vfe0@acaf000 { cell-index = <0>; compatible = "qcom,vfe170"; reg-names = "ife"; reg = <0xacaf000 0x4000>; reg-cam-base = <0xaf000>; reg-names = "ife", "cam_camnoc"; reg = <0xacaf000 0x4000>, <0xac42000 0x5000>; reg-cam-base = <0xaf000 0x42000>; interrupt-names = "ife"; interrupts = <0 465 0>; regulator-names = "camss", "ife0"; Loading Loading @@ -725,9 +726,10 @@ cam_vfe1: qcom,vfe1@acb6000 { cell-index = <1>; compatible = "qcom,vfe170"; reg-names = "ife"; reg = <0xacb6000 0x4000>; reg-cam-base = <0xb6000>; reg-names = "ife", "cam_camnoc"; reg = <0xacb6000 0x4000>, <0xac42000 0x5000>; reg-cam-base = <0xb6000 0x42000>; interrupt-names = "ife"; interrupts = <0 467 0>; regulator-names = "camss", "ife1"; Loading
drivers/media/platform/msm/camera/cam_core/cam_context.c +1 −0 Original line number Diff line number Diff line Loading @@ -527,6 +527,7 @@ int cam_context_init(struct cam_context *ctx, ctx->dev_name = dev_name; ctx->dev_id = dev_id; ctx->ctx_id = ctx_id; ctx->last_flush_req = 0; ctx->ctx_crm_intf = NULL; ctx->crm_ctx_intf = crm_node_intf; ctx->hw_mgr_intf = hw_mgr_intf; Loading
drivers/media/platform/msm/camera/cam_core/cam_context_utils.c +15 −13 Original line number Diff line number Diff line Loading @@ -337,15 +337,13 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, if (!ctx || !cmd) { CAM_ERR(CAM_CTXT, "Invalid input params %pK %pK", ctx, cmd); rc = -EINVAL; goto end; return -EINVAL; } if (!ctx->hw_mgr_intf) { CAM_ERR(CAM_CTXT, "[%s][%d] HW interface is not ready", ctx->dev_name, ctx->ctx_id); rc = -EFAULT; goto end; return -EFAULT; } rc = cam_context_validate_thread(); if (rc) Loading @@ -362,8 +360,7 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, if (!req) { CAM_ERR(CAM_CTXT, "[%s][%d] No more request obj free", ctx->dev_name, ctx->ctx_id); rc = -ENOMEM; goto end; return -ENOMEM; } memset(req, 0, sizeof(*req)); Loading @@ -389,7 +386,7 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, "request %lld has been flushed, reject packet", packet->header.request_id); rc = -EINVAL; goto free_req; goto free_cpu_buf; } if (packet->header.request_id > ctx->last_flush_req) Loading @@ -415,7 +412,7 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, "[%s][%d] Prepare config packet failed in HW layer", ctx->dev_name, ctx->ctx_id); rc = -EFAULT; goto free_req; goto free_cpu_buf; } req->num_hw_update_entries = cfg.num_hw_update_entries; req->num_out_map_entries = cfg.num_out_map_entries; Loading Loading @@ -466,30 +463,35 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, req->request_id); cam_context_putref(ctx); goto put_ref; } CAM_DBG(CAM_CTXT, "register in fence cb: %d ret = %d", req->in_map_entries[j].sync_id, rc); } goto end; } if (cam_mem_put_cpu_buf((int32_t) cmd->packet_handle)) CAM_WARN(CAM_CTXT, "[%s][%d] Can not put packet address", ctx->dev_name, ctx->ctx_id); return rc; put_ref: for (--i; i >= 0; i--) { rc = cam_sync_put_obj_ref(req->out_map_entries[i].sync_id); if (rc) if (cam_sync_put_obj_ref(req->out_map_entries[i].sync_id)) CAM_ERR(CAM_CTXT, "Failed to put ref of fence %d", req->out_map_entries[i].sync_id); } free_cpu_buf: if (cam_mem_put_cpu_buf((int32_t) cmd->packet_handle)) CAM_WARN(CAM_CTXT, "[%s][%d] Can not put packet address", ctx->dev_name, ctx->ctx_id); free_req: spin_lock(&ctx->lock); list_add_tail(&req->list, &ctx->free_req_list); req->ctx = NULL; spin_unlock(&ctx->lock); end: return rc; } Loading
drivers/media/platform/msm/camera/cam_cpas/cpas_top/cpastop_v175_120.h +3 −3 Original line number Diff line number Diff line Loading @@ -74,7 +74,7 @@ static struct cam_camnoc_irq_err .err_enable = { .access_type = CAM_REG_TYPE_READ_WRITE, .enable = true, .offset = 0x3Ba0, /* SPECIFIC_IFE02_ENCERREN_LOW */ .offset = 0x3BA0, /* SPECIFIC_IFE02_ENCERREN_LOW */ .value = 1, }, .err_status = { Loading Loading @@ -163,13 +163,13 @@ static struct cam_camnoc_irq_err .err_enable = { .access_type = CAM_REG_TYPE_READ_WRITE, .enable = true, .offset = 0x2088, /* SBM_FLAGOUTSET0_LOW */ .offset = 0x2288, /* SBM_FLAGOUTSET0_LOW */ .value = 0x1, }, .err_status = { .access_type = CAM_REG_TYPE_READ, .enable = true, .offset = 0x2090, /* SBM_FLAGOUTSTATUS0_LOW */ .offset = 0x2290, /* SBM_FLAGOUTSTATUS0_LOW */ }, .err_clear = { .enable = false, Loading