* [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