From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bjorn Helgaas Subject: Re: [PATCH v3 09/27] arm/PCI: Clean unused pcibios_add_bus() and pcibios_remove_bus() Date: Wed, 22 Oct 2014 23:38:58 -0600 Message-ID: <20141023053858.GD11770@google.com> References: <1413342435-7876-1-git-send-email-wangyijing@huawei.com> <1413342435-7876-10-git-send-email-wangyijing@huawei.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <1413342435-7876-10-git-send-email-wangyijing-hv44wF8Li93QT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: iommu-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org Errors-To: iommu-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org To: Yijing Wang Cc: linux-mips-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org, linux-ia64-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Thierry Reding , sparclinux-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-s390-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Russell King , Michael Ellerman , x86-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, Sebastian Ott , Benjamin Herrenschmidt , xen-devel-GuqFBffKawtpuQazS67q72D2FQJk+8+b@public.gmane.org, arnab.basu-KZfg59tc24xl57MIdRCFDg@public.gmane.org, Liviu Dudau , Arnd Bergmann , Chris Metcalf , Thomas Gleixner , linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, Thomas Petazzoni , Xinwei Hu , Tony Luck , Sergei Shtylyov , linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Ralf Baechle , iommu@l List-Id: linux-arch.vger.kernel.org On Wed, Oct 15, 2014 at 11:06:57AM +0800, Yijing Wang wrote: > MSI chip will be saved in pci_sys_data, now we can > clean up pcibios_add_bus() and pcibios_remove_bus() > in arm, and use pci_find_msi_chip() to get msi chip > in core MSI code. > > Signed-off-by: Yijing Wang > --- > arch/arm/include/asm/mach/pci.h | 4 ---- > arch/arm/kernel/bios32.c | 16 ---------------- > drivers/pci/msi.c | 11 +++-------- > 3 files changed, 3 insertions(+), 28 deletions(-) > > diff --git a/arch/arm/include/asm/mach/pci.h b/arch/arm/include/asm/mach/pci.h > index 59b0d87..230b2c9 100644 > --- a/arch/arm/include/asm/mach/pci.h > +++ b/arch/arm/include/asm/mach/pci.h > @@ -39,8 +39,6 @@ struct hw_pci { > resource_size_t start, > resource_size_t size, > resource_size_t align); > - void (*add_bus)(struct pci_bus *bus); > - void (*remove_bus)(struct pci_bus *bus); > }; > > /* > @@ -71,8 +69,6 @@ struct pci_sys_data { > resource_size_t start, > resource_size_t size, > resource_size_t align); > - void (*add_bus)(struct pci_bus *bus); > - void (*remove_bus)(struct pci_bus *bus); > void *private_data; /* platform controller private data */ > }; > > diff --git a/arch/arm/kernel/bios32.c b/arch/arm/kernel/bios32.c > index a19038d..b1b872e 100644 > --- a/arch/arm/kernel/bios32.c > +++ b/arch/arm/kernel/bios32.c > @@ -360,20 +360,6 @@ void pcibios_fixup_bus(struct pci_bus *bus) > } > EXPORT_SYMBOL(pcibios_fixup_bus); > > -void pcibios_add_bus(struct pci_bus *bus) > -{ > - struct pci_sys_data *sys = bus->sysdata; > - if (sys->add_bus) > - sys->add_bus(bus); > -} > - > -void pcibios_remove_bus(struct pci_bus *bus) > -{ > - struct pci_sys_data *sys = bus->sysdata; > - if (sys->remove_bus) > - sys->remove_bus(bus); > -} > - > /* > * Swizzle the device pin each time we cross a bridge. If a platform does > * not provide a swizzle function, we perform the standard PCI swizzling. > @@ -478,8 +464,6 @@ static void pcibios_init_hw(struct device *parent, struct hw_pci *hw, > sys->swizzle = hw->swizzle; > sys->map_irq = hw->map_irq; > sys->align_resource = hw->align_resource; > - sys->add_bus = hw->add_bus; > - sys->remove_bus = hw->remove_bus; > INIT_LIST_HEAD(&sys->resources); > > if (hw->private_data) What do the core changes below have to do with the ARM changes above? They should be a separate patch unless they can't be separated. > diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c > index f11108c..56e54ad 100644 > --- a/drivers/pci/msi.c > +++ b/drivers/pci/msi.c > @@ -32,12 +32,10 @@ int pci_msi_ignore_mask; > > int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc) > { > - struct msi_chip *chip = dev->bus->msi; > + struct msi_chip *chip; > int err; > > - if (!chip) > - chip = pci_msi_chip(dev->bus); > - > + chip = pci_msi_chip(dev->bus); > if (!chip || !chip->setup_irq) > return -EINVAL; > > @@ -51,10 +49,7 @@ int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc) > void __weak arch_teardown_msi_irq(unsigned int irq) > { > struct msi_desc *entry = irq_get_msi_desc(irq); > - struct msi_chip *chip = entry->dev->bus->msi; > - > - if (!chip) > - chip = pci_msi_chip(entry->dev->bus); > + struct msi_chip *chip = pci_msi_chip(entry->dev->bus); > > if (!chip || !chip->teardown_irq) > return; > -- > 1.7.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-pci" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ie0-f174.google.com ([209.85.223.174]:39806 "EHLO mail-ie0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751798AbaJWFjD (ORCPT ); Thu, 23 Oct 2014 01:39:03 -0400 Received: by mail-ie0-f174.google.com with SMTP id x19so317553ier.5 for ; Wed, 22 Oct 2014 22:39:01 -0700 (PDT) Date: Wed, 22 Oct 2014 23:38:58 -0600 From: Bjorn Helgaas Subject: Re: [PATCH v3 09/27] arm/PCI: Clean unused pcibios_add_bus() and pcibios_remove_bus() Message-ID: <20141023053858.GD11770@google.com> References: <1413342435-7876-1-git-send-email-wangyijing@huawei.com> <1413342435-7876-10-git-send-email-wangyijing@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1413342435-7876-10-git-send-email-wangyijing@huawei.com> Sender: linux-arch-owner@vger.kernel.org List-ID: To: Yijing Wang Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Xinwei Hu , Wuyun , linux-arm-kernel@lists.infradead.org, Russell King , linux-arch@vger.kernel.org, arnab.basu@freescale.com, Bharat.Bhushan@freescale.com, x86@kernel.org, Arnd Bergmann , Thomas Gleixner , Konrad Rzeszutek Wilk , xen-devel@lists.xenproject.org, Joerg Roedel , iommu@lists.linux-foundation.org, linux-mips@linux-mips.org, Benjamin Herrenschmidt , linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, Sebastian Ott , Tony Luck , linux-ia64@vger.kernel.org, "David S. Miller" , sparclinux@vger.kernel.org, Chris Metcalf , Ralf Baechle , Lucas Stach , David Vrabel , Sergei Shtylyov , Michael Ellerman , Thierry Reding , Thomas Petazzoni , Liviu Dudau Message-ID: <20141023053858.p-Yn1OyDe-UyY_O61IzgVfGvUKUr8LEBMJRbWUgo8Ls@z> On Wed, Oct 15, 2014 at 11:06:57AM +0800, Yijing Wang wrote: > MSI chip will be saved in pci_sys_data, now we can > clean up pcibios_add_bus() and pcibios_remove_bus() > in arm, and use pci_find_msi_chip() to get msi chip > in core MSI code. > > Signed-off-by: Yijing Wang > --- > arch/arm/include/asm/mach/pci.h | 4 ---- > arch/arm/kernel/bios32.c | 16 ---------------- > drivers/pci/msi.c | 11 +++-------- > 3 files changed, 3 insertions(+), 28 deletions(-) > > diff --git a/arch/arm/include/asm/mach/pci.h b/arch/arm/include/asm/mach/pci.h > index 59b0d87..230b2c9 100644 > --- a/arch/arm/include/asm/mach/pci.h > +++ b/arch/arm/include/asm/mach/pci.h > @@ -39,8 +39,6 @@ struct hw_pci { > resource_size_t start, > resource_size_t size, > resource_size_t align); > - void (*add_bus)(struct pci_bus *bus); > - void (*remove_bus)(struct pci_bus *bus); > }; > > /* > @@ -71,8 +69,6 @@ struct pci_sys_data { > resource_size_t start, > resource_size_t size, > resource_size_t align); > - void (*add_bus)(struct pci_bus *bus); > - void (*remove_bus)(struct pci_bus *bus); > void *private_data; /* platform controller private data */ > }; > > diff --git a/arch/arm/kernel/bios32.c b/arch/arm/kernel/bios32.c > index a19038d..b1b872e 100644 > --- a/arch/arm/kernel/bios32.c > +++ b/arch/arm/kernel/bios32.c > @@ -360,20 +360,6 @@ void pcibios_fixup_bus(struct pci_bus *bus) > } > EXPORT_SYMBOL(pcibios_fixup_bus); > > -void pcibios_add_bus(struct pci_bus *bus) > -{ > - struct pci_sys_data *sys = bus->sysdata; > - if (sys->add_bus) > - sys->add_bus(bus); > -} > - > -void pcibios_remove_bus(struct pci_bus *bus) > -{ > - struct pci_sys_data *sys = bus->sysdata; > - if (sys->remove_bus) > - sys->remove_bus(bus); > -} > - > /* > * Swizzle the device pin each time we cross a bridge. If a platform does > * not provide a swizzle function, we perform the standard PCI swizzling. > @@ -478,8 +464,6 @@ static void pcibios_init_hw(struct device *parent, struct hw_pci *hw, > sys->swizzle = hw->swizzle; > sys->map_irq = hw->map_irq; > sys->align_resource = hw->align_resource; > - sys->add_bus = hw->add_bus; > - sys->remove_bus = hw->remove_bus; > INIT_LIST_HEAD(&sys->resources); > > if (hw->private_data) What do the core changes below have to do with the ARM changes above? They should be a separate patch unless they can't be separated. > diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c > index f11108c..56e54ad 100644 > --- a/drivers/pci/msi.c > +++ b/drivers/pci/msi.c > @@ -32,12 +32,10 @@ int pci_msi_ignore_mask; > > int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc) > { > - struct msi_chip *chip = dev->bus->msi; > + struct msi_chip *chip; > int err; > > - if (!chip) > - chip = pci_msi_chip(dev->bus); > - > + chip = pci_msi_chip(dev->bus); > if (!chip || !chip->setup_irq) > return -EINVAL; > > @@ -51,10 +49,7 @@ int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc) > void __weak arch_teardown_msi_irq(unsigned int irq) > { > struct msi_desc *entry = irq_get_msi_desc(irq); > - struct msi_chip *chip = entry->dev->bus->msi; > - > - if (!chip) > - chip = pci_msi_chip(entry->dev->bus); > + struct msi_chip *chip = pci_msi_chip(entry->dev->bus); > > if (!chip || !chip->teardown_irq) > return; > -- > 1.7.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-pci" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html