Re: [pci:pci/host-xilinx 1/7] include/linux/pci-epf.h:53:25: error: field 'interrupt_pin' has incomplete type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Aug 16, 2017 at 06:11:45AM +0800, kbuild test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git pci/host-xilinx
> head:   95b008920fd38e828a37c8a7131b449d33ba03b9
> commit: 13ff772beae556a664c029d5d75eaf7f3c104258 [1/7] PCI: Move enum pci_interrupt_pin to linux/pci.h
> config: blackfin-allyesconfig (attached as .config)
> compiler: bfin-uclinux-gcc (GCC) 6.2.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         git checkout 13ff772beae556a664c029d5d75eaf7f3c104258
>         # save the attached .config to linux build tree
>         make.cross ARCH=blackfin 
> 
> All error/warnings (new ones prefixed by >>):
> 
>    In file included from include/linux/pci-epc.h:15:0,
>                     from drivers/pci/endpoint/pci-ep-cfs.c:23:
> >> include/linux/pci-epf.h:53:25: error: field 'interrupt_pin' has incomplete type
>      enum pci_interrupt_pin interrupt_pin;

I think the problem with this (and the similar m68k report) is that
enum pci_interrupt_pin was originally defined unconditionally in
include/linux/pci-epf.h, but after "PCI: Move enum pci_interrupt_pin
to linux/pci.h", it was defined in include/linux/pci.h under #ifdef
CONFIG_PCI.  Neither this blackfin config nor the m68k config defines
CONFIG_PCI.

CONFIG_PCI enables the host side of the PCI core, e.g., host bridge
infrastructure, device enumeration, etc.  It is possible to build
endpoint support without that, and pci_interrupt_pin is still useful
there.

I reworked the patch to define enum pci_interrupt_pin outside the
#ifdef CONFIG_PCI.

Bjorn



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux