From: sashiko-bot@kernel.org
To: "Krishna Chaitanya Chundru" <krishna.chundru@oss.qualcomm.com>
Cc: robh@kernel.org, conor+dt@kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH v2 34/37] arm64: dts: qcom: talos: Move PCIe phy and GPIOs to root port node
Date: Thu, 11 Jun 2026 05:22:31 +0000 [thread overview]
Message-ID: <20260611052231.E495B1F00893@smtp.kernel.org> (raw)
In-Reply-To: <20260611-wake-v2-34-2744251b1181@oss.qualcomm.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
Pre-existing issues:
- [High] A preexisting error-handling flaw in `qcom_pcie_parse_port()` causes a resource leak of the initialized PHY. This leak will now be frequently triggered due to this commit moving `reset-gpios` to the port node.
--
commit 689313d243e7ec1e4f35d3db8dcb7b5d6e32d186
Author: Krishna Chaitanya Chundru <krishna.chundru@oss.qualcomm.com>
arm64: dts: qcom: talos: Move PCIe phy and GPIOs to root port node
Moves the PCIe phy reference and the perst/wake GPIO properties from the
RC controller node to the root port node. Also renames perst-gpios to
reset-gpios to match the root port binding context.
> diff --git a/arch/arm64/boot/dts/qcom/qcs615-ride.dts b/arch/arm64/boot/dts/qcom/qcs615-ride.dts
> --- a/arch/arm64/boot/dts/qcom/qcs615-ride.dts
> +++ b/arch/arm64/boot/dts/qcom/qcs615-ride.dts
[ ... ]
> @@ -444,15 +444,17 @@ &mdss_dsi0_phy {
> };
>
> &pcie {
> - perst-gpios = <&tlmm 101 GPIO_ACTIVE_LOW>;
> - wake-gpios = <&tlmm 100 GPIO_ACTIVE_LOW>;
> -
> pinctrl-0 = <&pcie_default_state>;
> pinctrl-names = "default";
>
> status = "okay";
> };
>
> +&pcie_port0 {
> + reset-gpios = <&tlmm 101 GPIO_ACTIVE_LOW>;
[Severity: High]
This is a pre-existing issue, but will moving these GPIOs here make it
highly likely to trigger a PHY resource leak during probe deferral?
In drivers/pci/controller/dwc/pcie-qcom.c, qcom_pcie_parse_port()
initializes the PHY before parsing the perst GPIOs:
drivers/pci/controller/dwc/pcie-qcom.c:qcom_pcie_parse_port() {
...
ret = phy_init(phy);
if (ret)
return ret;
INIT_LIST_HEAD(&port->perst);
ret = qcom_pcie_parse_perst(pcie, port, node);
if (ret)
return ret;
port->phy = phy;
INIT_LIST_HEAD(&port->list);
list_add_tail(&port->list, &pcie->ports);
}
If the newly moved reset-gpios cause qcom_pcie_parse_perst() to return
-EPROBE_DEFER, the function exits before adding the newly allocated port
to the pcie->ports list.
Since the cleanup routine qcom_pcie_parse_ports() iterates over the
pcie->ports list to call phy_exit(), does this mean the initialized PHY
reference (and its underlying clocks/regulators) will be permanently
leaked on every probe deferral?
> + wake-gpios = <&tlmm 100 GPIO_ACTIVE_LOW>;
> +};
> +
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260611-wake-v2-0-2744251b1181@oss.qualcomm.com?part=34
next prev parent reply other threads:[~2026-06-11 5:22 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-11 4:58 [PATCH v2 00/37] arm64: dts: qcom: Fix PCIe wake GPIO polarity Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 01/37] ARM: dts: qcom: sdx55: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 02/37] arm64: dts: qcom: msm8996: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 03/37] arm64: dts: qcom: sdm845: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 04/37] arm64: dts: qcom: sc8180x: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 05/37] arm64: dts: qcom: sm8150: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 06/37] arm64: dts: qcom: sm8250: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 07/37] arm64: dts: qcom: sm8350: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 08/37] arm64: dts: qcom: sm8450: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 09/37] arm64: dts: qcom: sm8550: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 10/37] arm64: dts: qcom: sm8650: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 11/37] arm64: dts: qcom: sm8750: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 12/37] arm64: dts: qcom: kaanapali: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 13/37] arm64: dts: qcom: sar2130p: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 14/37] arm64: dts: qcom: monaco: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 15/37] arm64: dts: qcom: lemans: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 16/37] arm64: dts: qcom: sa8540p-ride: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 17/37] arm64: dts: qcom: kodiak: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 18/37] arm64: dts: qcom: talos: " Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 19/37] arm64: dts: qcom: lemans: Move PCIe phy and GPIOs to root port node Krishna Chaitanya Chundru
2026-06-11 4:58 ` [PATCH v2 20/37] arm64: dts: qcom: msm8998: " Krishna Chaitanya Chundru
2026-06-11 5:12 ` sashiko-bot
2026-06-11 4:58 ` [PATCH v2 21/37] arm64: dts: qcom: qcs404: " Krishna Chaitanya Chundru
2026-06-11 5:13 ` sashiko-bot
2026-06-11 4:58 ` [PATCH v2 22/37] arm64: dts: qcom: qcs8550: Move PCIe " Krishna Chaitanya Chundru
2026-06-11 5:15 ` sashiko-bot
2026-06-11 4:58 ` [PATCH v2 23/37] arm64: dts: qcom: sa8295p: " Krishna Chaitanya Chundru
2026-06-11 7:48 ` Konrad Dybcio
2026-06-11 4:59 ` [PATCH v2 24/37] arm64: dts: qcom: sa8540p: " Krishna Chaitanya Chundru
2026-06-11 4:59 ` [PATCH v2 25/37] arm64: dts: qcom: sar2130p: Move PCIe phy and " Krishna Chaitanya Chundru
2026-06-11 4:59 ` [PATCH v2 26/37] arm64: dts: qcom: sc8180x: " Krishna Chaitanya Chundru
2026-06-11 5:19 ` sashiko-bot
2026-06-11 7:49 ` Konrad Dybcio
2026-06-11 4:59 ` [PATCH v2 27/37] arm64: dts: qcom: sc8280xp: " Krishna Chaitanya Chundru
2026-06-11 4:59 ` [PATCH v2 28/37] arm64: dts: qcom: sdm845: " Krishna Chaitanya Chundru
2026-06-11 5:21 ` sashiko-bot
2026-06-11 4:59 ` [PATCH v2 29/37] arm64: dts: qcom: sm8150: " Krishna Chaitanya Chundru
2026-06-11 5:21 ` sashiko-bot
2026-06-11 4:59 ` [PATCH v2 30/37] arm64: dts: qcom: sm8250: " Krishna Chaitanya Chundru
2026-06-11 5:24 ` sashiko-bot
2026-06-11 4:59 ` [PATCH v2 31/37] arm64: dts: qcom: sm8350: " Krishna Chaitanya Chundru
2026-06-11 5:21 ` sashiko-bot
2026-06-11 4:59 ` [PATCH v2 32/37] arm64: dts: qcom: sm8450: " Krishna Chaitanya Chundru
2026-06-11 5:23 ` sashiko-bot
2026-06-11 4:59 ` [PATCH v2 33/37] arm64: dts: qcom: sm8550: " Krishna Chaitanya Chundru
2026-06-11 5:25 ` sashiko-bot
2026-06-11 4:59 ` [PATCH v2 34/37] arm64: dts: qcom: talos: " Krishna Chaitanya Chundru
2026-06-11 5:22 ` sashiko-bot [this message]
2026-06-11 4:59 ` [PATCH v2 35/37] arm64: dts: qcom: sm8650: " Krishna Chaitanya Chundru
2026-06-11 5:24 ` sashiko-bot
2026-06-11 4:59 ` [PATCH v2 36/37] arm64: dts: qcom: kodiak: " Krishna Chaitanya Chundru
2026-06-11 5:26 ` sashiko-bot
2026-06-11 4:59 ` [PATCH v2 37/37] arm64: dts: qcom: msm8996: " Krishna Chaitanya Chundru
2026-06-11 7:24 ` sashiko-bot
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=20260611052231.E495B1F00893@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krishna.chundru@oss.qualcomm.com \
--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.