Merge "msm: camera: isp: Change notification type" into camera-kernel.lnx.7.0

This commit is contained in:
Camera Software Integration
2024-01-22 02:32:02 -08:00
committed by Gerrit - the friendly Code Review server
2 changed files with 9 additions and 7 deletions

View File

@@ -901,7 +901,7 @@ static int __cam_isp_ctx_notify_error_util(
notify.frame_id = ctx_isp->frame_id; notify.frame_id = ctx_isp->frame_id;
notify.sof_timestamp_val = ctx_isp->sof_timestamp_val; notify.sof_timestamp_val = ctx_isp->sof_timestamp_val;
if (error == CRM_KMD_ERR_BUBBLE) if ((error == CRM_KMD_ERR_BUBBLE) || (error == CRM_KMD_WARN_INTERNAL_RECOVERY))
CAM_WARN(CAM_ISP, CAM_WARN(CAM_ISP,
"Notify CRM about bubble req: %llu frame: %llu in ctx: %u on link: 0x%x", "Notify CRM about bubble req: %llu frame: %llu in ctx: %u on link: 0x%x",
req_id, ctx_isp->frame_id, ctx->ctx_id, ctx->link_hdl); req_id, ctx_isp->frame_id, ctx->ctx_id, ctx->link_hdl);
@@ -1729,7 +1729,7 @@ static int __cam_isp_context_try_internal_recovery(
if (req->request_id == ctx_isp->recovery_req_id) { if (req->request_id == ctx_isp->recovery_req_id) {
rc = __cam_isp_ctx_notify_error_util(CAM_TRIGGER_POINT_SOF, rc = __cam_isp_ctx_notify_error_util(CAM_TRIGGER_POINT_SOF,
CRM_KMD_ERR_BUBBLE, ctx_isp->recovery_req_id, ctx_isp); CRM_KMD_WARN_INTERNAL_RECOVERY, ctx_isp->recovery_req_id, ctx_isp);
if (rc) { if (rc) {
/* Unable to do bubble recovery reset back to normal */ /* Unable to do bubble recovery reset back to normal */
CAM_WARN(CAM_ISP, CAM_WARN(CAM_ISP,
@@ -1762,7 +1762,7 @@ static int __cam_isp_context_try_internal_recovery(
if (req->request_id == ctx_isp->recovery_req_id) { if (req->request_id == ctx_isp->recovery_req_id) {
rc = __cam_isp_ctx_notify_error_util(CAM_TRIGGER_POINT_SOF, rc = __cam_isp_ctx_notify_error_util(CAM_TRIGGER_POINT_SOF,
CRM_KMD_ERR_BUBBLE, ctx_isp->recovery_req_id, ctx_isp); CRM_KMD_WARN_INTERNAL_RECOVERY, ctx_isp->recovery_req_id, ctx_isp);
if (rc) { if (rc) {
/* Unable to do bubble recovery reset back to normal */ /* Unable to do bubble recovery reset back to normal */
CAM_WARN(CAM_ISP, CAM_WARN(CAM_ISP,
@@ -4551,8 +4551,8 @@ static int __cam_isp_ctx_trigger_internal_recovery(
ctx_isp->active_req_cnt, ctx_isp->recovery_req_id, ctx_isp->active_req_cnt, ctx_isp->recovery_req_id,
ctx->ctx_id, ctx->link_hdl); ctx->ctx_id, ctx->link_hdl);
} else { } else {
rc = __cam_isp_ctx_notify_error_util(CAM_TRIGGER_POINT_SOF, CRM_KMD_ERR_BUBBLE, rc = __cam_isp_ctx_notify_error_util(CAM_TRIGGER_POINT_SOF,
ctx_isp->recovery_req_id, ctx_isp); CRM_KMD_WARN_INTERNAL_RECOVERY, ctx_isp->recovery_req_id, ctx_isp);
if (rc) { if (rc) {
/* Unable to do bubble recovery reset back to normal */ /* Unable to do bubble recovery reset back to normal */
CAM_WARN(CAM_ISP, CAM_WARN(CAM_ISP,

View File

@@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
/* /*
* Copyright (c) 2016-2021, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2021, The Linux Foundation. All rights reserved.
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2022-2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/ */
#include <linux/module.h> #include <linux/module.h>
@@ -3700,7 +3700,9 @@ int cam_req_mgr_process_error(void *priv, void *data)
/* Bring processing pointer to bubbled req id */ /* Bring processing pointer to bubbled req id */
__cam_req_mgr_tbl_set_all_skip_cnt(&link->req.l_tbl); __cam_req_mgr_tbl_set_all_skip_cnt(&link->req.l_tbl);
in_q->rd_idx = idx; in_q->rd_idx = idx;
in_q->slot[idx].bubble_times++; /* Increment bubble counter only for bubble errors */
if (err_info->error == CRM_KMD_ERR_BUBBLE)
in_q->slot[idx].bubble_times++;
in_q->slot[idx].status = CRM_SLOT_STATUS_REQ_ADDED; in_q->slot[idx].status = CRM_SLOT_STATUS_REQ_ADDED;
/* Reset request apply map for all pd tables */ /* Reset request apply map for all pd tables */