[PATCH v19 03/10] PCI: endpoint: pci-ep-msi: Add MSI address/data pair mutable check
Manivannan Sadhasivam
mani at kernel.org
Wed Jul 2 04:30:23 PDT 2025
On Mon, Jun 09, 2025 at 12:34:15PM GMT, Frank Li wrote:
> Some MSI controller change address/data pair when irq_set_affinity().
> Current PCI endpoint can't support this type MSI controller. Call
> irq_domain_is_msi_immutable() check if address/data pair immutable.
>
> Signed-off-by: Frank Li <Frank.Li at nxp.com>
> ---
> change in v18
> - update commit message. remove 'include/linux/msi.h' part.
>
> change from v14 to v17
> - none
>
> change from v13 to v14
> - bring v10 back
>
> Change from v9 to v10
> - new patch
> ---
> drivers/pci/endpoint/pci-ep-msi.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/drivers/pci/endpoint/pci-ep-msi.c b/drivers/pci/endpoint/pci-ep-msi.c
> index 549b55b864d0e..c0e2d806ee658 100644
> --- a/drivers/pci/endpoint/pci-ep-msi.c
> +++ b/drivers/pci/endpoint/pci-ep-msi.c
> @@ -44,6 +44,14 @@ int pci_epf_alloc_doorbell(struct pci_epf *epf, u16 num_db)
>
> dev_set_msi_domain(dev, dom);
>
> + if (!irq_domain_is_msi_parent(dom))
> + return -EINVAL;
This check is not justified in commit message.
> +
> + if (!irq_domain_is_msi_immutable(dom)) {
> + dev_err(dev, "Can't support mutable address/data pair MSI controller\n");
> + return -EINVAL;
GICv3 ITS is an immutable MSI controller. From the earlier patches, I could see
that you have tested this series with ITS. How did that happen if it errors out
here?
- Mani
--
மணிவண்ணன் சதாசிவம்
More information about the linux-arm-kernel
mailing list