Messages in this thread | | | Subject | Re: [PATCH 5/5] media: mtk-vcodec: venc: Fail if a msg sent to VPU was not signaled | From | Dafna Hirschfeld <> | Date | Mon, 18 Oct 2021 13:43:13 +0200 |
| |
On 06.08.21 08:50, Irui Wang (王瑞) wrote: > On Wed, 2021-08-04 at 16:27 +0200, Dafna Hirschfeld wrote: >> Each message sent to the VPU should raise a signal. The signal >> handler sets vpu->signaled. Test the field and fail >> if it is 0. > > I suppose you want to handle the message execution result, if ipi > message can't send or acked successfully, the returned "status" of > "mtk_vcodec_fw_ipi_send" will return, so I think you don't need to > check "signaled" again.
in that case, the field 'signaled' is not needed and can be removed So I can send a patch to remove it.
Thanks, Dafna
> >> >> Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld@collabora.com> >> --- >> drivers/media/platform/mtk-vcodec/venc_vpu_if.c | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/media/platform/mtk-vcodec/venc_vpu_if.c >> b/drivers/media/platform/mtk-vcodec/venc_vpu_if.c >> index 234705ba7cd6..8331b1bd1971 100644 >> --- a/drivers/media/platform/mtk-vcodec/venc_vpu_if.c >> +++ b/drivers/media/platform/mtk-vcodec/venc_vpu_if.c >> @@ -92,6 +92,7 @@ static int vpu_enc_send_msg(struct venc_vpu_inst >> *vpu, void *msg, >> { >> int status; >> >> + vpu->signaled = 0; >> mtk_vcodec_debug_enter(vpu); >> >> if (!vpu->ctx->dev->fw_handler) { >> @@ -106,6 +107,8 @@ static int vpu_enc_send_msg(struct venc_vpu_inst >> *vpu, void *msg, >> *(uint32_t *)msg, len, status); >> return -EINVAL; >> } >> + if (!vpu->signaled) >> + return -EINVAL; >> if (vpu->failure) >> return -EINVAL; >> >> @@ -122,7 +125,6 @@ int vpu_enc_init(struct venc_vpu_inst *vpu) >> mtk_vcodec_debug_enter(vpu); >> >> init_waitqueue_head(&vpu->wq_hd); >> - vpu->signaled = 0; >> vpu->failure = 0; >> >> status = mtk_vcodec_fw_ipi_register(vpu->ctx->dev->fw_handler, >> vpu->id,
| |