Re: [PATCH] pci: frv architecture needs generic setup-bus infrastructure

Bjorn Helgaas
2012-04-23T20:38:24Z

On Wed, Apr 18, 2012 at 3:24 PM, Paul Gortmaker
<paul.gortmaker@windriver.com> wrote:
> Otherwise we get this link failure for frv's defconfig:
>
>   LD      .tmp_vmlinux1
>  drivers/built-in.o: In function `pci_assign_resource':
>  (.text+0xbf0c): undefined reference to `pci_cardbus_resource_alignment'
>  drivers/built-in.o: In function `pci_setup':
>  pci.c:(.init.text+0x174): undefined reference to `pci_realloc_get_opt'
>  pci.c:(.init.text+0x1a0): undefined reference to `pci_realloc_get_opt'
>  make[1]: *** [.tmp_vmlinux1] Error 1
>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: David Howells <dhowells@redhat.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
>
> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
> index 083a49f..165274c 100644
> --- a/drivers/pci/Makefile
> +++ b/drivers/pci/Makefile
> @@ -42,6 +42,7 @@ obj-$(CONFIG_UNICORE32) += setup-bus.o setup-irq.o
>  obj-$(CONFIG_PARISC) += setup-bus.o
>  obj-$(CONFIG_SUPERH) += setup-bus.o setup-irq.o
>  obj-$(CONFIG_PPC) += setup-bus.o
> +obj-$(CONFIG_FRV) += setup-bus.o
>  obj-$(CONFIG_MIPS) += setup-bus.o setup-irq.o
>  obj-$(CONFIG_X86_VISWS) += setup-irq.o
>  obj-$(CONFIG_MN10300) += setup-bus.o

Wow, I didn't even realize that we had this sort of arch-specific
selection of generic PCI parts. drivers/pci/setup-irq.c is on my list
for reworking because it looks like it doesn't work correctly for
hotplug. setup-bus.c is much more complicated, but (a) it looks like
most architectures include it anyway, and (b) it seems like it'd be
cleaner to have a CONFIG_PCI_REALLOC or something to avoid having
arch-specific stuff in the Makefile.

Anyway, that's all for the future. Does this fix need to go in 3.4,
or should it go in -next? What commit introduced the problem?

Bjorn