Re: linux-next: build failure after merge of the pci tree
On 8/31/2019 2:19 PM, Lorenzo Pieralisi wrote: On Sat, Aug 31, 2019 at 09:51:05AM +0530, Vidya Sagar wrote: On 8/30/2019 6:00 PM, Bjorn Helgaas wrote: [+cc Krzysztof] On Thu, Aug 29, 2019 at 10:23 PM Stephen Rothwell wrote: Hi all, After merging the pci tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/pci/controller/dwc/pcie-tegra194.c:24:10: fatal error: linux/pci-aspm.h: No such file or directory 24 | #include | ^~ Caused by commit 81564976b1a9 ("PCI: tegra: Add Tegra194 PCIe support") I have reverted that commit for todat. Thanks, Stephen. I *could* fix this by removing that include in the merge, since the contents of linux/pci-aspm.h were moved into linux/pci.h by https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/commit/?id=7ce2e76a0420 But as far as I can tell, pcie-tegra194.c doesn't actually require anything from linux/pci-aspm.h, so I'd rather amend the tegra194 commit https://git.kernel.org/cgit/linux/kernel/git/lpieralisi/pci.git/commit/?id=81564976b1a9 so it doesn't include pci-aspm.h in the first place. Thanks Bjorn for the reply. Yes. This header file is not required for now and can be removed. Is there any action required from my side for this? I updated my pci/tegra branch so that Bjorn can pull it. Thanks a lot Lorenzo and Bjorn. - Vidya Sagar Lorenzo
Re: linux-next: build failure after merge of the pci tree
On Sat, Aug 31, 2019 at 3:49 AM Lorenzo Pieralisi wrote: > > On Sat, Aug 31, 2019 at 09:51:05AM +0530, Vidya Sagar wrote: > > On 8/30/2019 6:00 PM, Bjorn Helgaas wrote: > > > [+cc Krzysztof] > > > > > > On Thu, Aug 29, 2019 at 10:23 PM Stephen Rothwell > > > wrote: > > > > > > > > Hi all, > > > > > > > > After merging the pci tree, today's linux-next build (x86_64 > > > > allmodconfig) > > > > failed like this: > > > > > > > > drivers/pci/controller/dwc/pcie-tegra194.c:24:10: fatal error: > > > > linux/pci-aspm.h: No such file or directory > > > > 24 | #include > > > >| ^~ > > > > > > > > Caused by commit > > > > > > > >81564976b1a9 ("PCI: tegra: Add Tegra194 PCIe support") > > > > > > > > I have reverted that commit for todat. > > > > > > Thanks, Stephen. > > > > > > I *could* fix this by removing that include in the merge, since the > > > contents of linux/pci-aspm.h were moved into linux/pci.h by > > > https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/commit/?id=7ce2e76a0420 > > > > > > But as far as I can tell, pcie-tegra194.c doesn't actually require > > > anything from linux/pci-aspm.h, so I'd rather amend the tegra194 > > > commit > > > https://git.kernel.org/cgit/linux/kernel/git/lpieralisi/pci.git/commit/?id=81564976b1a9 > > > so it doesn't include pci-aspm.h in the first place. > > Thanks Bjorn for the reply. > > Yes. This header file is not required for now and can be removed. > > Is there any action required from my side for this? > > I updated my pci/tegra branch so that Bjorn can pull it. I pulled it and updated my "next" branch, thanks!
Re: linux-next: build failure after merge of the pci tree
On Sat, Aug 31, 2019 at 09:51:05AM +0530, Vidya Sagar wrote: > On 8/30/2019 6:00 PM, Bjorn Helgaas wrote: > > [+cc Krzysztof] > > > > On Thu, Aug 29, 2019 at 10:23 PM Stephen Rothwell > > wrote: > > > > > > Hi all, > > > > > > After merging the pci tree, today's linux-next build (x86_64 allmodconfig) > > > failed like this: > > > > > > drivers/pci/controller/dwc/pcie-tegra194.c:24:10: fatal error: > > > linux/pci-aspm.h: No such file or directory > > > 24 | #include > > >| ^~ > > > > > > Caused by commit > > > > > >81564976b1a9 ("PCI: tegra: Add Tegra194 PCIe support") > > > > > > I have reverted that commit for todat. > > > > Thanks, Stephen. > > > > I *could* fix this by removing that include in the merge, since the > > contents of linux/pci-aspm.h were moved into linux/pci.h by > > https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/commit/?id=7ce2e76a0420 > > > > But as far as I can tell, pcie-tegra194.c doesn't actually require > > anything from linux/pci-aspm.h, so I'd rather amend the tegra194 > > commit > > https://git.kernel.org/cgit/linux/kernel/git/lpieralisi/pci.git/commit/?id=81564976b1a9 > > so it doesn't include pci-aspm.h in the first place. > Thanks Bjorn for the reply. > Yes. This header file is not required for now and can be removed. > Is there any action required from my side for this? I updated my pci/tegra branch so that Bjorn can pull it. Lorenzo
Re: linux-next: build failure after merge of the pci tree
On 8/30/2019 6:00 PM, Bjorn Helgaas wrote: [+cc Krzysztof] On Thu, Aug 29, 2019 at 10:23 PM Stephen Rothwell wrote: Hi all, After merging the pci tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/pci/controller/dwc/pcie-tegra194.c:24:10: fatal error: linux/pci-aspm.h: No such file or directory 24 | #include | ^~ Caused by commit 81564976b1a9 ("PCI: tegra: Add Tegra194 PCIe support") I have reverted that commit for todat. Thanks, Stephen. I *could* fix this by removing that include in the merge, since the contents of linux/pci-aspm.h were moved into linux/pci.h by https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/commit/?id=7ce2e76a0420 But as far as I can tell, pcie-tegra194.c doesn't actually require anything from linux/pci-aspm.h, so I'd rather amend the tegra194 commit https://git.kernel.org/cgit/linux/kernel/git/lpieralisi/pci.git/commit/?id=81564976b1a9 so it doesn't include pci-aspm.h in the first place. Thanks Bjorn for the reply. Yes. This header file is not required for now and can be removed. Is there any action required from my side for this? Bjorn
Re: linux-next: build failure after merge of the pci tree
[+cc Krzysztof] On Thu, Aug 29, 2019 at 10:23 PM Stephen Rothwell wrote: > > Hi all, > > After merging the pci tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > drivers/pci/controller/dwc/pcie-tegra194.c:24:10: fatal error: > linux/pci-aspm.h: No such file or directory >24 | #include > | ^~ > > Caused by commit > > 81564976b1a9 ("PCI: tegra: Add Tegra194 PCIe support") > > I have reverted that commit for todat. Thanks, Stephen. I *could* fix this by removing that include in the merge, since the contents of linux/pci-aspm.h were moved into linux/pci.h by https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/commit/?id=7ce2e76a0420 But as far as I can tell, pcie-tegra194.c doesn't actually require anything from linux/pci-aspm.h, so I'd rather amend the tegra194 commit https://git.kernel.org/cgit/linux/kernel/git/lpieralisi/pci.git/commit/?id=81564976b1a9 so it doesn't include pci-aspm.h in the first place. Bjorn
Re: linux-next: build failure after merge of the pci tree
Hi Bjorn, On Wed, 26 Sep 2018 14:48:10 -0500 Bjorn Helgaas wrote: > > On Wed, Sep 26, 2018 at 9:56 AM Keith Busch wrote: > > > > On Wed, Sep 26, 2018 at 08:25:40AM -0600, Keith Busch wrote: > > > > > > Thanks for the notice. Does this mean you don't have CONFIG_SYSFS? I > > > must admit I missed that connection for building slot.c. Yes, it was an "allnoconfig" powerpc build. > > There's unfortunately second bug here when there are no slots, which > > would be the case without CONFIG_SYSFS: the slot list is empty, and the > > function just returned success, but it should have gone to the default > > secondary bus reset behavior in that case. I'll send a patch shortly. > > I folded in Keith's patch for this, so you should be able to drop your > workaround, Stephen. OK, thanks. -- Cheers, Stephen Rothwell pgpU8pr3uUxnD.pgp Description: OpenPGP digital signature
Re: linux-next: build failure after merge of the pci tree
On Wed, Sep 26, 2018 at 9:56 AM Keith Busch wrote: > > On Wed, Sep 26, 2018 at 08:25:40AM -0600, Keith Busch wrote: > > On Wed, Sep 26, 2018 at 03:00:51PM +1000, Stephen Rothwell wrote: > > > Hi Bjorn, > > > > > > After merging the pci tree, today's linux-next build (powerpc allnoconfig) > > > failed like this: > > > > > > ld: drivers/pci/pci.o: in function `pci_bus_error_reset': > > > pci.c:(.text+0x5fba): undefined reference to `pci_slot_mutex' > > > ld: pci.c:(.text+0x5fc2): undefined reference to `pci_slot_mutex' > > > > > > Caused by commit > > > > > > 131b0ca2c7b2 ("PCI/ERR: Use slot reset if available") > > > > > > I have applied the following hack for today (there is probably a better > > > way): > > > > Thanks for the notice. Does this mean you don't have CONFIG_SYSFS? I > > must admit I missed that connection for building slot.c. > > > > > > > From: Stephen Rothwell > > > Date: Wed, 26 Sep 2018 14:55:37 +1000 > > > Subject: [PATCH] pci: move pci_slot_mutex so it is available where needed > > > > > > Fixes: 131b0ca2c7b2 ("PCI/ERR: Use slot reset if available") > > > Signed-off-by: Stephen Rothwell > > > --- > > > drivers/pci/pci.c | 2 ++ > > > drivers/pci/slot.c | 1 - > > > 2 files changed, 2 insertions(+), 1 deletion(-) > > > > > > diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c > > > index 8c1e99a637d8..1fa67db6b21e 100644 > > > --- a/drivers/pci/pci.c > > > +++ b/drivers/pci/pci.c > > > @@ -5190,6 +5190,8 @@ static int pci_bus_reset(struct pci_bus *bus, int > > > probe) > > > return ret; > > > } > > > > > > +DEFINE_MUTEX(pci_slot_mutex); > > > + > > > /** > > > * pci_bus_error_reset - reset the bridge's subordinate bus > > > * @bridge: The parent device that connects to the bus to reset > > > diff --git a/drivers/pci/slot.c b/drivers/pci/slot.c > > > index 3da03fcc6fbf..c46d5e1ff536 100644 > > > --- a/drivers/pci/slot.c > > > +++ b/drivers/pci/slot.c > > > @@ -14,7 +14,6 @@ > > > > > > struct kset *pci_slots_kset; > > > EXPORT_SYMBOL_GPL(pci_slots_kset); > > > -DEFINE_MUTEX(pci_slot_mutex); > > > > > > static ssize_t pci_slot_attr_show(struct kobject *kobj, > > > struct attribute *attr, char *buf) > > > -- > > > 2.18.0 > > There's unfortunately second bug here when there are no slots, which > would be the case without CONFIG_SYSFS: the slot list is empty, and the > function just returned success, but it should have gone to the default > secondary bus reset behavior in that case. I'll send a patch shortly. I folded in Keith's patch for this, so you should be able to drop your workaround, Stephen.
Re: linux-next: build failure after merge of the pci tree
On Wed, Sep 26, 2018 at 08:25:40AM -0600, Keith Busch wrote: > On Wed, Sep 26, 2018 at 03:00:51PM +1000, Stephen Rothwell wrote: > > Hi Bjorn, > > > > After merging the pci tree, today's linux-next build (powerpc allnoconfig) > > failed like this: > > > > ld: drivers/pci/pci.o: in function `pci_bus_error_reset': > > pci.c:(.text+0x5fba): undefined reference to `pci_slot_mutex' > > ld: pci.c:(.text+0x5fc2): undefined reference to `pci_slot_mutex' > > > > Caused by commit > > > > 131b0ca2c7b2 ("PCI/ERR: Use slot reset if available") > > > > I have applied the following hack for today (there is probably a better > > way): > > Thanks for the notice. Does this mean you don't have CONFIG_SYSFS? I > must admit I missed that connection for building slot.c. > > > > From: Stephen Rothwell > > Date: Wed, 26 Sep 2018 14:55:37 +1000 > > Subject: [PATCH] pci: move pci_slot_mutex so it is available where needed > > > > Fixes: 131b0ca2c7b2 ("PCI/ERR: Use slot reset if available") > > Signed-off-by: Stephen Rothwell > > --- > > drivers/pci/pci.c | 2 ++ > > drivers/pci/slot.c | 1 - > > 2 files changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c > > index 8c1e99a637d8..1fa67db6b21e 100644 > > --- a/drivers/pci/pci.c > > +++ b/drivers/pci/pci.c > > @@ -5190,6 +5190,8 @@ static int pci_bus_reset(struct pci_bus *bus, int > > probe) > > return ret; > > } > > > > +DEFINE_MUTEX(pci_slot_mutex); > > + > > /** > > * pci_bus_error_reset - reset the bridge's subordinate bus > > * @bridge: The parent device that connects to the bus to reset > > diff --git a/drivers/pci/slot.c b/drivers/pci/slot.c > > index 3da03fcc6fbf..c46d5e1ff536 100644 > > --- a/drivers/pci/slot.c > > +++ b/drivers/pci/slot.c > > @@ -14,7 +14,6 @@ > > > > struct kset *pci_slots_kset; > > EXPORT_SYMBOL_GPL(pci_slots_kset); > > -DEFINE_MUTEX(pci_slot_mutex); > > > > static ssize_t pci_slot_attr_show(struct kobject *kobj, > > struct attribute *attr, char *buf) > > -- > > 2.18.0 There's unfortunately second bug here when there are no slots, which would be the case without CONFIG_SYSFS: the slot list is empty, and the function just returned success, but it should have gone to the default secondary bus reset behavior in that case. I'll send a patch shortly.
Re: linux-next: build failure after merge of the pci tree
On Wed, Sep 26, 2018 at 03:00:51PM +1000, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (powerpc allnoconfig) > failed like this: > > ld: drivers/pci/pci.o: in function `pci_bus_error_reset': > pci.c:(.text+0x5fba): undefined reference to `pci_slot_mutex' > ld: pci.c:(.text+0x5fc2): undefined reference to `pci_slot_mutex' > > Caused by commit > > 131b0ca2c7b2 ("PCI/ERR: Use slot reset if available") > > I have applied the following hack for today (there is probably a better > way): Thanks for the notice. Does this mean you don't have CONFIG_SYSFS? I must admit I missed that connection for building slot.c. > From: Stephen Rothwell > Date: Wed, 26 Sep 2018 14:55:37 +1000 > Subject: [PATCH] pci: move pci_slot_mutex so it is available where needed > > Fixes: 131b0ca2c7b2 ("PCI/ERR: Use slot reset if available") > Signed-off-by: Stephen Rothwell > --- > drivers/pci/pci.c | 2 ++ > drivers/pci/slot.c | 1 - > 2 files changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c > index 8c1e99a637d8..1fa67db6b21e 100644 > --- a/drivers/pci/pci.c > +++ b/drivers/pci/pci.c > @@ -5190,6 +5190,8 @@ static int pci_bus_reset(struct pci_bus *bus, int probe) > return ret; > } > > +DEFINE_MUTEX(pci_slot_mutex); > + > /** > * pci_bus_error_reset - reset the bridge's subordinate bus > * @bridge: The parent device that connects to the bus to reset > diff --git a/drivers/pci/slot.c b/drivers/pci/slot.c > index 3da03fcc6fbf..c46d5e1ff536 100644 > --- a/drivers/pci/slot.c > +++ b/drivers/pci/slot.c > @@ -14,7 +14,6 @@ > > struct kset *pci_slots_kset; > EXPORT_SYMBOL_GPL(pci_slots_kset); > -DEFINE_MUTEX(pci_slot_mutex); > > static ssize_t pci_slot_attr_show(struct kobject *kobj, > struct attribute *attr, char *buf) > -- > 2.18.0
Re: linux-next: build failure after merge of the pci tree
On Mon, Mar 26, 2018 at 2:53 PM, Bjorn Helgaas wrote: > On Mon, Mar 26, 2018 at 12:31:43PM +1100, Stephen Rothwell wrote: >> Hi Bjorn, >> >> After merging the pci tree, today's linux-next build (x86_64 allmodconfig) >> failed like this: >> >> In file included from /home/sfr/next/next/drivers/pci/host/pcie-iproc.c:16:0: >> /home/sfr/next/next/include/linux/irqchip/arm-gic-v3.h:560:10: fatal error: >> asm/arch_gicv3.h: No such file or directory >> #include >> ^~ >> >> Caused by commit >> >> af3c73473d10 ("PCI: Improve host drivers compile test coverage") >> >> I used the pci tree from next-20180323 for today. > > Thanks, I updated my tree to drop af3c73473d10 ("PCI: Improve host > drivers compile test coverage") for now. > > I know Lorenzo is out this week, so he may not be able to do an > update, but if you post a new version, Rob, I'll see if I can pull it > in. The simple fix is to just drop this hunk. Alternatively, we can add a "depends on ARM_GIC_V3" and keep the compile coverage for arm64. @@ -128,7 +128,7 @@ config PCIE_IPROC_PLATFORM config PCIE_IPROC_BCMA tristate "Broadcom iProc PCIe BCMA bus driver" - depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST) + depends on (ARM && ARCH_BCM_IPROC) || COMPILE_TEST select PCIE_IPROC select BCMA default ARCH_BCM_5301X
Re: linux-next: build failure after merge of the pci tree
On Mon, Mar 26, 2018 at 12:31:43PM +1100, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > In file included from /home/sfr/next/next/drivers/pci/host/pcie-iproc.c:16:0: > > /home/sfr/next/next/include/linux/irqchip/arm-gic-v3.h:560:10: fatal error: > asm/arch_gicv3.h: No such file or directory > #include > ^~ > > Caused by commit > > af3c73473d10 ("PCI: Improve host drivers compile test coverage") > > I used the pci tree from next-20180323 for today. Thanks, I updated my tree to drop af3c73473d10 ("PCI: Improve host drivers compile test coverage") for now. I know Lorenzo is out this week, so he may not be able to do an update, but if you post a new version, Rob, I'll see if I can pull it in. Bjorn
Re: linux-next: build failure after merge of the pci tree
Hi Bjorn, On Thu, 1 Feb 2018 13:00:33 -0600 Bjorn Helgaas wrote: > > I applied this resolution to the merge of lorenzo/pci/dwc. Excellent, thanks. -- Cheers, Stephen Rothwell
Re: linux-next: build failure after merge of the pci tree
[+cc Kishon, linux-pci] On Thu, Feb 01, 2018 at 09:56:09AM +0100, Niklas Cassel wrote: > On Thu, Feb 01, 2018 at 10:51:14AM +1100, Stephen Rothwell wrote: > > Hi Bjorn, > > > > After merging the pci tree, today's linux-next build (arm > > multi_v7_defconfig) failed like this: > > > > drivers/pci/dwc/pcie-designware-ep.c: In function > > 'dw_pcie_ep_raise_msi_irq': > > drivers/pci/dwc/pcie-designware-ep.c:293:8: error: too few arguments to > > function 'dw_pcie_ep_map_addr' > > ret = dw_pcie_ep_map_addr(epc, ep->msi_mem_phys, msg_addr, > > ^~~ > > drivers/pci/dwc/pcie-designware-ep.c:177:12: note: declared here > > static int dw_pcie_ep_map_addr(struct pci_epc *epc, u8 func_no, > > ^~~ > > drivers/pci/dwc/pcie-designware-ep.c:300:2: error: too few arguments to > > function 'dw_pcie_ep_unmap_addr' > > dw_pcie_ep_unmap_addr(epc, ep->msi_mem_phys); > > ^ > > drivers/pci/dwc/pcie-designware-ep.c:161:13: note: declared here > > static void dw_pcie_ep_unmap_addr(struct pci_epc *epc, u8 func_no, > > ^ > > > > Caused by commit > > > > 4494738de0d9 ("PCI: endpoint: Add the function number as argument to EPC > > ops") > > > > interacting with commit > > > > 6f6d7873711c ("PCI: designware-ep: Add generic function for raising MSI > > irq") > > > > This should have been fixed up in commit > > > > 26b259ab4fe8 ("Merge remote-tracking branch 'lorenzo/pci/dwc' into next") > > > > I have used the pci tree from next-20180131 for today. > > Hello, > > A suggested merge resolution included as an attachment. I applied this resolution to the merge of lorenzo/pci/dwc. > diff --git a/drivers/pci/dwc/pci-dra7xx.c b/drivers/pci/dwc/pci-dra7xx.c > index 39e4a9744863..ed8558d638e5 100644 > --- a/drivers/pci/dwc/pci-dra7xx.c > +++ b/drivers/pci/dwc/pci-dra7xx.c > @@ -368,7 +368,7 @@ static void dra7xx_pcie_raise_msi_irq(struct dra7xx_pcie > *dra7xx, > dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_MSI_XMT, reg); > } > > -static int dra7xx_pcie_raise_irq(struct dw_pcie_ep *ep, > +static int dra7xx_pcie_raise_irq(struct dw_pcie_ep *ep, u8 func_no, >enum pci_epc_irq_type type, u8 interrupt_num) > { > struct dw_pcie *pci = to_dw_pcie_from_ep(ep); > diff --git a/drivers/pci/dwc/pcie-artpec6.c b/drivers/pci/dwc/pcie-artpec6.c > index 34ae163603ee..93b3df9ed1b5 100644 > --- a/drivers/pci/dwc/pcie-artpec6.c > +++ b/drivers/pci/dwc/pcie-artpec6.c > @@ -445,7 +445,7 @@ static void artpec6_pcie_ep_init(struct dw_pcie_ep *ep) > dw_pcie_ep_reset_bar(pci, bar); > } > > -static int artpec6_pcie_raise_irq(struct dw_pcie_ep *ep, > +static int artpec6_pcie_raise_irq(struct dw_pcie_ep *ep, u8 func_no, > enum pci_epc_irq_type type, u8 interrupt_num) > { > struct dw_pcie *pci = to_dw_pcie_from_ep(ep); > @@ -455,7 +455,7 @@ static int artpec6_pcie_raise_irq(struct dw_pcie_ep *ep, > dev_err(pci->dev, "EP cannot trigger legacy IRQs\n"); > return -EINVAL; > case PCI_EPC_IRQ_MSI: > - return dw_pcie_ep_raise_msi_irq(ep, interrupt_num); > + return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); > default: > dev_err(pci->dev, "UNKNOWN IRQ type\n"); > } > diff --git a/drivers/pci/dwc/pcie-designware-ep.c > b/drivers/pci/dwc/pcie-designware-ep.c > index c0395e1f470a..3a6feeff5f5b 100644 > --- a/drivers/pci/dwc/pcie-designware-ep.c > +++ b/drivers/pci/dwc/pcie-designware-ep.c > @@ -229,7 +229,7 @@ static int dw_pcie_ep_raise_irq(struct pci_epc *epc, u8 > func_no, > if (!ep->ops->raise_irq) > return -EINVAL; > > - return ep->ops->raise_irq(ep, type, interrupt_num); > + return ep->ops->raise_irq(ep, func_no, type, interrupt_num); > } > > static void dw_pcie_ep_stop(struct pci_epc *epc) > @@ -267,7 +267,7 @@ static const struct pci_epc_ops epc_ops = { > .stop = dw_pcie_ep_stop, > }; > > -int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, > +int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, u8 func_no, >u8 interrupt_num) > { > struct dw_pcie *pci = to_dw_pcie_from_ep(ep); > @@ -290,14 +290,14 @@ int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, > msg_data = dw_pcie_readw_dbi(pci, MSI_MESSAGE_DATA_32); > } > msg_addr = ((u64) msg_addr_upper) << 32 | msg_addr_lower; > - ret = dw_pcie_ep_map_addr(epc, ep->msi_mem_phys, msg_addr, > + ret = dw_pcie_ep_map_addr(epc, func_no, ep->msi_mem_phys, msg_addr, > epc->mem->page_size); > if (ret) > return ret; > > writel(msg_data | (interrupt_num - 1), ep->msi_mem); > > - dw_pcie_ep_unmap_addr(epc, ep->msi_mem_phys); > + dw_pcie_ep_unmap_addr(epc, func_no, ep->msi_mem_phys); > > return 0; > } > diff -
Re: linux-next: build failure after merge of the pci tree
On Thu, Feb 01, 2018 at 04:52:01PM +0530, Kishon Vijay Abraham I wrote: > Hi Niklas, > > On Thursday 01 February 2018 04:46 PM, Niklas Cassel wrote: > > On Thu, Feb 01, 2018 at 11:10:54AM +, Lorenzo Pieralisi wrote: > >> On Thu, Feb 01, 2018 at 09:56:09AM +0100, Niklas Cassel wrote: > >>> On Thu, Feb 01, 2018 at 10:51:14AM +1100, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (arm > multi_v7_defconfig) failed like this: > > drivers/pci/dwc/pcie-designware-ep.c: In function > 'dw_pcie_ep_raise_msi_irq': > drivers/pci/dwc/pcie-designware-ep.c:293:8: error: too few arguments to > function 'dw_pcie_ep_map_addr' > ret = dw_pcie_ep_map_addr(epc, ep->msi_mem_phys, msg_addr, > ^~~ > drivers/pci/dwc/pcie-designware-ep.c:177:12: note: declared here > static int dw_pcie_ep_map_addr(struct pci_epc *epc, u8 func_no, > ^~~ > drivers/pci/dwc/pcie-designware-ep.c:300:2: error: too few arguments to > function 'dw_pcie_ep_unmap_addr' > dw_pcie_ep_unmap_addr(epc, ep->msi_mem_phys); > ^ > drivers/pci/dwc/pcie-designware-ep.c:161:13: note: declared here > static void dw_pcie_ep_unmap_addr(struct pci_epc *epc, u8 func_no, > ^ > > Caused by commit > > 4494738de0d9 ("PCI: endpoint: Add the function number as argument to > EPC ops") > > interacting with commit > > 6f6d7873711c ("PCI: designware-ep: Add generic function for raising > MSI irq") > > This should have been fixed up in commit > > 26b259ab4fe8 ("Merge remote-tracking branch 'lorenzo/pci/dwc' into > next") > > I have used the pci tree from next-20180131 for today. > >>> > >>> Hello, > >>> > >>> A suggested merge resolution included as an attachment. > >> > >> The resolution is OK to me - we have not spotted it since > >> PCI_ENDPOINT is being turned on in the config file in question only > >> in -next, it is not on by default in current mainline, apologies. > >> > >> Lorenzo > > > > Adding Kishon to CC, he should probably have a look. > > > > https://marc.info/?l=linux-kernel&m=151747537928327&w=2 > > > > If Kishon approves the suggested merge resolution, > > perhaps it can be squashed with Cyrille's patch. > > The patch looks good to me. Since dw_pcie_ep_map_addr()/dw_pcie_ep_unmap_addr() ignores func_no, I guess another merge resoluton would be: --- a/drivers/pci/dwc/pcie-designware-ep.c +++ b/drivers/pci/dwc/pcie-designware-ep.c @@ -290,14 +290,14 @@ int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, msg_data = dw_pcie_readw_dbi(pci, MSI_MESSAGE_DATA_32); } msg_addr = ((u64) msg_addr_upper) << 32 | msg_addr_lower; - ret = dw_pcie_ep_map_addr(epc, ep->msi_mem_phys, msg_addr, + ret = dw_pcie_ep_map_addr(epc, 0, ep->msi_mem_phys, msg_addr, epc->mem->page_size); if (ret) return ret; writel(msg_data | (interrupt_num - 1), ep->msi_mem); - dw_pcie_ep_unmap_addr(epc, ep->msi_mem_phys); + dw_pcie_ep_unmap_addr(epc, 0, ep->msi_mem_phys); return 0; } But in case pcie-designware-ep.c is ever going to support multi-function devices (will it? will it not?), perhaps the first merge resolution is prefered. Regards, Niklas
Re: linux-next: build failure after merge of the pci tree
Hi Niklas, On Thursday 01 February 2018 04:46 PM, Niklas Cassel wrote: > On Thu, Feb 01, 2018 at 11:10:54AM +, Lorenzo Pieralisi wrote: >> On Thu, Feb 01, 2018 at 09:56:09AM +0100, Niklas Cassel wrote: >>> On Thu, Feb 01, 2018 at 10:51:14AM +1100, Stephen Rothwell wrote: Hi Bjorn, After merging the pci tree, today's linux-next build (arm multi_v7_defconfig) failed like this: drivers/pci/dwc/pcie-designware-ep.c: In function 'dw_pcie_ep_raise_msi_irq': drivers/pci/dwc/pcie-designware-ep.c:293:8: error: too few arguments to function 'dw_pcie_ep_map_addr' ret = dw_pcie_ep_map_addr(epc, ep->msi_mem_phys, msg_addr, ^~~ drivers/pci/dwc/pcie-designware-ep.c:177:12: note: declared here static int dw_pcie_ep_map_addr(struct pci_epc *epc, u8 func_no, ^~~ drivers/pci/dwc/pcie-designware-ep.c:300:2: error: too few arguments to function 'dw_pcie_ep_unmap_addr' dw_pcie_ep_unmap_addr(epc, ep->msi_mem_phys); ^ drivers/pci/dwc/pcie-designware-ep.c:161:13: note: declared here static void dw_pcie_ep_unmap_addr(struct pci_epc *epc, u8 func_no, ^ Caused by commit 4494738de0d9 ("PCI: endpoint: Add the function number as argument to EPC ops") interacting with commit 6f6d7873711c ("PCI: designware-ep: Add generic function for raising MSI irq") This should have been fixed up in commit 26b259ab4fe8 ("Merge remote-tracking branch 'lorenzo/pci/dwc' into next") I have used the pci tree from next-20180131 for today. >>> >>> Hello, >>> >>> A suggested merge resolution included as an attachment. >> >> The resolution is OK to me - we have not spotted it since >> PCI_ENDPOINT is being turned on in the config file in question only >> in -next, it is not on by default in current mainline, apologies. >> >> Lorenzo > > Adding Kishon to CC, he should probably have a look. > > https://marc.info/?l=linux-kernel&m=151747537928327&w=2 > > If Kishon approves the suggested merge resolution, > perhaps it can be squashed with Cyrille's patch. The patch looks good to me. Thanks Kishon
Re: linux-next: build failure after merge of the pci tree
On Thu, Feb 01, 2018 at 11:10:54AM +, Lorenzo Pieralisi wrote: > On Thu, Feb 01, 2018 at 09:56:09AM +0100, Niklas Cassel wrote: > > On Thu, Feb 01, 2018 at 10:51:14AM +1100, Stephen Rothwell wrote: > > > Hi Bjorn, > > > > > > After merging the pci tree, today's linux-next build (arm > > > multi_v7_defconfig) failed like this: > > > > > > drivers/pci/dwc/pcie-designware-ep.c: In function > > > 'dw_pcie_ep_raise_msi_irq': > > > drivers/pci/dwc/pcie-designware-ep.c:293:8: error: too few arguments to > > > function 'dw_pcie_ep_map_addr' > > > ret = dw_pcie_ep_map_addr(epc, ep->msi_mem_phys, msg_addr, > > > ^~~ > > > drivers/pci/dwc/pcie-designware-ep.c:177:12: note: declared here > > > static int dw_pcie_ep_map_addr(struct pci_epc *epc, u8 func_no, > > > ^~~ > > > drivers/pci/dwc/pcie-designware-ep.c:300:2: error: too few arguments to > > > function 'dw_pcie_ep_unmap_addr' > > > dw_pcie_ep_unmap_addr(epc, ep->msi_mem_phys); > > > ^ > > > drivers/pci/dwc/pcie-designware-ep.c:161:13: note: declared here > > > static void dw_pcie_ep_unmap_addr(struct pci_epc *epc, u8 func_no, > > > ^ > > > > > > Caused by commit > > > > > > 4494738de0d9 ("PCI: endpoint: Add the function number as argument to > > > EPC ops") > > > > > > interacting with commit > > > > > > 6f6d7873711c ("PCI: designware-ep: Add generic function for raising MSI > > > irq") > > > > > > This should have been fixed up in commit > > > > > > 26b259ab4fe8 ("Merge remote-tracking branch 'lorenzo/pci/dwc' into > > > next") > > > > > > I have used the pci tree from next-20180131 for today. > > > > Hello, > > > > A suggested merge resolution included as an attachment. > > The resolution is OK to me - we have not spotted it since > PCI_ENDPOINT is being turned on in the config file in question only > in -next, it is not on by default in current mainline, apologies. > > Lorenzo Adding Kishon to CC, he should probably have a look. https://marc.info/?l=linux-kernel&m=151747537928327&w=2 If Kishon approves the suggested merge resolution, perhaps it can be squashed with Cyrille's patch. Regards, Niklas
Re: linux-next: build failure after merge of the pci tree
On Thu, Feb 01, 2018 at 09:56:09AM +0100, Niklas Cassel wrote: > On Thu, Feb 01, 2018 at 10:51:14AM +1100, Stephen Rothwell wrote: > > Hi Bjorn, > > > > After merging the pci tree, today's linux-next build (arm > > multi_v7_defconfig) failed like this: > > > > drivers/pci/dwc/pcie-designware-ep.c: In function > > 'dw_pcie_ep_raise_msi_irq': > > drivers/pci/dwc/pcie-designware-ep.c:293:8: error: too few arguments to > > function 'dw_pcie_ep_map_addr' > > ret = dw_pcie_ep_map_addr(epc, ep->msi_mem_phys, msg_addr, > > ^~~ > > drivers/pci/dwc/pcie-designware-ep.c:177:12: note: declared here > > static int dw_pcie_ep_map_addr(struct pci_epc *epc, u8 func_no, > > ^~~ > > drivers/pci/dwc/pcie-designware-ep.c:300:2: error: too few arguments to > > function 'dw_pcie_ep_unmap_addr' > > dw_pcie_ep_unmap_addr(epc, ep->msi_mem_phys); > > ^ > > drivers/pci/dwc/pcie-designware-ep.c:161:13: note: declared here > > static void dw_pcie_ep_unmap_addr(struct pci_epc *epc, u8 func_no, > > ^ > > > > Caused by commit > > > > 4494738de0d9 ("PCI: endpoint: Add the function number as argument to EPC > > ops") > > > > interacting with commit > > > > 6f6d7873711c ("PCI: designware-ep: Add generic function for raising MSI > > irq") > > > > This should have been fixed up in commit > > > > 26b259ab4fe8 ("Merge remote-tracking branch 'lorenzo/pci/dwc' into next") > > > > I have used the pci tree from next-20180131 for today. > > Hello, > > A suggested merge resolution included as an attachment. The resolution is OK to me - we have not spotted it since PCI_ENDPOINT is being turned on in the config file in question only in -next, it is not on by default in current mainline, apologies. Lorenzo
Re: linux-next: build failure after merge of the pci tree
On Thu, Feb 01, 2018 at 10:51:14AM +1100, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (arm > multi_v7_defconfig) failed like this: > > drivers/pci/dwc/pcie-designware-ep.c: In function 'dw_pcie_ep_raise_msi_irq': > drivers/pci/dwc/pcie-designware-ep.c:293:8: error: too few arguments to > function 'dw_pcie_ep_map_addr' > ret = dw_pcie_ep_map_addr(epc, ep->msi_mem_phys, msg_addr, > ^~~ > drivers/pci/dwc/pcie-designware-ep.c:177:12: note: declared here > static int dw_pcie_ep_map_addr(struct pci_epc *epc, u8 func_no, > ^~~ > drivers/pci/dwc/pcie-designware-ep.c:300:2: error: too few arguments to > function 'dw_pcie_ep_unmap_addr' > dw_pcie_ep_unmap_addr(epc, ep->msi_mem_phys); > ^ > drivers/pci/dwc/pcie-designware-ep.c:161:13: note: declared here > static void dw_pcie_ep_unmap_addr(struct pci_epc *epc, u8 func_no, > ^ > > Caused by commit > > 4494738de0d9 ("PCI: endpoint: Add the function number as argument to EPC > ops") > > interacting with commit > > 6f6d7873711c ("PCI: designware-ep: Add generic function for raising MSI > irq") > > This should have been fixed up in commit > > 26b259ab4fe8 ("Merge remote-tracking branch 'lorenzo/pci/dwc' into next") > > I have used the pci tree from next-20180131 for today. Hello, A suggested merge resolution included as an attachment. Regards, Niklas diff --git a/drivers/pci/dwc/pci-dra7xx.c b/drivers/pci/dwc/pci-dra7xx.c index 39e4a9744863..ed8558d638e5 100644 --- a/drivers/pci/dwc/pci-dra7xx.c +++ b/drivers/pci/dwc/pci-dra7xx.c @@ -368,7 +368,7 @@ static void dra7xx_pcie_raise_msi_irq(struct dra7xx_pcie *dra7xx, dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_MSI_XMT, reg); } -static int dra7xx_pcie_raise_irq(struct dw_pcie_ep *ep, +static int dra7xx_pcie_raise_irq(struct dw_pcie_ep *ep, u8 func_no, enum pci_epc_irq_type type, u8 interrupt_num) { struct dw_pcie *pci = to_dw_pcie_from_ep(ep); diff --git a/drivers/pci/dwc/pcie-artpec6.c b/drivers/pci/dwc/pcie-artpec6.c index 34ae163603ee..93b3df9ed1b5 100644 --- a/drivers/pci/dwc/pcie-artpec6.c +++ b/drivers/pci/dwc/pcie-artpec6.c @@ -445,7 +445,7 @@ static void artpec6_pcie_ep_init(struct dw_pcie_ep *ep) dw_pcie_ep_reset_bar(pci, bar); } -static int artpec6_pcie_raise_irq(struct dw_pcie_ep *ep, +static int artpec6_pcie_raise_irq(struct dw_pcie_ep *ep, u8 func_no, enum pci_epc_irq_type type, u8 interrupt_num) { struct dw_pcie *pci = to_dw_pcie_from_ep(ep); @@ -455,7 +455,7 @@ static int artpec6_pcie_raise_irq(struct dw_pcie_ep *ep, dev_err(pci->dev, "EP cannot trigger legacy IRQs\n"); return -EINVAL; case PCI_EPC_IRQ_MSI: - return dw_pcie_ep_raise_msi_irq(ep, interrupt_num); + return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); default: dev_err(pci->dev, "UNKNOWN IRQ type\n"); } diff --git a/drivers/pci/dwc/pcie-designware-ep.c b/drivers/pci/dwc/pcie-designware-ep.c index c0395e1f470a..3a6feeff5f5b 100644 --- a/drivers/pci/dwc/pcie-designware-ep.c +++ b/drivers/pci/dwc/pcie-designware-ep.c @@ -229,7 +229,7 @@ static int dw_pcie_ep_raise_irq(struct pci_epc *epc, u8 func_no, if (!ep->ops->raise_irq) return -EINVAL; - return ep->ops->raise_irq(ep, type, interrupt_num); + return ep->ops->raise_irq(ep, func_no, type, interrupt_num); } static void dw_pcie_ep_stop(struct pci_epc *epc) @@ -267,7 +267,7 @@ static const struct pci_epc_ops epc_ops = { .stop = dw_pcie_ep_stop, }; -int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, +int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, u8 func_no, u8 interrupt_num) { struct dw_pcie *pci = to_dw_pcie_from_ep(ep); @@ -290,14 +290,14 @@ int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, msg_data = dw_pcie_readw_dbi(pci, MSI_MESSAGE_DATA_32); } msg_addr = ((u64) msg_addr_upper) << 32 | msg_addr_lower; - ret = dw_pcie_ep_map_addr(epc, ep->msi_mem_phys, msg_addr, + ret = dw_pcie_ep_map_addr(epc, func_no, ep->msi_mem_phys, msg_addr, epc->mem->page_size); if (ret) return ret; writel(msg_data | (interrupt_num - 1), ep->msi_mem); - dw_pcie_ep_unmap_addr(epc, ep->msi_mem_phys); + dw_pcie_ep_unmap_addr(epc, func_no, ep->msi_mem_phys); return 0; } diff --git a/drivers/pci/dwc/pcie-designware.h b/drivers/pci/dwc/pcie-designware.h index 7e52119f0e96..11b13864a406 100644 --- a/drivers/pci/dwc/pcie-designware.h +++ b/drivers/pci/dwc/pcie-designware.h @@ -186,8 +186,8 @@ enum dw_pcie_as_type { struct dw_pcie_ep_ops { void (*ep_init)(struct dw_pcie_ep *ep); - int (*raise_irq)(struct dw_pcie_ep *ep, enum pci_epc_irq_type type, - u8 interrupt_num); + int (*raise_irq)(struct dw_pcie_ep *ep, u8 func_no, + enum pci_epc_irq_type type, u8 interrupt_num); }; struct dw_pcie_ep { @@ -342,7 +342,8 @@ static inline int dw_pcie_host_init(struct pcie_port *pp) void dw_pcie_ep_linkup(struct dw_pcie_ep *e
Re: linux-next: build failure after merge of the pci tree
Rob Herring writes: > On Wed, Jan 24, 2018 at 11:49 PM, Stephen Rothwell > wrote: >> Hi Bjorn, >> >> After merging the pci tree, today's linux-next build (powerpc >> ppc64_defconfig) failed like this: >> >> arch/powerpc/kernel/pci-common.c: In function 'pcibios_setup >> _device': >> arch/powerpc/kernel/pci-common.c:406:15: error: 'virq' may be used >> uninitialized in this function [-Werror=maybe-uninitialized] >> pci_dev->irq = virq; >> ~^~ >> arch/powerpc/kernel/pci-common.c:365:15: note: 'virq' was declared here >> unsigned int virq; >>^~~~ > > I guess I need to update my PPC compiler from 4.8.0. It doesn't warn > or error on this. Neither did 0-day. https://toolchains.free-electrons.com/ Has 5.4.0 and 7.2.0 for both big and little endian. cheers
Re: linux-next: build failure after merge of the pci tree
On Thu, Jan 25, 2018 at 07:55:58AM -0600, Rob Herring wrote: > On Wed, Jan 24, 2018 at 11:49 PM, Stephen Rothwell > wrote: > > Hi Bjorn, > > > > After merging the pci tree, today's linux-next build (powerpc > > ppc64_defconfig) failed like this: > > > > arch/powerpc/kernel/pci-common.c: In function 'pcibios_setup > > _device': > > arch/powerpc/kernel/pci-common.c:406:15: error: 'virq' may be used > > uninitialized in this function [-Werror=maybe-uninitialized] > > pci_dev->irq = virq; > > ~^~ > > arch/powerpc/kernel/pci-common.c:365:15: note: 'virq' was declared here > > unsigned int virq; > >^~~~ > > I guess I need to update my PPC compiler from 4.8.0. It doesn't warn > or error on this. Neither did 0-day. > > > > > Caused by commit > > > > c5042ac60fe5 ("powerpc/pci: Use of_irq_parse_and_map_pci() helper") > > > > I have applied the following patch for today: > > > > From: Stephen Rothwell > > Date: Thu, 25 Jan 2018 16:44:19 +1100 > > Subject: [PATCH] powerpc/pci: fix for "Use of_irq_parse_and_map_pci() > > helper" > > > > Fixes: c5042ac60fe5 ("powerpc/pci: Use of_irq_parse_and_map_pci() helper") > > Signed-off-by: Stephen Rothwell > > --- > > arch/powerpc/kernel/pci-common.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > Acked-by: Rob Herring > > > > > diff --git a/arch/powerpc/kernel/pci-common.c > > b/arch/powerpc/kernel/pci-common.c > > index 6be3f2c22a9b..ae2ede4de6be 100644 > > --- a/arch/powerpc/kernel/pci-common.c > > +++ b/arch/powerpc/kernel/pci-common.c > > @@ -362,7 +362,7 @@ struct pci_controller* > > pci_find_hose_for_OF_device(struct device_node* node) > > */ > > static int pci_read_irq_line(struct pci_dev *pci_dev) > > { > > - unsigned int virq; > > + unsigned int virq = 0; > > > > pr_debug("PCI: Try to map irq for %s...\n", pci_name(pci_dev)); > > I folded this fix into my branch, so it should be fixed tonight. Thanks!
Re: linux-next: build failure after merge of the pci tree
On Wed, Jan 24, 2018 at 11:49 PM, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (powerpc > ppc64_defconfig) failed like this: > > arch/powerpc/kernel/pci-common.c: In function 'pcibios_setup > _device': > arch/powerpc/kernel/pci-common.c:406:15: error: 'virq' may be used > uninitialized in this function [-Werror=maybe-uninitialized] > pci_dev->irq = virq; > ~^~ > arch/powerpc/kernel/pci-common.c:365:15: note: 'virq' was declared here > unsigned int virq; >^~~~ I guess I need to update my PPC compiler from 4.8.0. It doesn't warn or error on this. Neither did 0-day. > > Caused by commit > > c5042ac60fe5 ("powerpc/pci: Use of_irq_parse_and_map_pci() helper") > > I have applied the following patch for today: > > From: Stephen Rothwell > Date: Thu, 25 Jan 2018 16:44:19 +1100 > Subject: [PATCH] powerpc/pci: fix for "Use of_irq_parse_and_map_pci() helper" > > Fixes: c5042ac60fe5 ("powerpc/pci: Use of_irq_parse_and_map_pci() helper") > Signed-off-by: Stephen Rothwell > --- > arch/powerpc/kernel/pci-common.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Acked-by: Rob Herring > > diff --git a/arch/powerpc/kernel/pci-common.c > b/arch/powerpc/kernel/pci-common.c > index 6be3f2c22a9b..ae2ede4de6be 100644 > --- a/arch/powerpc/kernel/pci-common.c > +++ b/arch/powerpc/kernel/pci-common.c > @@ -362,7 +362,7 @@ struct pci_controller* pci_find_hose_for_OF_device(struct > device_node* node) > */ > static int pci_read_irq_line(struct pci_dev *pci_dev) > { > - unsigned int virq; > + unsigned int virq = 0; > > pr_debug("PCI: Try to map irq for %s...\n", pci_name(pci_dev)); > > -- > 2.15.1 > > -- > Cheers, > Stephen Rothwell
Re: linux-next: build failure after merge of the pci tree
On Tue, Apr 26, 2016 at 11:13:46AM +1000, Stephen Rothwell wrote: > diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c > index 5efadad4615b..3839fd2865a6 100644 > --- a/drivers/iommu/amd_iommu.c > +++ b/drivers/iommu/amd_iommu.c > @@ -263,8 +263,7 @@ static u16 get_alias(struct device *dev) >*/ > if (pci_alias == devid && > PCI_BUS_NUM(ivrs_alias) == pdev->bus->number) { > - pdev->dev_flags |= PCI_DEV_FLAGS_DMA_ALIAS_DEVFN; > - pdev->dma_alias_devfn = ivrs_alias & 0xff; > + pci_add_dma_alias(pdev, ivrs_alias & 0xff); > pr_info("AMD-Vi: Added PCI DMA alias %02x.%d for %s\n", > PCI_SLOT(ivrs_alias), PCI_FUNC(ivrs_alias), > dev_name(dev)); That is exactly the right fix, thanks Stephen. I'll work out how to fix this in the iommu tree. Joerg
Re: linux-next: build failure after merge of the pci tree
On Isn, 2015-11-02 at 12:12 -0600, Bjorn Helgaas wrote: > On Sun, Nov 1, 2015 at 6:00 PM, Ley Foon Tan wrote: > > On Isn, 2015-11-02 at 02:23 +1100, Stephen Rothwell wrote: > >> Hi Bjorn, > >> > >> After merging the pci tree, today's linux-next build (powerpc > >> allyesconfig) failed like this: > >> > >> In file included from include/linux/kvm_host.h:20:0, > >> from arch/powerpc/kernel/asm-offsets.c:54: > >> include/linux/msi.h:174:21: fatal error: asm/msi.h: No such file or > >> directory > >> > >> Caused by commit > >> > >> f19eafec930f ("PCI: altera: Add Altera PCIe MSI driver") > >> > >> I have disabled that driver for today: > >> > >> From: Stephen Rothwell > >> Date: Mon, 2 Nov 2015 02:12:54 +1100 > >> Subject: [PATCH] PCI: altera: disable MSI driver for now > >> > >> Signed-off-by: Stephen Rothwell > >> --- > >> drivers/pci/host/Kconfig | 1 + > >> 1 file changed, 1 insertion(+) > >> > >> diff --git a/drivers/pci/host/Kconfig b/drivers/pci/host/Kconfig > >> index 2af0571356e8..7a31ebbc4379 100644 > >> --- a/drivers/pci/host/Kconfig > >> +++ b/drivers/pci/host/Kconfig > >> @@ -158,6 +158,7 @@ config PCIE_ALTERA > >> config PCIE_ALTERA_MSI > >> bool "Altera PCIe MSI feature" > >> depends on PCI_MSI > >> + depends on BROKEN > >> select PCI_MSI_IRQ_DOMAIN > >> help > >> Say Y here if you want PCIe MSI support for the Altera FPGA. > >> -- > >> 2.6.1 > >> > > Hi Bjorn > > > > This driver depends on the asm/msi.h and not all architectures include > > the asm/msi.h. > > We can fix this by adding "depends on ARM || NIOS2" to Kconfig, same as > > altera pcie driver. What do you think? > > I don't think your driver depends on asm/msi.h because ARM doesn't > have asm/msi.h either. > > I think the best thing is to do this: > > config PCIE_ALTERA_MSI > bool "Altera PCIe MSI feature" > depends on PCIE_ALTERA && PCI_MSI > > That way we don't have to repeat the constraints from PCIE_ALTERA. > This is the same strategy used by PCI_XGENE & PCI_XGENE_MSI. > Okay. Thanks for the fix. Regards Ley Foon -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: build failure after merge of the pci tree
On Sun, Nov 1, 2015 at 6:00 PM, Ley Foon Tan wrote: > On Isn, 2015-11-02 at 02:23 +1100, Stephen Rothwell wrote: >> Hi Bjorn, >> >> After merging the pci tree, today's linux-next build (powerpc >> allyesconfig) failed like this: >> >> In file included from include/linux/kvm_host.h:20:0, >> from arch/powerpc/kernel/asm-offsets.c:54: >> include/linux/msi.h:174:21: fatal error: asm/msi.h: No such file or directory >> >> Caused by commit >> >> f19eafec930f ("PCI: altera: Add Altera PCIe MSI driver") >> >> I have disabled that driver for today: >> >> From: Stephen Rothwell >> Date: Mon, 2 Nov 2015 02:12:54 +1100 >> Subject: [PATCH] PCI: altera: disable MSI driver for now >> >> Signed-off-by: Stephen Rothwell >> --- >> drivers/pci/host/Kconfig | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/drivers/pci/host/Kconfig b/drivers/pci/host/Kconfig >> index 2af0571356e8..7a31ebbc4379 100644 >> --- a/drivers/pci/host/Kconfig >> +++ b/drivers/pci/host/Kconfig >> @@ -158,6 +158,7 @@ config PCIE_ALTERA >> config PCIE_ALTERA_MSI >> bool "Altera PCIe MSI feature" >> depends on PCI_MSI >> + depends on BROKEN >> select PCI_MSI_IRQ_DOMAIN >> help >> Say Y here if you want PCIe MSI support for the Altera FPGA. >> -- >> 2.6.1 >> > Hi Bjorn > > This driver depends on the asm/msi.h and not all architectures include > the asm/msi.h. > We can fix this by adding "depends on ARM || NIOS2" to Kconfig, same as > altera pcie driver. What do you think? I don't think your driver depends on asm/msi.h because ARM doesn't have asm/msi.h either. I think the best thing is to do this: config PCIE_ALTERA_MSI bool "Altera PCIe MSI feature" depends on PCIE_ALTERA && PCI_MSI That way we don't have to repeat the constraints from PCIE_ALTERA. This is the same strategy used by PCI_XGENE & PCI_XGENE_MSI. Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: build failure after merge of the pci tree
On Isn, 2015-11-02 at 02:23 +1100, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (powerpc > allyesconfig) failed like this: > > In file included from include/linux/kvm_host.h:20:0, > from arch/powerpc/kernel/asm-offsets.c:54: > include/linux/msi.h:174:21: fatal error: asm/msi.h: No such file or directory > > Caused by commit > > f19eafec930f ("PCI: altera: Add Altera PCIe MSI driver") > > I have disabled that driver for today: > > From: Stephen Rothwell > Date: Mon, 2 Nov 2015 02:12:54 +1100 > Subject: [PATCH] PCI: altera: disable MSI driver for now > > Signed-off-by: Stephen Rothwell > --- > drivers/pci/host/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/pci/host/Kconfig b/drivers/pci/host/Kconfig > index 2af0571356e8..7a31ebbc4379 100644 > --- a/drivers/pci/host/Kconfig > +++ b/drivers/pci/host/Kconfig > @@ -158,6 +158,7 @@ config PCIE_ALTERA > config PCIE_ALTERA_MSI > bool "Altera PCIe MSI feature" > depends on PCI_MSI > + depends on BROKEN > select PCI_MSI_IRQ_DOMAIN > help > Say Y here if you want PCIe MSI support for the Altera FPGA. > -- > 2.6.1 > Hi Bjorn This driver depends on the asm/msi.h and not all architectures include the asm/msi.h. We can fix this by adding "depends on ARM || NIOS2" to Kconfig, same as altera pcie driver. What do you think? Thanks. Regards Ley Foon -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: build failure after merge of the pci tree
On Isn, 2015-11-02 at 02:23 +1100, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (powerpc > allyesconfig) failed like this: > > In file included from include/linux/kvm_host.h:20:0, > from arch/powerpc/kernel/asm-offsets.c:54: > include/linux/msi.h:174:21: fatal error: asm/msi.h: No such file or directory > > Caused by commit > > f19eafec930f ("PCI: altera: Add Altera PCIe MSI driver") > > I have disabled that driver for today: > > From: Stephen Rothwell > Date: Mon, 2 Nov 2015 02:12:54 +1100 > Subject: [PATCH] PCI: altera: disable MSI driver for now > > Signed-off-by: Stephen Rothwell > --- > drivers/pci/host/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/pci/host/Kconfig b/drivers/pci/host/Kconfig > index 2af0571356e8..7a31ebbc4379 100644 > --- a/drivers/pci/host/Kconfig > +++ b/drivers/pci/host/Kconfig > @@ -158,6 +158,7 @@ config PCIE_ALTERA > config PCIE_ALTERA_MSI > bool "Altera PCIe MSI feature" > depends on PCI_MSI > + depends on BROKEN > select PCI_MSI_IRQ_DOMAIN > help > Say Y here if you want PCIe MSI support for the Altera FPGA. > -- > 2.6.1 > Hi Bjorn This driver depends on the asm/msi.h and not all architectures include the asm/msi.h. We can fix this by adding "depends on ARM || NIOS2" to Kconfig, same as altera pcie driver. What do you think? Thanks. Regards Ley Foon Confidentiality Notice. This message may contain information that is confidential or otherwise protected from disclosure. If you are not the intended recipient, you are hereby notified that any use, disclosure, dissemination, distribution, or copying of this message, or any attachments, is strictly prohibited. If you have received this message in error, please advise the sender by reply e-mail, and delete the message and any attachments. Thank you.
Re: linux-next: build failure after merge of the pci tree
On Tue, Jun 10, 2014 at 8:02 PM, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (powerpc > ppc64_defconfig) failed like this: > > > ERROR: ".pci_try_set_mwi" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! > ERROR: ".pci_clear_mwi" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! > ERROR: ".pci_try_set_mwi" [drivers/scsi/lpfc/lpfc.ko] undefined! > > Caused by commit 9259d755975f ("PCI: Move EXPORT_SYMBOL so it > immediately follows function/variable"). > arch/powerpc/include/asm/pci.h defines PCI_DISABLE_MWI and there are > two version of those functions depending on the setting of that symbol. > > I have used the pci tree from next-20140610 for today. Thanks. This is my fault, not Ryan's. I made more similar changes, but didn't notice the #ifdefs around the definitions. I fixed it and will update my "next" branch tomorrow, after Fengguang's buildbot confirms the fix. Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: build failure after merge of the pci tree
On Thu, May 22, 2014 at 12:49 AM, Sebastian Ott wrote: > Hello, > > On Thu, 22 May 2014, Stephen Rothwell wrote: >> Hi Bjorn, >> >> After merging the pci tree, today's linux-next build (arm >> multi_v7_defconfig) failed like this: >> >> drivers/pci/pci-sysfs.c: In function 'devspec_show': >> drivers/pci/pci-sysfs.c:426:22: error: dereferencing pointer to incomplete >> type >> drivers/pci/pci-sysfs.c:428:30: error: dereferencing pointer to incomplete >> type >> drivers/pci/pci-sysfs.c:429:1: warning: control reaches end of non-void >> function [-Wreturn-type] >> >> Caused by commit da647bb30834 ("PCI: Move Open Firmware devspec >> attribute to PCI common code"). Presumably a forgotten include. >> >> I have used the pci tree from next-20140521 for today. > > Oops, sry for that one - this should fix it: > > pci: fix compile failure on arm > > Fix this compile error introduced by "PCI: Move Open Firmware > devspec attribute to PCI common code": > > drivers/pci/pci-sysfs.c: In function 'devspec_show': > drivers/pci/pci-sysfs.c:426:22: error: dereferencing pointer to incomplete > type > drivers/pci/pci-sysfs.c:428:30: error: dereferencing pointer to incomplete > type > drivers/pci/pci-sysfs.c:429:1: warning: control reaches end of non-void > function [-Wreturn-type] > > Reported-by: Stephen Rothwell > Signed-off-by: Sebastian Ott I folded this in and updated my "next" branch, thanks! > --- > drivers/pci/pci-sysfs.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c > index 4e0acef..d6e61ae 100644 > --- a/drivers/pci/pci-sysfs.c > +++ b/drivers/pci/pci-sysfs.c > @@ -29,6 +29,7 @@ > #include > #include > #include > +#include > #include "pci.h" > > static int sysfs_initialized; /* = 0 */ > -- > 1.8.5.5 > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: build failure after merge of the pci tree
Hello, On Thu, 22 May 2014, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (arm > multi_v7_defconfig) failed like this: > > drivers/pci/pci-sysfs.c: In function 'devspec_show': > drivers/pci/pci-sysfs.c:426:22: error: dereferencing pointer to incomplete > type > drivers/pci/pci-sysfs.c:428:30: error: dereferencing pointer to incomplete > type > drivers/pci/pci-sysfs.c:429:1: warning: control reaches end of non-void > function [-Wreturn-type] > > Caused by commit da647bb30834 ("PCI: Move Open Firmware devspec > attribute to PCI common code"). Presumably a forgotten include. > > I have used the pci tree from next-20140521 for today. Oops, sry for that one - this should fix it: pci: fix compile failure on arm Fix this compile error introduced by "PCI: Move Open Firmware devspec attribute to PCI common code": drivers/pci/pci-sysfs.c: In function 'devspec_show': drivers/pci/pci-sysfs.c:426:22: error: dereferencing pointer to incomplete type drivers/pci/pci-sysfs.c:428:30: error: dereferencing pointer to incomplete type drivers/pci/pci-sysfs.c:429:1: warning: control reaches end of non-void function [-Wreturn-type] Reported-by: Stephen Rothwell Signed-off-by: Sebastian Ott --- drivers/pci/pci-sysfs.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c index 4e0acef..d6e61ae 100644 --- a/drivers/pci/pci-sysfs.c +++ b/drivers/pci/pci-sysfs.c @@ -29,6 +29,7 @@ #include #include #include +#include #include "pci.h" static int sysfs_initialized; /* = 0 */ -- 1.8.5.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: build failure after merge of the pci tree
On Tue, Nov 06, 2012 at 11:27:29AM +1100, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > ... > drivers/scsi/gdth.c: In function 'gdth_init_pci': > drivers/scsi/gdth.c::34: error: lvalue required as left operand of > assignment Here's what I think we should do about the GDT issue. I'll send this via the usual channels. commit c6156dd31228e608e0a820d2eed7403fd1fd620b Author: Bjorn Helgaas Date: Tue Nov 6 14:19:03 2012 -0700 [SCSI] gdth: Remove buggy ROM handling The ROM address handling in gdth_init_pci() is useless and possibly dangerous. This patch removes it. "pci_resource_start(pdev, 8)" is not well-defined. PCI resources 0-5 are standard PCI BARs and 6 is the expansion ROM. Resource 8 is either an SR-IOV BAR (if CONFIG_PCI_IOV=y, resources 7-12 are SR-IOV BARs) or a bridge window (resources 7-10). The GDT device is neither an SR-IOV device nor a bridge, so in either case resource 8 should be zero since struct pci_dev is allocated with kzalloc(). It is illegal for a driver to write an arbitrary address to the ROM BAR because it has no way of knowing whether the ROM will conflict with another device. I think the only effect of the code being removed was to: 1) Enable the ROM at 0xFEFF (possibly causing a conflict with another device) 2) Delay one millisecond 3) Write zero to the ROM BAR, disabling it I doubt the delay is needed, but I left it since it seems innocuous. Signed-off-by: Bjorn Helgaas diff --git a/drivers/scsi/gdth.c b/drivers/scsi/gdth.c index 5d72274..3efe4ef 100644 --- a/drivers/scsi/gdth.c +++ b/drivers/scsi/gdth.c @@ -1107,14 +1107,8 @@ static int __devinit gdth_init_pci(struct pci_dev *pdev, gdth_pci_str *pcistr, pci_read_config_word(pdev, PCI_COMMAND, &command); command |= 6; pci_write_config_word(pdev, PCI_COMMAND, command); - if (pci_resource_start(pdev, 8) == 1UL) - pci_resource_start(pdev, 8) = 0UL; -i = 0xFEFF0001UL; - pci_write_config_dword(pdev, PCI_ROM_ADDRESS, i); -gdth_delay(1); - pci_write_config_dword(pdev, PCI_ROM_ADDRESS, - pci_resource_start(pdev, 8)); - + gdth_delay(1); + dp6m_ptr = ha->brd; /* Ensure that it is safe to access the non HW portions of DPMEM. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: build failure after merge of the pci tree
Hi Greg, On Tue, 6 Nov 2012 02:55:42 +0100 Greg Kroah-Hartman wrote: > > It is gone in my tree, and it should be deleted in yours, do you not see > that? Unfortunately, your tree gets merged late in my set of trees ... so I'll just keep the disabling patch and the problem will go away eventually. Thanks. -- Cheers, Stephen Rothwells...@canb.auug.org.au pgpoBZLUam4IZ.pgp Description: PGP signature
Re: linux-next: build failure after merge of the pci tree
On Tue, Nov 06, 2012 at 11:27:29AM +1100, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > drivers/staging/telephony/ixj.c: In function 'ixj_probe_pci': > drivers/staging/telephony/ixj.c:7732:13: warning: assignment makes integer > from pointer without a cast [enabled by default] > drivers/staging/telephony/ixj.c:7732:38: error: expected ';' before > 'pci_resource_start' > > Exposed by commit 545974a28f78 ("PCI: Convert pci_resource_ macros to > static inlines"). The macro version of pci_resource_start() made this > RHS look like a function call and now it isn't. > > Maybe it is time this driver just went away. It is gone in my tree, and it should be deleted in yours, do you not see that? thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: build failure after merge of the pci tree
On Mon, Sep 10, 2012 at 7:29 PM, Stephen Rothwell wrote: > Hi Bjorn, > > After merging the pci tree, today's linux-next build (powerpc > ppc64_defconfig) failed like this: > > arch/powerpc/platforms/powernv/pci-ioda.c: In function > 'pnv_pci_window_alignment': > arch/powerpc/platforms/powernv/pci-ioda.c:1163:13: error: 'struct pci_dev' > has no member named 'pcie_type' > > Caused by commit ac161fbfdaa2 ("powerpc/powernv: I/O and memory alignment > for P2P bridges"). pcie_type was removed in commit b2ef39be5744 ("PCI: > Remove unused field pcie_type from struct pci_dev") (also in the pci > tree). > > I have used the pci tree from next-20120910 for today. Thanks. Gavin, Ben, I folded in the trivial fix and updated both my pci/gavin-window-alignment and next branches. Ben, I think you'll need to pull in pci/jiang-pcie-cap before pci/gavin-window-alignment to get both pieces. Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/