From: Soeren Moch <smoch@web.de>
To: sashiko-reviews@lists.linux.dev
Cc: linux-pci@vger.kernel.org, Frank.Li@kernel.org, imx@lists.linux.dev
Subject: Re: [PATCH v2] PCI: imx6: Keep Root Port MSI capability also for i.MX6Q
Date: Fri, 17 Jul 2026 00:04:11 +0200 [thread overview]
Message-ID: <880a7886-e16b-4e98-8f9c-767ee55f0c7f@web.de> (raw)
In-Reply-To: <e793aa45-746f-4b49-967d-bb997607ff55@web.de>
Resend as plain text.
On 17.07.26 00:01, Soeren Moch wrote:
On 16.07.26 23:51, sashiko-bot@kernel.org wrote:
> Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
>
> Pre-existing issues:
> - [High] The patch applies the IMX_PCIE_FLAG_KEEP_MSI_CAP workaround to IMX6Q but fails to apply it to IMX6QP and IMX6SX, leaving endpoint MSIs broken on those platforms.
> --
>
> --- Patch [1]: [PATCH v2] PCI: imx6: Keep Root Port MSI capability also for i.MX6Q ---
> commit c39e7347457d41f45ace38b5f670a9cded21c82b
> Author: Soeren Moch<smoch@web.de>
> PCI: imx6: Keep Root Port MSI capability also for i.MX6Q
>
> This commit works around a hardware bug on the NXP i.MX6Q chipset where
> endpoint MSIs are dropped if the Root Port MSI capability is disabled.
> It achieves this by unconditionally applying the IMX_PCIE_FLAG_KEEP_MSI_CAP
> flag to keep the Root Port MSI capability active.
>
>> diff --git a/drivers/pci/controller/dwc/pci-imx6.c b/drivers/pci/controller/dwc/pci-imx6.c
>> index 98e1db751132a..8130cf93c2bb4 100644
>> --- a/drivers/pci/controller/dwc/pci-imx6.c
>> +++ b/drivers/pci/controller/dwc/pci-imx6.c
>> @@ -1995,7 +1995,8 @@ static const struct imx_pcie_drvdata drvdata[] = {
>> .flags = IMX_PCIE_FLAG_IMX_PHY |
>> IMX_PCIE_FLAG_SPEED_CHANGE_WORKAROUND |
>> IMX_PCIE_FLAG_BROKEN_SUSPEND |
>> - IMX_PCIE_FLAG_SUPPORTS_SUSPEND,
>> + IMX_PCIE_FLAG_SUPPORTS_SUSPEND |
>> + IMX_PCIE_FLAG_KEEP_MSI_CAP,
>> .dbi_length = 0x200,
>> .gpr = "fsl,imx6q-iomuxc-gpr",
>> .ltssm_off = IOMUXC_GPR12,
> [Severity: High]
> This is a pre-existing issue, but should the IMX6QP and IMX6SX variants also
> receive the IMX_PCIE_FLAG_KEEP_MSI_CAP workaround?
>
> Looking at the drvdata definitions in this same file, the IMX6QP and IMX6SX
> variants lack the IMX_PCIE_FLAG_KEEP_MSI_CAP flag:
>
> [IMX6SX] = {
> .variant = IMX6SX,
> .flags = IMX_PCIE_FLAG_IMX_PHY |
> IMX_PCIE_FLAG_SPEED_CHANGE_WORKAROUND |
> IMX_PCIE_FLAG_SKIP_L23_READY |
> IMX_PCIE_FLAG_SUPPORTS_SUSPEND,
> ...
>
> [IMX6QP] = {
> .variant = IMX6QP,
> .flags = IMX_PCIE_FLAG_IMX_PHY |
> IMX_PCIE_FLAG_SPEED_CHANGE_WORKAROUND |
> IMX_PCIE_FLAG_SKIP_L23_READY |
> IMX_PCIE_FLAG_SUPPORTS_SUSPEND,
> ...
>
> Since they use the iMSI-RX controller and share the same DesignWare PCIe
> integration as IMX6Q, dw_pcie_setup_rc() strips their Root Port MSI capability
> unless the keep_rp_msi_en flag is set.
>
> Does leaving this flag off cause IRQ timeouts and complete functional failure
> of MSI-reliant PCIe devices on IMX6QP and IMX6SX platforms due to the same
> hardware bug?
>
Unfortunately I have no access to IMX6QP and IMX6SX platforms. So I
cannot judge if the same fix should be used for these platforms as well.
If this fix is required for all platforms that are supported in this
driver, why is this added as a special quirk? -- Soeren
next prev parent reply other threads:[~2026-07-16 22:04 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-16 21:40 [PATCH v2] PCI: imx6: Keep Root Port MSI capability also for i.MX6Q Soeren Moch
2026-07-16 21:51 ` sashiko-bot
[not found] ` <e793aa45-746f-4b49-967d-bb997607ff55@web.de>
2026-07-16 22:04 ` Soeren Moch [this message]
2026-07-16 22:27 ` Bjorn Helgaas
2026-07-17 2:48 ` Hongxing Zhu
2026-07-17 7:54 ` Soeren Moch
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=880a7886-e16b-4e98-8f9c-767ee55f0c7f@web.de \
--to=smoch@web.de \
--cc=Frank.Li@kernel.org \
--cc=imx@lists.linux.dev \
--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