diff mbox series

media: venus: hfi_parser: Ignore HEVC encoding for V1

Message ID 20191209191652.222576-1-stephan@gerhold.net (mailing list archive)
State Accepted
Commit c50cc6dc6c48300af63a6fbc71b647053c15fc80
Headers show
Series media: venus: hfi_parser: Ignore HEVC encoding for V1 | expand

Commit Message

Stephan Gerhold Dec. 9, 2019, 7:16 p.m. UTC
Some older MSM8916 Venus firmware versions also seem to indicate
support for encoding HEVC, even though they really can't.
This will lead to errors later because hfi_session_init() fails
in this case.

HEVC is already ignored for "dec_codecs", so add the same for
"enc_codecs" to make these old firmware versions work correctly.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
---
This makes Venus work on the Samsung Galaxy S4 Mini VE (MSM8916),
which is stuck on a rather old Venus firmware version (1.6-00040).
The firmware is signed, so unfortunately I'm not aware of a way to upgrade it...
---
 drivers/media/platform/qcom/venus/hfi_parser.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Stanimir Varbanov Dec. 10, 2019, 8:41 a.m. UTC | #1
Hi Stephan,

Thanks for the patch!

On 12/9/19 9:16 PM, Stephan Gerhold wrote:
> Some older MSM8916 Venus firmware versions also seem to indicate
> support for encoding HEVC, even though they really can't.
> This will lead to errors later because hfi_session_init() fails
> in this case.
> 
> HEVC is already ignored for "dec_codecs", so add the same for
> "enc_codecs" to make these old firmware versions work correctly.
> 
> Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
> ---
> This makes Venus work on the Samsung Galaxy S4 Mini VE (MSM8916),
> which is stuck on a rather old Venus firmware version (1.6-00040).
> The firmware is signed, so unfortunately I'm not aware of a way to upgrade it...
> ---
>  drivers/media/platform/qcom/venus/hfi_parser.c | 1 +
>  1 file changed, 1 insertion(+)

Acked-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>

> 
> diff --git a/drivers/media/platform/qcom/venus/hfi_parser.c b/drivers/media/platform/qcom/venus/hfi_parser.c
> index 2293d936e49c..7f515a4b9bd1 100644
> --- a/drivers/media/platform/qcom/venus/hfi_parser.c
> +++ b/drivers/media/platform/qcom/venus/hfi_parser.c
> @@ -181,6 +181,7 @@ static void parse_codecs(struct venus_core *core, void *data)
>  	if (IS_V1(core)) {
>  		core->dec_codecs &= ~HFI_VIDEO_CODEC_HEVC;
>  		core->dec_codecs &= ~HFI_VIDEO_CODEC_SPARK;
> +		core->enc_codecs &= ~HFI_VIDEO_CODEC_HEVC;
>  	}
>  }
>  
>
diff mbox series

Patch

diff --git a/drivers/media/platform/qcom/venus/hfi_parser.c b/drivers/media/platform/qcom/venus/hfi_parser.c
index 2293d936e49c..7f515a4b9bd1 100644
--- a/drivers/media/platform/qcom/venus/hfi_parser.c
+++ b/drivers/media/platform/qcom/venus/hfi_parser.c
@@ -181,6 +181,7 @@  static void parse_codecs(struct venus_core *core, void *data)
 	if (IS_V1(core)) {
 		core->dec_codecs &= ~HFI_VIDEO_CODEC_HEVC;
 		core->dec_codecs &= ~HFI_VIDEO_CODEC_SPARK;
+		core->enc_codecs &= ~HFI_VIDEO_CODEC_HEVC;
 	}
 }