From mboxrd@z Thu Jan 1 00:00:00 1970 From: schwidefsky@de.ibm.com (Martin Schwidefsky) Date: Fri, 4 Oct 2013 09:39:56 +0200 Subject: [PATCH RFC 03/77] PCI/MSI/s390: Fix single MSI only check In-Reply-To: <8c9811b13fd93e73641dab8e3bd1bd5b2dc37a61.1380703262.git.agordeev@redhat.com> References: <8c9811b13fd93e73641dab8e3bd1bd5b2dc37a61.1380703262.git.agordeev@redhat.com> Message-ID: <20131004093956.183f6901@mschwide> On Wed, 2 Oct 2013 12:48:19 +0200 Alexander Gordeev wrote: > Multiple MSIs have never been supported on s390 architecture, > but the platform code fails to report single MSI only. > > Signed-off-by: Alexander Gordeev > --- > arch/s390/pci/pci.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/arch/s390/pci/pci.c b/arch/s390/pci/pci.c > index f17a834..c79c6e4 100644 > --- a/arch/s390/pci/pci.c > +++ b/arch/s390/pci/pci.c > @@ -427,6 +427,8 @@ int arch_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type) > pr_debug("%s: requesting %d MSI-X interrupts...", __func__, nvec); > if (type != PCI_CAP_ID_MSIX && type != PCI_CAP_ID_MSI) > return -EINVAL; > + if (type == PCI_CAP_ID_MSI && nvec > 1) > + return 1; > msi_vecs = min(nvec, ZPCI_MSI_VEC_MAX); > msi_vecs = min_t(unsigned int, msi_vecs, CONFIG_PCI_NR_MSI); > Acked-by: Martin Schwidefsky -- blue skies, Martin. "Reality continues to ruin my life." - Calvin.