On 30.09.2024 3:44 PM, Manivannan Sadhasivam wrote: > Currently, if global IRQ is supported by the platform, only the Link up > interrupt is enabled in the PARF_INT_ALL_MASK register. But on some Qcom > platforms like SM8250, and X1E80100, MSIs are getting masked due to this. > They require enabling the MSI interrupt bits in the register to unmask > (enable) the MSIs. > > Even though the MSI interrupt enable bits in PARF_INT_ALL_MASK are > described as 'diagnostic' interrupts in the internal documentation, > disabling them masks MSI on these platforms. Due to this, MSIs were not > reported to be received these platforms while supporting global IRQ. > > So enable the MSI interrupts along with the Link up interrupt in the > PARF_INT_ALL_MASK register if global IRQ is supported. This ensures that > the MSIs continue to work and also the driver is able to catch the Link > up interrupt for enumerating endpoint devices. > > Fixes: 4581403f6792 ("PCI: qcom: Enumerate endpoints based on Link up event in 'global_irq' interrupt") > Reported-by: Konrad Dybcio <konradybcio@xxxxxxxxxx> > Closes: https://lore.kernel.org/linux-pci/9a692c98-eb0a-4d86-b642-ea655981ff53@xxxxxxxxxx/ > Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> > --- Tested-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxxxx> # SL7 Konrad