Re: [PATCH v8 4/9] media: qcom: venus: add codec blacklist mechanism

Bryan O'Donoghue <[email protected]>
Newsgroups org.kernel.vger.phone-devel,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-clk,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-media
Message-ID <[email protected]>
On 19/05/2026 16:10, Erikas Bitovtas wrote:
> Add decode and encode blacklist properties to allow disabling different
> codecs per Venus device, instead of doing it per HFI version.
> 
> Signed-off-by: Erikas Bitovtas <[email protected]>
> ---
>   drivers/media/platform/qcom/venus/core.h       |  2 ++
>   drivers/media/platform/qcom/venus/hfi_parser.c | 10 +++++-----
>   2 files changed, 7 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/media/platform/qcom/venus/core.h b/drivers/media/platform/qcom/venus/core.h
> index c1603eebd757..46705a666776 100644
> --- a/drivers/media/platform/qcom/venus/core.h
> +++ b/drivers/media/platform/qcom/venus/core.h
> @@ -88,6 +88,8 @@ struct venus_resources {
>   	const char **opp_pmdomain;
>   	unsigned int opp_pmdomain_num;
>   	unsigned int vcodec_num;
> +	const u32 dec_codec_blacklist;
> +	const u32 enc_codec_blacklist;
>   	const char * const resets[VIDC_RESETS_NUM_MAX];
>   	unsigned int resets_num;
>   	enum hfi_version hfi_version;
> diff --git a/drivers/media/platform/qcom/venus/hfi_parser.c b/drivers/media/platform/qcom/venus/hfi_parser.c
> index 92765f9c8873..8e762cf77968 100644
> --- a/drivers/media/platform/qcom/venus/hfi_parser.c
> +++ b/drivers/media/platform/qcom/venus/hfi_parser.c
> @@ -206,11 +206,11 @@ static int parse_codecs(struct venus_core *core, void *data)
>   	core->dec_codecs = codecs->dec_codecs;
>   	core->enc_codecs = codecs->enc_codecs;
> 
> -	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;
> -	}
> +	if (core->res->dec_codec_blacklist)
> +		core->dec_codecs &= ~core->res->dec_codec_blacklist;
> +
> +	if (core->res->enc_codec_blacklist)
> +		core->enc_codecs &= ~core->res->enc_codec_blacklist;
> 
>   	return sizeof(*codecs);
>   }
> 
> --
> 2.54.0
> 

The ordering of the patches is wrong here 5/9 should come before 4/9 
actually, that wouldn't bisect.

If it was just ordering, I'd fix this for you on application but, 4/9 
and 5/9 should be individually bisectable so rather than change the 
ordering just add blacklist and whitelist data for 8916 here.

Then 5/9 can be about switching off the old way. For 8916 the series 
should be opaque.

Assuming you do that please add:

Reviewed-by: Bryan O'Donoghue <[email protected]>

---
bod
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.