lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <0027428e-8e0e-4efb-a953-b83dfb8102af@oss.qualcomm.com>
Date: Thu, 27 Nov 2025 17:17:32 +0530
From: Vikash Garodia <vikash.garodia@....qualcomm.com>
To: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>,
        Dikshita Agarwal <dikshita.agarwal@....qualcomm.com>,
        Abhinav Kumar <abhinav.kumar@...ux.dev>,
        Bryan O'Donoghue <bod@...nel.org>,
        Mauro Carvalho Chehab <mchehab@...nel.org>
Cc: linux-media@...r.kernel.org, linux-arm-msm@...r.kernel.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] media: qcom: venus: flip the venus/iris switch


On 11/19/2025 8:48 PM, Dmitry Baryshkov wrote:
> With the Iris and Venus driver having more or less feature parity for
> "HFI 6xx" platforms and with Iris gaining support for SC7280, flip the
> switch. Use Iris by default for SM8250 and SC7280, the platforms which
> are supported by both drivers, and use Venus only if Iris is not
> compiled at all. 

Good to see platforms moving to iris.

> Use IS_ENABLED to strip out the code and data
> structures which are used by the disabled platforms.
> 
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
> ---
> Note: then intention is to land this in 6.20, which might let us to
> start dropping those platforms from the Venus driver in 6.21+.
> ---
>   drivers/media/platform/qcom/iris/Makefile        |  5 +----
>   drivers/media/platform/qcom/iris/iris_probe.c    |  2 --
>   drivers/media/platform/qcom/venus/Makefile       |  5 ++++-
>   drivers/media/platform/qcom/venus/core.c         |  6 ++++++
>   drivers/media/platform/qcom/venus/core.h         | 11 +++++++++++
>   drivers/media/platform/qcom/venus/helpers.c      |  7 ++++++-
>   drivers/media/platform/qcom/venus/hfi_helper.h   | 11 +++++++++++
>   drivers/media/platform/qcom/venus/hfi_platform.c |  2 ++
>   drivers/media/platform/qcom/venus/hfi_platform.h |  2 ++
>   drivers/media/platform/qcom/venus/pm_helpers.c   |  3 +++
>   drivers/media/platform/qcom/venus/venc.c         |  3 +--
>   11 files changed, 47 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/media/platform/qcom/iris/Makefile b/drivers/media/platform/qcom/iris/Makefile
> index fad3be044e5fe783db697a592b4f09de4d42d0d2..ce360c67846b1243dd9245972672591076bfdee2 100644
> --- a/drivers/media/platform/qcom/iris/Makefile
> +++ b/drivers/media/platform/qcom/iris/Makefile
> @@ -10,6 +10,7 @@ qcom-iris-objs += iris_buffer.o \
>                iris_hfi_gen2_packet.o \
>                iris_hfi_gen2_response.o \
>                iris_hfi_queue.o \
> +             iris_platform_gen1.o \
>                iris_platform_gen2.o \
>                iris_power.o \
>                iris_probe.o \
> @@ -25,8 +26,4 @@ qcom-iris-objs += iris_buffer.o \
>                iris_vpu_buffer.o \
>                iris_vpu_common.o \
>   
> -ifeq ($(CONFIG_VIDEO_QCOM_VENUS),)
> -qcom-iris-objs += iris_platform_gen1.o
> -endif
> -
>   obj-$(CONFIG_VIDEO_QCOM_IRIS) += qcom-iris.o
> diff --git a/drivers/media/platform/qcom/iris/iris_probe.c b/drivers/media/platform/qcom/iris/iris_probe.c
> index 9bc9b34c2576581635fa8d87eed1965657eb3eb3..0d5f37e51558ed1207554b3a3841096d8699c755 100644
> --- a/drivers/media/platform/qcom/iris/iris_probe.c
> +++ b/drivers/media/platform/qcom/iris/iris_probe.c
> @@ -356,7 +356,6 @@ static const struct of_device_id iris_dt_match[] = {
>   		.compatible = "qcom,qcs8300-iris",
>   		.data = &qcs8300_data,
>   	},
> -#if (!IS_ENABLED(CONFIG_VIDEO_QCOM_VENUS))
>   	{
>   		.compatible = "qcom,sc7280-venus",
>   		.data = &sc7280_data,
> @@ -365,7 +364,6 @@ static const struct of_device_id iris_dt_match[] = {
>   		.compatible = "qcom,sm8250-venus",
>   		.data = &sm8250_data,
>   	},
> -#endif
>   	{
>   		.compatible = "qcom,sm8550-iris",
>   		.data = &sm8550_data,
> diff --git a/drivers/media/platform/qcom/venus/Makefile b/drivers/media/platform/qcom/venus/Makefile
> index 91ee6be10292e0c275106f090f521f268da4c50a..60a3f948adbfaa4c6c91abdbbbe050f0bd724c9c 100644
> --- a/drivers/media/platform/qcom/venus/Makefile
> +++ b/drivers/media/platform/qcom/venus/Makefile
> @@ -5,7 +5,10 @@ venus-core-objs += core.o helpers.o firmware.o \
>   		   hfi_venus.o hfi_msgs.o hfi_cmds.o hfi.o \
>   		   hfi_parser.o pm_helpers.o dbgfs.o \
>   		   hfi_platform.o hfi_platform_v4.o \
> -		   hfi_platform_v6.o hfi_plat_bufs_v6.o \
> +
> +ifeq ($(CONFIG_VIDEO_QCOM_IRIS),)
> +venus-core-objs += hfi_platform_v6.o hfi_plat_bufs_v6.o
> +endif
>   
>   venus-dec-objs += vdec.o vdec_ctrls.o
>   venus-enc-objs += venc.o venc_ctrls.o
> diff --git a/drivers/media/platform/qcom/venus/core.c b/drivers/media/platform/qcom/venus/core.c
> index 24d2b2fd0340b55ed1aa329f49ded449dc466f14..646dae3407b4d13454eedd8e926f16e7470d5d3d 100644
> --- a/drivers/media/platform/qcom/venus/core.c
> +++ b/drivers/media/platform/qcom/venus/core.c
> @@ -949,6 +949,7 @@ static const struct venus_resources sc7180_res = {
>   	.enc_nodename = "video-encoder",
>   };
>   
> +#if (!IS_ENABLED(CONFIG_VIDEO_QCOM_IRIS))
>   static const struct freq_tbl sm8250_freq_table[] = {
>   	{ 0, 444000000 },
>   	{ 0, 366000000 },
> @@ -1069,6 +1070,7 @@ static const struct venus_resources sc7280_res = {
>   	.dec_nodename = "video-decoder",
>   	.enc_nodename = "video-encoder",
>   };
> +#endif

There are configs check all over the venus driver, like the one above. 
Can we do this with keeping _only_ the compat under config check ? And 
if needed to keep it inline with iris code, we can keep the makefile change.

Regards,
Vikash


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ