Loading drivers/media/platform/msm/camera/cam_cdm/cam_cdm_virtual_core.c +2 −2 Original line number Diff line number Diff line /* Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. /* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -120,7 +120,7 @@ int cam_virtual_cdm_submit_bl(struct cam_hw_info *cdm_hw, (len >= cdm_cmd->cmd[i].offset)) { if ((len - cdm_cmd->cmd[i].offset) <= if ((len - cdm_cmd->cmd[i].offset) < cdm_cmd->cmd[i].len) { CAM_ERR(CAM_CDM, "Not enough buffer"); rc = -EINVAL; Loading drivers/media/platform/msm/camera/cam_icp/icp_hw/icp_hw_mgr/cam_icp_hw_mgr.c +9 −2 Original line number Diff line number Diff line Loading @@ -2472,7 +2472,7 @@ static int cam_icp_mgr_abort_handle( int rc = 0; unsigned long rem_jiffies; size_t packet_size; int timeout = 100; int timeout = 1000; struct hfi_cmd_ipebps_async *abort_cmd; packet_size = Loading Loading @@ -2523,7 +2523,7 @@ static int cam_icp_mgr_destroy_handle( struct cam_icp_hw_ctx_data *ctx_data) { int rc = 0; int timeout = 100; int timeout = 1000; unsigned long rem_jiffies; size_t packet_size; struct hfi_cmd_ipebps_async *destroy_cmd; Loading Loading @@ -3400,6 +3400,13 @@ static int cam_icp_mgr_process_cmd_desc(struct cam_icp_hw_mgr *hw_mgr, num_cmd_buf-- : 0; goto rel_cmd_buf; } if ((len <= cmd_desc[i].offset) || (cmd_desc[i].size < cmd_desc[i].length) || ((len - cmd_desc[i].offset) < cmd_desc[i].length)) { CAM_ERR(CAM_ICP, "Invalid offset or length"); goto rel_cmd_buf; } cpu_addr = cpu_addr + cmd_desc[i].offset; } } Loading drivers/media/platform/msm/camera/cam_isp/cam_isp_context.c +5 −0 Original line number Diff line number Diff line Loading @@ -1863,7 +1863,9 @@ static int __cam_isp_ctx_flush_req_in_top_state( struct cam_req_mgr_flush_request *flush_req) { int rc = 0; struct cam_isp_context *ctx_isp; ctx_isp = (struct cam_isp_context *) ctx->ctx_priv; if (flush_req->type == CAM_REQ_MGR_FLUSH_TYPE_ALL) { CAM_INFO(CAM_ISP, "Last request id to flush is %lld", flush_req->req_id); Loading @@ -1875,6 +1877,7 @@ static int __cam_isp_ctx_flush_req_in_top_state( rc = __cam_isp_ctx_flush_req(ctx, &ctx->pending_req_list, flush_req); spin_unlock_bh(&ctx->lock); atomic_set(&ctx_isp->process_bubble, 0); return rc; } Loading Loading @@ -3161,6 +3164,7 @@ static int __cam_isp_ctx_start_dev_in_ready(struct cam_context *ctx, start_isp.hw_config.init_packet = 1; start_isp.start_only = false; atomic_set(&ctx_isp->process_bubble, 0); ctx_isp->frame_id = 0; ctx_isp->active_req_cnt = 0; ctx_isp->reported_req_id = 0; Loading Loading @@ -3296,6 +3300,7 @@ static int __cam_isp_ctx_stop_dev_in_activated_unlock( ctx_isp->frame_id = 0; ctx_isp->active_req_cnt = 0; ctx_isp->reported_req_id = 0; atomic_set(&ctx_isp->process_bubble, 0); CAM_DBG(CAM_ISP, "Stop device success next state %d on ctx %u", ctx->state, ctx->ctx_id); Loading drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe17x/cam_vfe170.h +7 −1 Original line number Diff line number Diff line /* Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. /* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -828,6 +828,12 @@ static struct cam_vfe_bus_ver2_hw_info vfe170_bus_hw_info = { .max_height = -1, }, }, .reg_data = { .ubwc_10bit_threshold_lossy_0 = 0, .ubwc_10bit_threshold_lossy_1 = 0, .ubwc_8bit_threshold_lossy_0 = 0, .ubwc_8bit_threshold_lossy_1 = 0, }, }; struct cam_vfe_hw_info cam_vfe170_hw_info = { Loading drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe17x/cam_vfe175.h +51 −36 Original line number Diff line number Diff line Loading @@ -234,6 +234,9 @@ static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client .mode_cfg_0 = 0x00002544, .mode_cfg_1 = 0x000025A4, .bw_limit = 0x000025A0, .threshlod_lossy_0 = 0x000025A8, .threshlod_lossy_1 = 0x000025AC, }; static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client Loading @@ -247,6 +250,8 @@ static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client .mode_cfg_0 = 0x00002644, .mode_cfg_1 = 0x000026A4, .bw_limit = 0x000026A0, .threshlod_lossy_0 = 0x000026A8, .threshlod_lossy_1 = 0x000026AC, }; static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client Loading @@ -260,6 +265,8 @@ static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client .mode_cfg_0 = 0x00003644, .mode_cfg_1 = 0x000036A4, .bw_limit = 0x000036A0, .threshlod_lossy_0 = 0x000036A8, .threshlod_lossy_1 = 0x000036AC, }; static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client Loading @@ -273,6 +280,8 @@ static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client .mode_cfg_0 = 0x00003744, .mode_cfg_1 = 0x000037A4, .bw_limit = 0x000037A0, .threshlod_lossy_0 = 0x000037A8, .threshlod_lossy_1 = 0x000037AC, }; static struct cam_vfe_bus_ver2_hw_info vfe175_bus_hw_info = { Loading Loading @@ -986,6 +995,12 @@ static struct cam_vfe_bus_ver2_hw_info vfe175_bus_hw_info = { .max_height = 1080, }, }, .reg_data = { .ubwc_10bit_threshold_lossy_0 = 0x8330002, .ubwc_10bit_threshold_lossy_1 = 0x20204, .ubwc_8bit_threshold_lossy_0 = 0x6210022, .ubwc_8bit_threshold_lossy_1 = 0xE0E, }, }; struct cam_vfe_hw_info cam_vfe175_hw_info = { Loading Loading
drivers/media/platform/msm/camera/cam_cdm/cam_cdm_virtual_core.c +2 −2 Original line number Diff line number Diff line /* Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. /* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -120,7 +120,7 @@ int cam_virtual_cdm_submit_bl(struct cam_hw_info *cdm_hw, (len >= cdm_cmd->cmd[i].offset)) { if ((len - cdm_cmd->cmd[i].offset) <= if ((len - cdm_cmd->cmd[i].offset) < cdm_cmd->cmd[i].len) { CAM_ERR(CAM_CDM, "Not enough buffer"); rc = -EINVAL; Loading
drivers/media/platform/msm/camera/cam_icp/icp_hw/icp_hw_mgr/cam_icp_hw_mgr.c +9 −2 Original line number Diff line number Diff line Loading @@ -2472,7 +2472,7 @@ static int cam_icp_mgr_abort_handle( int rc = 0; unsigned long rem_jiffies; size_t packet_size; int timeout = 100; int timeout = 1000; struct hfi_cmd_ipebps_async *abort_cmd; packet_size = Loading Loading @@ -2523,7 +2523,7 @@ static int cam_icp_mgr_destroy_handle( struct cam_icp_hw_ctx_data *ctx_data) { int rc = 0; int timeout = 100; int timeout = 1000; unsigned long rem_jiffies; size_t packet_size; struct hfi_cmd_ipebps_async *destroy_cmd; Loading Loading @@ -3400,6 +3400,13 @@ static int cam_icp_mgr_process_cmd_desc(struct cam_icp_hw_mgr *hw_mgr, num_cmd_buf-- : 0; goto rel_cmd_buf; } if ((len <= cmd_desc[i].offset) || (cmd_desc[i].size < cmd_desc[i].length) || ((len - cmd_desc[i].offset) < cmd_desc[i].length)) { CAM_ERR(CAM_ICP, "Invalid offset or length"); goto rel_cmd_buf; } cpu_addr = cpu_addr + cmd_desc[i].offset; } } Loading
drivers/media/platform/msm/camera/cam_isp/cam_isp_context.c +5 −0 Original line number Diff line number Diff line Loading @@ -1863,7 +1863,9 @@ static int __cam_isp_ctx_flush_req_in_top_state( struct cam_req_mgr_flush_request *flush_req) { int rc = 0; struct cam_isp_context *ctx_isp; ctx_isp = (struct cam_isp_context *) ctx->ctx_priv; if (flush_req->type == CAM_REQ_MGR_FLUSH_TYPE_ALL) { CAM_INFO(CAM_ISP, "Last request id to flush is %lld", flush_req->req_id); Loading @@ -1875,6 +1877,7 @@ static int __cam_isp_ctx_flush_req_in_top_state( rc = __cam_isp_ctx_flush_req(ctx, &ctx->pending_req_list, flush_req); spin_unlock_bh(&ctx->lock); atomic_set(&ctx_isp->process_bubble, 0); return rc; } Loading Loading @@ -3161,6 +3164,7 @@ static int __cam_isp_ctx_start_dev_in_ready(struct cam_context *ctx, start_isp.hw_config.init_packet = 1; start_isp.start_only = false; atomic_set(&ctx_isp->process_bubble, 0); ctx_isp->frame_id = 0; ctx_isp->active_req_cnt = 0; ctx_isp->reported_req_id = 0; Loading Loading @@ -3296,6 +3300,7 @@ static int __cam_isp_ctx_stop_dev_in_activated_unlock( ctx_isp->frame_id = 0; ctx_isp->active_req_cnt = 0; ctx_isp->reported_req_id = 0; atomic_set(&ctx_isp->process_bubble, 0); CAM_DBG(CAM_ISP, "Stop device success next state %d on ctx %u", ctx->state, ctx->ctx_id); Loading
drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe17x/cam_vfe170.h +7 −1 Original line number Diff line number Diff line /* Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. /* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -828,6 +828,12 @@ static struct cam_vfe_bus_ver2_hw_info vfe170_bus_hw_info = { .max_height = -1, }, }, .reg_data = { .ubwc_10bit_threshold_lossy_0 = 0, .ubwc_10bit_threshold_lossy_1 = 0, .ubwc_8bit_threshold_lossy_0 = 0, .ubwc_8bit_threshold_lossy_1 = 0, }, }; struct cam_vfe_hw_info cam_vfe170_hw_info = { Loading
drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe17x/cam_vfe175.h +51 −36 Original line number Diff line number Diff line Loading @@ -234,6 +234,9 @@ static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client .mode_cfg_0 = 0x00002544, .mode_cfg_1 = 0x000025A4, .bw_limit = 0x000025A0, .threshlod_lossy_0 = 0x000025A8, .threshlod_lossy_1 = 0x000025AC, }; static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client Loading @@ -247,6 +250,8 @@ static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client .mode_cfg_0 = 0x00002644, .mode_cfg_1 = 0x000026A4, .bw_limit = 0x000026A0, .threshlod_lossy_0 = 0x000026A8, .threshlod_lossy_1 = 0x000026AC, }; static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client Loading @@ -260,6 +265,8 @@ static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client .mode_cfg_0 = 0x00003644, .mode_cfg_1 = 0x000036A4, .bw_limit = 0x000036A0, .threshlod_lossy_0 = 0x000036A8, .threshlod_lossy_1 = 0x000036AC, }; static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client Loading @@ -273,6 +280,8 @@ static struct cam_vfe_bus_ver2_reg_offset_ubwc_3_client .mode_cfg_0 = 0x00003744, .mode_cfg_1 = 0x000037A4, .bw_limit = 0x000037A0, .threshlod_lossy_0 = 0x000037A8, .threshlod_lossy_1 = 0x000037AC, }; static struct cam_vfe_bus_ver2_hw_info vfe175_bus_hw_info = { Loading Loading @@ -986,6 +995,12 @@ static struct cam_vfe_bus_ver2_hw_info vfe175_bus_hw_info = { .max_height = 1080, }, }, .reg_data = { .ubwc_10bit_threshold_lossy_0 = 0x8330002, .ubwc_10bit_threshold_lossy_1 = 0x20204, .ubwc_8bit_threshold_lossy_0 = 0x6210022, .ubwc_8bit_threshold_lossy_1 = 0xE0E, }, }; struct cam_vfe_hw_info cam_vfe175_hw_info = { Loading