On Fri, Jun 17, 2022 at 05:40:19PM -0500, Bjorn Helgaas wrote: > On Fri, Jun 10, 2022 at 01:22:54PM -0700, ira.weiny@xxxxxxxxx wrote: > > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > > > Introduced in a PCI r6.0, sec 6.30, DOE provides a config space based > > mailbox with standard protocol discovery. Each mailbox is accessed > > through a DOE Extended Capability. > > + * pci_doe_get_irq_num() - Return the irq number for the mailbox at offset > > + * > > + * @pdev: The PCI device > > + * @offset: Offset of the DOE mailbox > > + * > > + * Returns: irq number on success > > + * -errno if irqs are not supported on this mailbox > > + */ > > +int pci_doe_get_irq_num(struct pci_dev *pdev, int offset) > > +{ > > + u32 val; > > + > > + pci_read_config_dword(pdev, offset + PCI_DOE_CAP, &val); > > + if (!FIELD_GET(PCI_DOE_CAP_INT, val)) > > + return -EOPNOTSUPP; > > + > > + return FIELD_GET(PCI_DOE_CAP_IRQ, val); > > +} > > +EXPORT_SYMBOL_GPL(pci_doe_get_irq_num); > > Confusing function name (and comment) since PCI_DOE_CAP_IRQ is an > Interrupt Message Number that has nothing to do with Linux IRQ > numbers. > > I see we already have PCI_EXP_FLAGS_IRQ, PCI_ERR_ROOT_AER_IRQ, > PCI_EXP_DPC_IRQ, so I guess you're in good company. Should have been more clear about this: I think we should rename the new one to be PCI_DOE_CAP_INT_MSG_NUM or similar, and rename the function as well. It's too confusing to use "irq" for both Linux IRQs and what the spec calls "Interupt Message Numbers". Bjorn