Linux PCI subsystem development
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Krishna Chaitanya Chundru" <krishna.chundru@oss.qualcomm.com>
Cc: linux-pci@vger.kernel.org
Subject: Re: [PATCH] PCI: qcom: Disable halting feature
Date: Fri, 09 Oct 2026 13:07:33 +0000	[thread overview]
Message-ID: <sashiko-outbox-165595@kernel.org> (raw)
In-Reply-To: <20261009-halt-v1-1-4a2d7899d91f@oss.qualcomm.com>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] pci: qcom: halt registers not cleared on 2.9.0 SoCs due to ignored flag
--

commit 209095cd3cdb28151146164ab8aa7f9f0f975948
Author: Krishna Chaitanya Chundru <krishna.chundru@oss.qualcomm.com>

PCI: qcom: Disable halting feature

This commit adds a noc_ensures_ordering flag to the PCIe configuration
for SoCs where the NoC handles inbound transaction ordering. Setting this
flag disables the PARF write, read, and BDF halt features at the
controller, which aims to improve inbound DMA bandwidth. The logic to
clear these registers is added to qcom_pcie_init_2_7_0() and enabled for
several hardware configurations.

> diff --git a/drivers/pci/controller/dwc/pcie-qcom.c b/drivers/pci/controller/dwc/pcie-qcom.c
> index b58a607b713f5..73eb303919c19 100644
> --- a/drivers/pci/controller/dwc/pcie-qcom.c
> +++ b/drivers/pci/controller/dwc/pcie-qcom.c

[ ... ]

> @@ -1624,15 +1652,18 @@ static const struct qcom_pcie_cfg cfg_2_4_0 = {
>  
>  static const struct qcom_pcie_cfg cfg_2_7_0 = {
>  	.ops = &ops_2_7_0,
> +	.noc_ensures_ordering = true,
>  };
>  
>  static const struct qcom_pcie_cfg cfg_2_9_0 = {
>  	.ops = &ops_2_9_0,
> +	.noc_ensures_ordering = true,
>  };

[Severity: Medium]
Will this flag actually take effect for 2.9.0 SoCs?

Looking at the initialization routine for 2.9.0:

drivers/pci/controller/dwc/pcie-qcom.c:qcom_pcie_init_2_9_0() {
	struct qcom_pcie_resources_2_9_0 *res = &pcie->res.v2_9_0;
	struct device *dev = pcie->pci->dev;
	int ret;
	...
}

It does not appear to check the noc_ensures_ordering flag or implement the
logic to clear the PARF AXI_MSTR halt registers.

Since the flag is explicitly set here to optimize performance, it seems the
inbound DMA bandwidth improvement intended by disabling the halt features will
be completely missed on 2.9.0 hardware.

Does qcom_pcie_init_2_9_0() also need to implement the halt register clearing
logic, similar to the updates made in qcom_pcie_init_2_7_0()?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261009-halt-v1-1-4a2d7899d91f@oss.qualcomm.com?part=1

      reply	other threads:[~2026-10-09 13:07 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-09 12:55 [PATCH] PCI: qcom: Disable halting feature Krishna Chaitanya Chundru
2026-10-09 13:07 ` sashiko-bot [this message]

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=sashiko-outbox-165595@kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=krishna.chundru@oss.qualcomm.com \
    --cc=linux-pci@vger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox