|
@@ -1467,8 +1467,9 @@ static int __cam_isp_ctx_reg_upd_in_epoch_bubble_state(
|
|
__cam_isp_ctx_substate_val_to_type(
|
|
__cam_isp_ctx_substate_val_to_type(
|
|
ctx_isp->substate_activated));
|
|
ctx_isp->substate_activated));
|
|
else
|
|
else
|
|
- CAM_WARN(CAM_ISP,
|
|
|
|
- "Unexpected reg update in activated Substate[%s] for frame_id:%lld",
|
|
|
|
|
|
+ CAM_WARN_RATE_LIMIT(CAM_ISP,
|
|
|
|
+ "ctx_id:%d Unexpected reg update in activated Substate[%s] for frame_id:%lld",
|
|
|
|
+ ctx_isp->base->ctx_id,
|
|
__cam_isp_ctx_substate_val_to_type(
|
|
__cam_isp_ctx_substate_val_to_type(
|
|
ctx_isp->substate_activated),
|
|
ctx_isp->substate_activated),
|
|
ctx_isp->frame_id);
|
|
ctx_isp->frame_id);
|
|
@@ -1761,7 +1762,7 @@ static int __cam_isp_ctx_epoch_in_applied(struct cam_isp_context *ctx_isp,
|
|
req_isp->bubble_detected = true;
|
|
req_isp->bubble_detected = true;
|
|
req_isp->reapply = true;
|
|
req_isp->reapply = true;
|
|
|
|
|
|
- CAM_INFO(CAM_ISP, "ctx:%d Report Bubble flag %d req id:%lld",
|
|
|
|
|
|
+ CAM_INFO_RATE_LIMIT(CAM_ISP, "ctx:%d Report Bubble flag %d req id:%lld",
|
|
ctx->ctx_id, req_isp->bubble_report, req->request_id);
|
|
ctx->ctx_id, req_isp->bubble_report, req->request_id);
|
|
if (req_isp->bubble_report && ctx->ctx_crm_intf &&
|
|
if (req_isp->bubble_report && ctx->ctx_crm_intf &&
|
|
ctx->ctx_crm_intf->notify_err) {
|
|
ctx->ctx_crm_intf->notify_err) {
|
|
@@ -1776,7 +1777,7 @@ static int __cam_isp_ctx_epoch_in_applied(struct cam_isp_context *ctx_isp,
|
|
notify.trigger = CAM_TRIGGER_POINT_SOF;
|
|
notify.trigger = CAM_TRIGGER_POINT_SOF;
|
|
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;
|
|
- CAM_WARN(CAM_ISP,
|
|
|
|
|
|
+ CAM_WARN_RATE_LIMIT(CAM_ISP,
|
|
"Notify CRM about Bubble req %lld frame %lld, ctx %u",
|
|
"Notify CRM about Bubble req %lld frame %lld, ctx %u",
|
|
req->request_id, ctx_isp->frame_id, ctx->ctx_id);
|
|
req->request_id, ctx_isp->frame_id, ctx->ctx_id);
|
|
trace_cam_log_event("Bubble", "Rcvd epoch in applied state",
|
|
trace_cam_log_event("Bubble", "Rcvd epoch in applied state",
|
|
@@ -1965,7 +1966,7 @@ static int __cam_isp_ctx_epoch_in_bubble_applied(
|
|
list);
|
|
list);
|
|
req_isp = (struct cam_isp_ctx_req *)req->req_priv;
|
|
req_isp = (struct cam_isp_ctx_req *)req->req_priv;
|
|
req_isp->bubble_detected = true;
|
|
req_isp->bubble_detected = true;
|
|
- CAM_INFO(CAM_ISP, "Ctx:%d Report Bubble flag %d req id:%lld",
|
|
|
|
|
|
+ CAM_INFO_RATE_LIMIT(CAM_ISP, "Ctx:%d Report Bubble flag %d req id:%lld",
|
|
ctx->ctx_id, req_isp->bubble_report, req->request_id);
|
|
ctx->ctx_id, req_isp->bubble_report, req->request_id);
|
|
req_isp->reapply = true;
|
|
req_isp->reapply = true;
|
|
|
|
|
|
@@ -1982,7 +1983,7 @@ static int __cam_isp_ctx_epoch_in_bubble_applied(
|
|
notify.trigger = CAM_TRIGGER_POINT_SOF;
|
|
notify.trigger = CAM_TRIGGER_POINT_SOF;
|
|
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;
|
|
- CAM_WARN(CAM_REQ,
|
|
|
|
|
|
+ CAM_WARN_RATE_LIMIT(CAM_REQ,
|
|
"Notify CRM about Bubble req_id %llu frame %lld, ctx %u",
|
|
"Notify CRM about Bubble req_id %llu frame %lld, ctx %u",
|
|
req->request_id, ctx_isp->frame_id, ctx->ctx_id);
|
|
req->request_id, ctx_isp->frame_id, ctx->ctx_id);
|
|
ctx->ctx_crm_intf->notify_err(¬ify);
|
|
ctx->ctx_crm_intf->notify_err(¬ify);
|
|
@@ -2790,7 +2791,9 @@ static int __cam_isp_ctx_apply_req_in_activated_state(
|
|
struct cam_hw_config_args cfg = {0};
|
|
struct cam_hw_config_args cfg = {0};
|
|
|
|
|
|
if (list_empty(&ctx->pending_req_list)) {
|
|
if (list_empty(&ctx->pending_req_list)) {
|
|
- CAM_ERR(CAM_ISP, "No available request for Apply id %lld",
|
|
|
|
|
|
+ CAM_ERR_RATE_LIMIT(CAM_ISP,
|
|
|
|
+ "ctx_id:%d No available request for Apply id %lld",
|
|
|
|
+ ctx->ctx_id,
|
|
apply->request_id);
|
|
apply->request_id);
|
|
rc = -EFAULT;
|
|
rc = -EFAULT;
|
|
goto end;
|
|
goto end;
|
|
@@ -2805,8 +2808,9 @@ static int __cam_isp_ctx_apply_req_in_activated_state(
|
|
ctx_isp = (struct cam_isp_context *) ctx->ctx_priv;
|
|
ctx_isp = (struct cam_isp_context *) ctx->ctx_priv;
|
|
|
|
|
|
if (atomic_read(&ctx_isp->process_bubble)) {
|
|
if (atomic_read(&ctx_isp->process_bubble)) {
|
|
- CAM_INFO(CAM_ISP,
|
|
|
|
- "Processing bubble cannot apply Request Id %llu",
|
|
|
|
|
|
+ CAM_INFO_RATE_LIMIT(CAM_ISP,
|
|
|
|
+ "ctx_id:%d Processing bubble cannot apply Request Id %llu",
|
|
|
|
+ ctx->ctx_id,
|
|
apply->request_id);
|
|
apply->request_id);
|
|
rc = -EAGAIN;
|
|
rc = -EAGAIN;
|
|
goto end;
|
|
goto end;
|
|
@@ -2814,8 +2818,9 @@ static int __cam_isp_ctx_apply_req_in_activated_state(
|
|
|
|
|
|
if (apply->re_apply)
|
|
if (apply->re_apply)
|
|
if (apply->request_id <= ctx_isp->last_applied_req_id) {
|
|
if (apply->request_id <= ctx_isp->last_applied_req_id) {
|
|
- CAM_INFO(CAM_ISP,
|
|
|
|
- "Trying to reapply the same request %llu again",
|
|
|
|
|
|
+ CAM_INFO_RATE_LIMIT(CAM_ISP,
|
|
|
|
+ "ctx_id:%d Trying to reapply the same request %llu again",
|
|
|
|
+ ctx->ctx_id,
|
|
apply->request_id);
|
|
apply->request_id);
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
@@ -2831,7 +2836,8 @@ static int __cam_isp_ctx_apply_req_in_activated_state(
|
|
*/
|
|
*/
|
|
if (req->request_id != apply->request_id) {
|
|
if (req->request_id != apply->request_id) {
|
|
CAM_ERR_RATE_LIMIT(CAM_ISP,
|
|
CAM_ERR_RATE_LIMIT(CAM_ISP,
|
|
- "Invalid Request Id asking %llu existing %llu",
|
|
|
|
|
|
+ "ctx_id:%d Invalid Request Id asking %llu existing %llu",
|
|
|
|
+ ctx->ctx_id,
|
|
apply->request_id, req->request_id);
|
|
apply->request_id, req->request_id);
|
|
rc = -EFAULT;
|
|
rc = -EFAULT;
|
|
goto end;
|
|
goto end;
|
|
@@ -2844,7 +2850,7 @@ static int __cam_isp_ctx_apply_req_in_activated_state(
|
|
req_isp = (struct cam_isp_ctx_req *) req->req_priv;
|
|
req_isp = (struct cam_isp_ctx_req *) req->req_priv;
|
|
|
|
|
|
if (ctx_isp->active_req_cnt >= 2) {
|
|
if (ctx_isp->active_req_cnt >= 2) {
|
|
- CAM_WARN(CAM_ISP,
|
|
|
|
|
|
+ CAM_WARN_RATE_LIMIT(CAM_ISP,
|
|
"Reject apply request (id %lld) due to congestion(cnt = %d) ctx %u",
|
|
"Reject apply request (id %lld) due to congestion(cnt = %d) ctx %u",
|
|
req->request_id,
|
|
req->request_id,
|
|
ctx_isp->active_req_cnt,
|
|
ctx_isp->active_req_cnt,
|
|
@@ -2884,7 +2890,9 @@ static int __cam_isp_ctx_apply_req_in_activated_state(
|
|
rc = ctx->hw_mgr_intf->hw_config(ctx->hw_mgr_intf->hw_mgr_priv,
|
|
rc = ctx->hw_mgr_intf->hw_config(ctx->hw_mgr_intf->hw_mgr_priv,
|
|
&cfg);
|
|
&cfg);
|
|
if (rc) {
|
|
if (rc) {
|
|
- CAM_ERR_RATE_LIMIT(CAM_ISP, "Can not apply the configuration");
|
|
|
|
|
|
+ CAM_ERR_RATE_LIMIT(CAM_ISP,
|
|
|
|
+ "ctx_id:%d ,Can not apply the configuration",
|
|
|
|
+ ctx->ctx_id);
|
|
} else {
|
|
} else {
|
|
spin_lock_bh(&ctx->lock);
|
|
spin_lock_bh(&ctx->lock);
|
|
ctx_isp->substate_activated = next_state;
|
|
ctx_isp->substate_activated = next_state;
|
|
@@ -3599,7 +3607,7 @@ static int __cam_isp_ctx_rdi_only_sof_in_bubble_applied(
|
|
list);
|
|
list);
|
|
req_isp = (struct cam_isp_ctx_req *)req->req_priv;
|
|
req_isp = (struct cam_isp_ctx_req *)req->req_priv;
|
|
req_isp->bubble_detected = true;
|
|
req_isp->bubble_detected = true;
|
|
- CAM_INFO(CAM_ISP, "Ctx:%d Report Bubble flag %d req id:%lld",
|
|
|
|
|
|
+ CAM_INFO_RATE_LIMIT(CAM_ISP, "Ctx:%d Report Bubble flag %d req id:%lld",
|
|
ctx->ctx_id, req_isp->bubble_report, req->request_id);
|
|
ctx->ctx_id, req_isp->bubble_report, req->request_id);
|
|
req_isp->reapply = true;
|
|
req_isp->reapply = true;
|
|
|
|
|
|
@@ -3616,7 +3624,7 @@ static int __cam_isp_ctx_rdi_only_sof_in_bubble_applied(
|
|
notify.trigger = CAM_TRIGGER_POINT_SOF;
|
|
notify.trigger = CAM_TRIGGER_POINT_SOF;
|
|
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;
|
|
- CAM_WARN(CAM_ISP,
|
|
|
|
|
|
+ CAM_WARN_RATE_LIMIT(CAM_ISP,
|
|
"Notify CRM about Bubble req %lld frame %lld ctx %u",
|
|
"Notify CRM about Bubble req %lld frame %lld ctx %u",
|
|
req->request_id,
|
|
req->request_id,
|
|
ctx_isp->frame_id,
|
|
ctx_isp->frame_id,
|
|
@@ -3914,7 +3922,9 @@ static int __cam_isp_ctx_rdi_only_apply_req_top_state(
|
|
ctx_isp->substate_activated));
|
|
ctx_isp->substate_activated));
|
|
|
|
|
|
if (rc)
|
|
if (rc)
|
|
- CAM_ERR(CAM_ISP, "Apply failed in Substate[%s], rc %d",
|
|
|
|
|
|
+ CAM_ERR_RATE_LIMIT(CAM_ISP,
|
|
|
|
+ "ctx_id:%d Apply failed in Substate[%s], rc %d",
|
|
|
|
+ ctx->ctx_id,
|
|
__cam_isp_ctx_substate_val_to_type(
|
|
__cam_isp_ctx_substate_val_to_type(
|
|
ctx_isp->substate_activated), rc);
|
|
ctx_isp->substate_activated), rc);
|
|
|
|
|