Loading drivers/media/platform/msm/camera_v3/cam_core/cam_context.c +1 −1 Original line number Diff line number Diff line Loading @@ -248,7 +248,7 @@ int cam_context_dump_pf_info(struct cam_context *ctx, unsigned long iova, rc = ctx->state_machine[ctx->state].pagefault_ops(ctx, iova, buf_info); } else { CAM_WARN(CAM_CORE, "No dump ctx in dev %d, state %d", CAM_INFO(CAM_CORE, "No dump ctx in dev %d, state %d", ctx->dev_hdl, ctx->state); } mutex_unlock(&ctx->ctx_mutex); Loading drivers/media/platform/msm/camera_v3/cam_core/cam_context_utils.c +5 −4 Original line number Diff line number Diff line Loading @@ -482,9 +482,7 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, ctx->dev_name, ctx->ctx_id, req->request_id); cam_context_putref(ctx); goto put_ref; goto put_ctx_ref; } CAM_DBG(CAM_CTXT, "register in fence cb: %d ret = %d", req->in_map_entries[j].sync_id, rc); Loading @@ -493,7 +491,9 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, } return rc; put_ctx_ref: for (--j; j >= 0; j--) cam_context_putref(ctx); put_ref: for (--i; i >= 0; i--) { rc = cam_sync_put_obj_ref(req->out_map_entries[i].sync_id); Loading Loading @@ -1018,6 +1018,7 @@ int32_t cam_context_dump_pf_info_to_hw(struct cam_context *ctx, cmd_args.ctxt_to_hw_map = ctx->ctxt_to_hw_map; cmd_args.cmd_type = CAM_HW_MGR_CMD_DUMP_PF_INFO; cmd_args.u.pf_args.pf_data.packet = packet; cmd_args.u.pf_args.pf_data.ctx_id = ctx->ctx_id; cmd_args.u.pf_args.iova = iova; cmd_args.u.pf_args.buf_info = buf_info; cmd_args.u.pf_args.mem_found = mem_found; Loading drivers/media/platform/msm/camera_v3/cam_core/cam_hw_mgr_intf.h +2 −0 Original line number Diff line number Diff line Loading @@ -144,9 +144,11 @@ struct cam_hw_stop_args { * struct cam_hw_mgr_dump_pf_data - page fault debug data * * packet: pointer to packet * ctx_id: context id */ struct cam_hw_mgr_dump_pf_data { void *packet; uint32_t ctx_id; }; /** Loading drivers/media/platform/msm/camera_v3/cam_fd/fd_hw_mgr/cam_fd_hw_mgr.c +1 −1 Original line number Diff line number Diff line Loading @@ -1598,7 +1598,7 @@ static int cam_fd_mgr_hw_prepare_update(void *hw_mgr_priv, /* We do not expect any patching, but just do it anyway */ rc = cam_packet_util_process_patches(prepare->packet, hw_mgr->device_iommu.non_secure, -1); hw_mgr->device_iommu.non_secure, -1, 0); if (rc) { CAM_ERR(CAM_FD, "Patch FD packet failed, rc=%d", rc); return rc; Loading drivers/media/platform/msm/camera_v3/cam_icp/hfi.c +9 −4 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ #define HFI_MAX_POLL_TRY 5 #define HFI_MAX_PC_POLL_TRY 150 #define HFI_POLL_TRY_SLEEP 2 #define HFI_POLL_TRY_SLEEP 1 static struct hfi_info *g_hfi; unsigned int g_icp_mmu_hdl; Loading Loading @@ -73,24 +73,28 @@ void cam_hfi_queue_dump(void) qtbl_hdr->qtbl_num_q, qtbl_hdr->qtbl_qhdr_size); cmd_q_hdr = &qtbl->q_hdr[Q_CMD]; CAM_DBG(CAM_HFI, "cmd: size = %u r_idx = %u w_idx = %u addr = %x", CAM_INFO(CAM_HFI, "cmd: size = %u r_idx = %u w_idx = %u addr = %x", cmd_q_hdr->qhdr_q_size, cmd_q_hdr->qhdr_read_idx, cmd_q_hdr->qhdr_write_idx, hfi_mem->cmd_q.iova); read_q = (uint32_t *)g_hfi->map.cmd_q.kva; read_ptr = (uint32_t *)(read_q + 0); CAM_INFO(CAM_HFI, "CMD Q %p", read_q); CAM_DBG(CAM_HFI, "CMD Q START"); for (i = 0; i < ICP_CMD_Q_SIZE_IN_BYTES >> BYTE_WORD_SHIFT; i++) CAM_DBG(CAM_HFI, "Word: %d Data: 0x%08x ", i, read_ptr[i]); CAM_DBG(CAM_HFI, "CMD Q END"); msg_q_hdr = &qtbl->q_hdr[Q_MSG]; CAM_DBG(CAM_HFI, "msg: size = %u r_idx = %u w_idx = %u addr = %x", CAM_INFO(CAM_HFI, "msg: size = %u r_idx = %u w_idx = %u addr = %x", msg_q_hdr->qhdr_q_size, msg_q_hdr->qhdr_read_idx, msg_q_hdr->qhdr_write_idx, hfi_mem->msg_q.iova); read_q = (uint32_t *)g_hfi->map.msg_q.kva; read_ptr = (uint32_t *)(read_q + 0); CAM_INFO(CAM_HFI, "MSG Q %p", read_ptr); CAM_DBG(CAM_HFI, "MSG Q START"); for (i = 0; i < ICP_MSG_Q_SIZE_IN_BYTES >> BYTE_WORD_SHIFT; i++) CAM_DBG(CAM_HFI, "Word: %d Data: 0x%08x ", i, read_ptr[i]); CAM_DBG(CAM_HFI, "MSG Q END"); } int hfi_write_cmd(void *cmd_ptr) Loading Loading @@ -526,7 +530,8 @@ void cam_hfi_disable_cpu(void __iomem *icp_base) * and Host can the proceed. No interrupt is expected from FW * at this time. */ msleep_interruptible(HFI_POLL_TRY_SLEEP); usleep_range(HFI_POLL_TRY_SLEEP * 1000, (HFI_POLL_TRY_SLEEP * 1000) + 1000); try++; } Loading Loading
drivers/media/platform/msm/camera_v3/cam_core/cam_context.c +1 −1 Original line number Diff line number Diff line Loading @@ -248,7 +248,7 @@ int cam_context_dump_pf_info(struct cam_context *ctx, unsigned long iova, rc = ctx->state_machine[ctx->state].pagefault_ops(ctx, iova, buf_info); } else { CAM_WARN(CAM_CORE, "No dump ctx in dev %d, state %d", CAM_INFO(CAM_CORE, "No dump ctx in dev %d, state %d", ctx->dev_hdl, ctx->state); } mutex_unlock(&ctx->ctx_mutex); Loading
drivers/media/platform/msm/camera_v3/cam_core/cam_context_utils.c +5 −4 Original line number Diff line number Diff line Loading @@ -482,9 +482,7 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, ctx->dev_name, ctx->ctx_id, req->request_id); cam_context_putref(ctx); goto put_ref; goto put_ctx_ref; } CAM_DBG(CAM_CTXT, "register in fence cb: %d ret = %d", req->in_map_entries[j].sync_id, rc); Loading @@ -493,7 +491,9 @@ int32_t cam_context_prepare_dev_to_hw(struct cam_context *ctx, } return rc; put_ctx_ref: for (--j; j >= 0; j--) cam_context_putref(ctx); put_ref: for (--i; i >= 0; i--) { rc = cam_sync_put_obj_ref(req->out_map_entries[i].sync_id); Loading Loading @@ -1018,6 +1018,7 @@ int32_t cam_context_dump_pf_info_to_hw(struct cam_context *ctx, cmd_args.ctxt_to_hw_map = ctx->ctxt_to_hw_map; cmd_args.cmd_type = CAM_HW_MGR_CMD_DUMP_PF_INFO; cmd_args.u.pf_args.pf_data.packet = packet; cmd_args.u.pf_args.pf_data.ctx_id = ctx->ctx_id; cmd_args.u.pf_args.iova = iova; cmd_args.u.pf_args.buf_info = buf_info; cmd_args.u.pf_args.mem_found = mem_found; Loading
drivers/media/platform/msm/camera_v3/cam_core/cam_hw_mgr_intf.h +2 −0 Original line number Diff line number Diff line Loading @@ -144,9 +144,11 @@ struct cam_hw_stop_args { * struct cam_hw_mgr_dump_pf_data - page fault debug data * * packet: pointer to packet * ctx_id: context id */ struct cam_hw_mgr_dump_pf_data { void *packet; uint32_t ctx_id; }; /** Loading
drivers/media/platform/msm/camera_v3/cam_fd/fd_hw_mgr/cam_fd_hw_mgr.c +1 −1 Original line number Diff line number Diff line Loading @@ -1598,7 +1598,7 @@ static int cam_fd_mgr_hw_prepare_update(void *hw_mgr_priv, /* We do not expect any patching, but just do it anyway */ rc = cam_packet_util_process_patches(prepare->packet, hw_mgr->device_iommu.non_secure, -1); hw_mgr->device_iommu.non_secure, -1, 0); if (rc) { CAM_ERR(CAM_FD, "Patch FD packet failed, rc=%d", rc); return rc; Loading
drivers/media/platform/msm/camera_v3/cam_icp/hfi.c +9 −4 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ #define HFI_MAX_POLL_TRY 5 #define HFI_MAX_PC_POLL_TRY 150 #define HFI_POLL_TRY_SLEEP 2 #define HFI_POLL_TRY_SLEEP 1 static struct hfi_info *g_hfi; unsigned int g_icp_mmu_hdl; Loading Loading @@ -73,24 +73,28 @@ void cam_hfi_queue_dump(void) qtbl_hdr->qtbl_num_q, qtbl_hdr->qtbl_qhdr_size); cmd_q_hdr = &qtbl->q_hdr[Q_CMD]; CAM_DBG(CAM_HFI, "cmd: size = %u r_idx = %u w_idx = %u addr = %x", CAM_INFO(CAM_HFI, "cmd: size = %u r_idx = %u w_idx = %u addr = %x", cmd_q_hdr->qhdr_q_size, cmd_q_hdr->qhdr_read_idx, cmd_q_hdr->qhdr_write_idx, hfi_mem->cmd_q.iova); read_q = (uint32_t *)g_hfi->map.cmd_q.kva; read_ptr = (uint32_t *)(read_q + 0); CAM_INFO(CAM_HFI, "CMD Q %p", read_q); CAM_DBG(CAM_HFI, "CMD Q START"); for (i = 0; i < ICP_CMD_Q_SIZE_IN_BYTES >> BYTE_WORD_SHIFT; i++) CAM_DBG(CAM_HFI, "Word: %d Data: 0x%08x ", i, read_ptr[i]); CAM_DBG(CAM_HFI, "CMD Q END"); msg_q_hdr = &qtbl->q_hdr[Q_MSG]; CAM_DBG(CAM_HFI, "msg: size = %u r_idx = %u w_idx = %u addr = %x", CAM_INFO(CAM_HFI, "msg: size = %u r_idx = %u w_idx = %u addr = %x", msg_q_hdr->qhdr_q_size, msg_q_hdr->qhdr_read_idx, msg_q_hdr->qhdr_write_idx, hfi_mem->msg_q.iova); read_q = (uint32_t *)g_hfi->map.msg_q.kva; read_ptr = (uint32_t *)(read_q + 0); CAM_INFO(CAM_HFI, "MSG Q %p", read_ptr); CAM_DBG(CAM_HFI, "MSG Q START"); for (i = 0; i < ICP_MSG_Q_SIZE_IN_BYTES >> BYTE_WORD_SHIFT; i++) CAM_DBG(CAM_HFI, "Word: %d Data: 0x%08x ", i, read_ptr[i]); CAM_DBG(CAM_HFI, "MSG Q END"); } int hfi_write_cmd(void *cmd_ptr) Loading Loading @@ -526,7 +530,8 @@ void cam_hfi_disable_cpu(void __iomem *icp_base) * and Host can the proceed. No interrupt is expected from FW * at this time. */ msleep_interruptible(HFI_POLL_TRY_SLEEP); usleep_range(HFI_POLL_TRY_SLEEP * 1000, (HFI_POLL_TRY_SLEEP * 1000) + 1000); try++; } Loading