Linux PCI subsystem development
 help / color / mirror / Atom feed
* [PATCH] PCI: qcom: Skip DWC MSI host initialization when msi-map is present
@ 2026-09-17 11:13 Ayiluri Naga Rashmi
  2026-09-17 11:18 ` sashiko-bot
  0 siblings, 1 reply; 2+ messages in thread
From: Ayiluri Naga Rashmi @ 2026-09-17 11:13 UTC (permalink / raw)
  To: Manivannan Sadhasivam, Lorenzo Pieralisi,
	Krzysztof Wilczyński, Rob Herring, Bjorn Helgaas
  Cc: linux-pci, linux-arm-msm, linux-kernel, Krishna Chaitanya Chundru,
	Mrinmay Sarkar, Rama Krishna, Nitesh Gupta, Ayiluri Naga Rashmi

qcom_pcie_ecam_host_init() unconditionally initializes the DesignWare
internal MSI controller and sets use_imsi_rx, irrespective of whether an
external MSI controller is described for the host bridge. When an msi-map
property is present, MSI interrupts are handled by the mapped external
MSI controller. Initializing the internal iMSI-RX domain in this case is
unnecessary.

Set use_imsi_rx based on the presence of msi-map and initialize the
DesignWare MSI host only when iMSI-RX is required.

Signed-off-by: Ayiluri Naga Rashmi <ayiluri.rashmi@oss.qualcomm.com>
---
 drivers/pci/controller/dwc/pcie-qcom.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/pci/controller/dwc/pcie-qcom.c b/drivers/pci/controller/dwc/pcie-qcom.c
index ee63a6ec99de..b65852c32a55 100644
--- a/drivers/pci/controller/dwc/pcie-qcom.c
+++ b/drivers/pci/controller/dwc/pcie-qcom.c
@@ -1981,11 +1981,13 @@ static int qcom_pcie_ecam_host_init(struct pci_config_window *cfg)
 	 */
 	raw_spin_lock_init(&pp->lock);
 
-	ret = dw_pcie_msi_host_init(pp);
-	if (ret)
-		return ret;
+	pp->use_imsi_rx = !pci_host_of_has_msi_map(dev);
+	if (pp->use_imsi_rx) {
+		ret = dw_pcie_msi_host_init(pp);
+		if (ret)
+			return ret;
+	}
 
-	pp->use_imsi_rx = true;
 	dw_pcie_msi_init(pp);
 
 	return devm_add_action_or_reset(dev, qcom_pci_free_msi, pp);

---
base-commit: 0d9d0dbf2fddcff5859d623e90ca73c4054276e1
change-id: 20260917-skipmsi_forlpi-d9c486a1a04c

Best regards,
-- 
Ayiluri Naga Rashmi <ayiluri.rashmi@oss.qualcomm.com>


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] PCI: qcom: Skip DWC MSI host initialization when msi-map is present
  2026-09-17 11:13 [PATCH] PCI: qcom: Skip DWC MSI host initialization when msi-map is present Ayiluri Naga Rashmi
@ 2026-09-17 11:18 ` sashiko-bot
  0 siblings, 0 replies; 2+ messages in thread
From: sashiko-bot @ 2026-09-17 11:18 UTC (permalink / raw)
  To: Ayiluri Naga Rashmi; +Cc: linux-pci

> qcom_pcie_ecam_host_init() unconditionally initializes the DesignWare
> internal MSI controller and sets use_imsi_rx, irrespective of whether an
> external MSI controller is described for the host bridge. When an msi-map
> property is present, MSI interrupts are handled by the mapped external
> MSI controller. Initializing the internal iMSI-RX domain in this case is
> unnecessary.
> 
> Set use_imsi_rx based on the presence of msi-map and initialize the
> DesignWare MSI host only when iMSI-RX is required.
> 
> Signed-off-by: Ayiluri Naga Rashmi <ayiluri.rashmi@oss.qualcomm.com>

Sashiko has reviewed this patch and found no issues. It looks great!

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260917-skipmsi_forlpi-v1-1-14a4932a4311@oss.qualcomm.com?part=1


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-09-17 11:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-17 11:13 [PATCH] PCI: qcom: Skip DWC MSI host initialization when msi-map is present Ayiluri Naga Rashmi
2026-09-17 11:18 ` sashiko-bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox