2018-10-22 12:25:11

by Malathi Gottam

[permalink] [raw]
Subject: [PATCH v2] media: venus: handle peak bitrate set property

Max bitrate property is not supported for venus version 4xx.
Return unsupported from packetization layer. Handle it in
hfi_venus layer to exit gracefully to venc layer.

Signed-off-by: Malathi Gottam <[email protected]>
---
drivers/media/platform/qcom/venus/hfi_cmds.c | 2 +-
drivers/media/platform/qcom/venus/hfi_venus.c | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/media/platform/qcom/venus/hfi_cmds.c b/drivers/media/platform/qcom/venus/hfi_cmds.c
index e8389d8..87a4414 100644
--- a/drivers/media/platform/qcom/venus/hfi_cmds.c
+++ b/drivers/media/platform/qcom/venus/hfi_cmds.c
@@ -1215,7 +1215,7 @@ static int pkt_session_set_property_1x(struct hfi_session_set_property_pkt *pkt,
}
case HFI_PROPERTY_CONFIG_VENC_MAX_BITRATE:
/* not implemented on Venus 4xx */
- break;
+ return -ENOTSUPP;
default:
return pkt_session_set_property_3xx(pkt, cookie, ptype, pdata);
}
diff --git a/drivers/media/platform/qcom/venus/hfi_venus.c b/drivers/media/platform/qcom/venus/hfi_venus.c
index 1240855..9d086b9 100644
--- a/drivers/media/platform/qcom/venus/hfi_venus.c
+++ b/drivers/media/platform/qcom/venus/hfi_venus.c
@@ -1355,6 +1355,8 @@ static int venus_session_set_property(struct venus_inst *inst, u32 ptype,
pkt = (struct hfi_session_set_property_pkt *)packet;

ret = pkt_session_set_property(pkt, inst, ptype, pdata);
+ if (ret == -ENOTSUPP)
+ return 0;
if (ret)
return ret;

--
1.9.1



2018-10-23 08:09:30

by Alexandre Courbot

[permalink] [raw]
Subject: Re: [PATCH v2] media: venus: handle peak bitrate set property

Hi Malathi,

On Mon, Oct 22, 2018 at 9:06 PM Malathi Gottam <[email protected]> wrote:
>
> Max bitrate property is not supported for venus version 4xx.
> Return unsupported from packetization layer. Handle it in
> hfi_venus layer to exit gracefully to venc layer.
>
> Signed-off-by: Malathi Gottam <[email protected]>

This seems to work, thanks!

Tested-by: Alexandre Courbot <[email protected]>

> ---
> drivers/media/platform/qcom/venus/hfi_cmds.c | 2 +-
> drivers/media/platform/qcom/venus/hfi_venus.c | 2 ++
> 2 files changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/qcom/venus/hfi_cmds.c b/drivers/media/platform/qcom/venus/hfi_cmds.c
> index e8389d8..87a4414 100644
> --- a/drivers/media/platform/qcom/venus/hfi_cmds.c
> +++ b/drivers/media/platform/qcom/venus/hfi_cmds.c
> @@ -1215,7 +1215,7 @@ static int pkt_session_set_property_1x(struct hfi_session_set_property_pkt *pkt,
> }
> case HFI_PROPERTY_CONFIG_VENC_MAX_BITRATE:
> /* not implemented on Venus 4xx */
> - break;
> + return -ENOTSUPP;
> default:
> return pkt_session_set_property_3xx(pkt, cookie, ptype, pdata);
> }
> diff --git a/drivers/media/platform/qcom/venus/hfi_venus.c b/drivers/media/platform/qcom/venus/hfi_venus.c
> index 1240855..9d086b9 100644
> --- a/drivers/media/platform/qcom/venus/hfi_venus.c
> +++ b/drivers/media/platform/qcom/venus/hfi_venus.c
> @@ -1355,6 +1355,8 @@ static int venus_session_set_property(struct venus_inst *inst, u32 ptype,
> pkt = (struct hfi_session_set_property_pkt *)packet;
>
> ret = pkt_session_set_property(pkt, inst, ptype, pdata);
> + if (ret == -ENOTSUPP)
> + return 0;
> if (ret)
> return ret;
>
> --
> 1.9.1
>

2018-11-01 12:22:14

by Stanimir Varbanov

[permalink] [raw]
Subject: Re: [PATCH v2] media: venus: handle peak bitrate set property

Malathi, thanks for the patch!

On 10/22/18 3:05 PM, Malathi Gottam wrote:
> Max bitrate property is not supported for venus version 4xx.
> Return unsupported from packetization layer. Handle it in
> hfi_venus layer to exit gracefully to venc layer.
>
> Signed-off-by: Malathi Gottam <[email protected]>
> ---
> drivers/media/platform/qcom/venus/hfi_cmds.c | 2 +-
> drivers/media/platform/qcom/venus/hfi_venus.c | 2 ++
> 2 files changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/qcom/venus/hfi_cmds.c b/drivers/media/platform/qcom/venus/hfi_cmds.c
> index e8389d8..87a4414 100644
> --- a/drivers/media/platform/qcom/venus/hfi_cmds.c
> +++ b/drivers/media/platform/qcom/venus/hfi_cmds.c
> @@ -1215,7 +1215,7 @@ static int pkt_session_set_property_1x(struct hfi_session_set_property_pkt *pkt,
> }
> case HFI_PROPERTY_CONFIG_VENC_MAX_BITRATE:
> /* not implemented on Venus 4xx */
> - break;
> + return -ENOTSUPP;
> default:
> return pkt_session_set_property_3xx(pkt, cookie, ptype, pdata);
> }
> diff --git a/drivers/media/platform/qcom/venus/hfi_venus.c b/drivers/media/platform/qcom/venus/hfi_venus.c
> index 1240855..9d086b9 100644
> --- a/drivers/media/platform/qcom/venus/hfi_venus.c
> +++ b/drivers/media/platform/qcom/venus/hfi_venus.c
> @@ -1355,6 +1355,8 @@ static int venus_session_set_property(struct venus_inst *inst, u32 ptype,
> pkt = (struct hfi_session_set_property_pkt *)packet;
>
> ret = pkt_session_set_property(pkt, inst, ptype, pdata);
> + if (ret == -ENOTSUPP)
> + return 0;
> if (ret)
> return ret;
>

Acked-by: Stanimir Varbanov <[email protected]>

--
regards,
Stan