All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Dmitry Baryshkov" <dmitry.baryshkov@oss.qualcomm.com>
Cc: krzk+dt@kernel.org, robh@kernel.org, devicetree@vger.kernel.org,
	conor+dt@kernel.org
Subject: Re: [PATCH v7 5/6] arm64: dts: qcom: sm8350: add Iris device
Date: Fri, 15 May 2026 12:08:54 +0000	[thread overview]
Message-ID: <20260515120854.C2FBAC2BCB0@smtp.kernel.org> (raw)
In-Reply-To: <20260515-iris-sc8280xp-v7-5-2e21f6db1897@oss.qualcomm.com>

Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [High] The fallback driver `qcom,sm8250-venus` lacks support for the `mmcx` power domain, causing silent dynamic voltage scaling failures and hardware instability.
- [Medium] The `video-codec@aa00000` node violates the `qcom,sm8250-venus` DT schema constraints by defining 4 power domains.
--

commit 2b4298f622bad3f707d0f7effff3c5046a527949
Author: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
arm64: dts: qcom: sm8350: add Iris device

This commit adds Iris and video clock controller devices, describing the
Iris2 core present on this platform.

> diff --git a/arch/arm64/boot/dts/qcom/sm8350.dtsi b/arch/arm64/boot/dts/qcom/sm8350.dtsi
> --- a/arch/arm64/boot/dts/qcom/sm8350.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sm8350.dtsi
[ ... ]
> @@ -2745,6 +2747,85 @@ usb_2_dwc3: usb@a800000 {
[ ... ]
> +		iris: video-codec@aa00000 {
> +			compatible = "qcom,sm8350-iris", "qcom,sm8250-venus";
> +			reg = <0x0 0x0aa00000 0x0 0x100000>;
> +			interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
> +
> +			clocks = <&gcc GCC_VIDEO_AXI0_CLK>,
> +				 <&videocc VIDEO_CC_MVS0C_CLK>,
> +				 <&videocc VIDEO_CC_MVS0_CLK>;
> +			clock-names = "iface",
> +				      "core",
> +				      "vcodec0_core";
> +			power-domains = <&videocc MVS0C_GDSC>,
> +					<&videocc MVS0_GDSC>,
> +					<&rpmhpd RPMHPD_MX>,
> +					<&rpmhpd RPMHPD_MMCX>;
> +			power-domain-names = "venus",
> +					     "vcodec0",
> +					     "mx",
> +					     "mmcx";

The qcom,sm8250-venus schema restricts power-domains to maxItems: 3 and
power-domain-names to venus, vcodec0, and mx. Since this node uses the
qcom,sm8250-venus fallback compatible string and defines 4 power domains
including mmcx, will this cause make dtbs_check to fail with validation
errors?

> +
> +			resets = <&gcc GCC_VIDEO_AXI0_CLK_ARES>,
> +				 <&videocc VIDEO_CC_MVS0C_CLK_ARES>;
> +			reset-names = "bus", "core";
> +
> +			interconnects = <&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ACTIVE_ONLY
> +					 &config_noc SLAVE_VENUS_CFG QCOM_ICC_TAG_ACTIVE_ONLY>,
> +					<&mmss_noc MASTER_VIDEO_P0 QCOM_ICC_TAG_ALWAYS
> +					 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
> +			interconnect-names = "cpu-cfg",
> +					     "video-mem";
> +
> +			operating-points-v2 = <&iris_opp_table>;
> +			iommus = <&apps_smmu 0x2100 0x400>;
> +			memory-region = <&pil_video_mem>;
> +
> +			status = "disabled";
> +
> +			iris_opp_table: opp-table {
> +				compatible = "operating-points-v2";
> +
> +				opp-240000000 {
> +					opp-hz = /bits/ 64 <240000000>;
> +					required-opps = <&rpmhpd_opp_svs>,
> +							<&rpmhpd_opp_low_svs>;
> +				};
> +
> +				opp-338000000 {
> +					opp-hz = /bits/ 64 <338000000>;
> +					required-opps = <&rpmhpd_opp_svs>,
> +							<&rpmhpd_opp_svs>;
> +				};
> +
> +				opp-366000000 {
> +					opp-hz = /bits/ 64 <366000000>;
> +					required-opps = <&rpmhpd_opp_svs_l1>,
> +							<&rpmhpd_opp_svs_l1>;
> +				};
> +
> +				opp-444000000 {
> +					opp-hz = /bits/ 64 <444000000>;
> +					required-opps = <&rpmhpd_opp_svs_l1>,
> +							<&rpmhpd_opp_nom>;
> +				};

The iris_opp_table specifies two required-opps for each frequency point to
dynamically scale both the mx and mmcx power domains. However, because a
specific qcom,sm8350-iris driver is not implemented, the kernel will bind
this device to the fallback qcom,sm8250-venus driver.

The qcom,sm8250-venus platform driver data explicitly requests and attaches
only the mx OPP domain, entirely omitting mmcx. During dynamic voltage
scaling, the OPP framework will silently skip casting the second required-opp
vote because the mmcx index in required_devs is NULL.

Will this cause the MMCX voltage to statically remain at its baseline low_svs
while the Iris core runs at high frequencies like 444MHz, potentially leading
to hardware hangs or system crashes?

> +			};
> +		};

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260515-iris-sc8280xp-v7-0-2e21f6db1897@oss.qualcomm.com?part=5

  reply	other threads:[~2026-05-15 12:08 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-15 10:56 [PATCH v7 0/6] media: iris: enable SM8350 and SC8280XP support Dmitry Baryshkov
2026-05-15 10:56 ` [PATCH v7 1/6] media: dt-bindings: Document SC8280XP/SM8350 Iris Dmitry Baryshkov
2026-05-16  9:20   ` Krzysztof Kozlowski
2026-05-15 10:56 ` [PATCH v7 2/6] arm64: dts: qcom: sc8280xp: sort reserved memory regions Dmitry Baryshkov
2026-05-15 10:56 ` [PATCH v7 3/6] arm64: dts: qcom: sc8280xp: Add Iris core Dmitry Baryshkov
2026-05-15 11:42   ` sashiko-bot
2026-05-15 12:14     ` Dmitry Baryshkov
2026-05-15 10:56 ` [PATCH v7 4/6] arm64: dts: qcom: sc8280xp-x13s: Enable Iris Dmitry Baryshkov
2026-05-15 10:56 ` [PATCH v7 5/6] arm64: dts: qcom: sm8350: add Iris device Dmitry Baryshkov
2026-05-15 12:08   ` sashiko-bot [this message]
2026-05-15 10:56 ` [PATCH v7 6/6] arm64: dts: qcom: sm8350-hdk: enable Iris core Dmitry Baryshkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260515120854.C2FBAC2BCB0@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@oss.qualcomm.com \
    --cc=krzk+dt@kernel.org \
    --cc=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.