From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sebastian Ott Subject: Re: [PATCH v1 16/21] s390/MSI: Use MSI chip framework to configure MSI/MSI-X irq Date: Tue, 16 Sep 2014 13:35:53 +0200 (CEST) Message-ID: References: <1409911806-10519-1-git-send-email-wangyijing@huawei.com> <1409911806-10519-17-git-send-email-wangyijing@huawei.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta14.messagelabs.com ([193.109.254.103]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1XTr3B-0001gk-RJ for xen-devel@lists.xenproject.org; Tue, 16 Sep 2014 11:36:02 +0000 Received: from /spool/local by e06smtp17.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 16 Sep 2014 12:36:00 +0100 Received: from b06cxnps4076.portsmouth.uk.ibm.com (d06relay13.portsmouth.uk.ibm.com [9.149.109.198]) by d06dlp02.portsmouth.uk.ibm.com (Postfix) with ESMTP id DBAE92190041 for ; Tue, 16 Sep 2014 12:35:36 +0100 (BST) Received: from d06av05.portsmouth.uk.ibm.com (d06av05.portsmouth.uk.ibm.com [9.149.37.229]) by b06cxnps4076.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id s8GBZvUK45547690 for ; Tue, 16 Sep 2014 11:35:57 GMT Received: from d06av05.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av05.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id s8GBZsiX004269 for ; Tue, 16 Sep 2014 05:35:56 -0600 In-Reply-To: <1409911806-10519-17-git-send-email-wangyijing@huawei.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Yijing Wang Cc: linux-mips@linux-mips.org, linux-ia64@vger.kernel.org, linux-pci@vger.kernel.org, Bharat.Bhushan@freescale.com, sparclinux@vger.kernel.org, linux-arch@vger.kernel.org, linux-s390@vger.kernel.org, Russell King , Joerg Roedel , x86@kernel.org, Benjamin Herrenschmidt , xen-devel@lists.xenproject.org, arnab.basu@freescale.com, Arnd Bergmann , Chris Metcalf , Bjorn Helgaas , Thomas Gleixner , linux-arm-kernel@lists.infradead.org, Xinwei Hu , Tony Luck , Ralf Baechle , iommu@lists.linux-foundation.org, Wuyun , linuxppc-dev@lists.ozlabs.org, "David S. Miller" List-Id: xen-devel@lists.xenproject.org Hello, On Fri, 5 Sep 2014, Yijing Wang wrote: > Use MSI chip framework instead of arch MSI functions to configure > MSI/MSI-X irq. So we can manage MSI/MSI-X irq in a unified framework. > > Signed-off-by: Yijing Wang > --- > arch/s390/pci/pci.c | 18 ++++++++++++++---- > 1 files changed, 14 insertions(+), 4 deletions(-) > > diff --git a/arch/s390/pci/pci.c b/arch/s390/pci/pci.c > index 2fa7b14..da5316e 100644 > --- a/arch/s390/pci/pci.c > +++ b/arch/s390/pci/pci.c > @@ -358,7 +358,7 @@ static void zpci_irq_handler(struct airq_struct *airq) > } > } > > -int arch_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type) > +int zpci_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type) > { > struct zpci_dev *zdev = get_zdev(pdev); > unsigned int hwirq, msi_vecs; > @@ -434,7 +434,7 @@ out: > return rc; > } > > -void arch_teardown_msi_irqs(struct pci_dev *pdev) > +static void zpci_teardown_msi_irqs(struct pci_dev *pdev) > { > struct zpci_dev *zdev = get_zdev(pdev); > struct msi_desc *msi; > @@ -448,9 +448,9 @@ void arch_teardown_msi_irqs(struct pci_dev *pdev) > /* Release MSI interrupts */ > list_for_each_entry(msi, &pdev->msi_list, list) { > if (msi->msi_attrib.is_msix) > - default_msix_mask_irq(msi, 1); > + __msix_mask_irq(msi, 1); > else > - default_msi_mask_irq(msi, 1, 1); > + __msi_mask_irq(msi, 1, 1); The default_msi_mask_irq to __msi_mask_irq renaming is hidden in your patch "x86/xen/MSI: Eliminate arch_msix_mask_irq() and arch_msi_mask_irq()" This means that between that patch and this one s390 will not compile. Could you please move this hunk to the other patch or even make an extra patch with the renaming. Other than that: Acked-by: Sebastian Ott Regards, Sebastian > irq_set_msi_desc(msi->irq, NULL); > irq_free_desc(msi->irq); > msi->msg.address_lo = 0; > @@ -464,6 +464,16 @@ void arch_teardown_msi_irqs(struct pci_dev *pdev) > airq_iv_free_bit(zpci_aisb_iv, zdev->aisb); > } > > +static struct msi_chip zpci_msi_chip = { > + .setup_irqs = zpci_setup_msi_irqs, > + .teardown_irqs = zpci_teardown_msi_irqs, > +}; > + > +struct msi_chip *arch_find_msi_chip(struct pci_dev *dev) > +{ > + return &zpci_msi_chip; > +} > + > static void zpci_map_resources(struct zpci_dev *zdev) > { > struct pci_dev *pdev = zdev->pdev; > -- > 1.7.1 > >