Re: [PATCH] Input: applespi: Fix build error without CONFIG_PCI

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

 



  Hi Arnd,

On Thu, Jul 18, 2019 at 09:15:59AM +0200, Arnd Bergmann wrote:
> On Thu, Jul 18, 2019 at 4:07 AM YueHaibing <yuehaibing@xxxxxxxxxx> wrote:
> >
> > If CONFIG_KEYBOARD_APPLESPI is set to y, but
> > CONFIG_PCI is not set, building will fails:
> >
> > drivers/spi/spi-pxa2xx-pci.c: In function pxa2xx_spi_pci_probe:
> > drivers/spi/spi-pxa2xx-pci.c:208:8: error: implicit declaration of function pcim_enable_device;
> >  did you mean pci_enable_device? [-Werror=implicit-function-declaration]
> >   ret = pcim_enable_device(dev);
> >         ^~~~~~~~~~~~~~~~~~
> >         pci_enable_device
> > drivers/spi/spi-pxa2xx-pci.c:239:8: error: implicit declaration of function pci_alloc_irq_vectors;
> >  did you mean pci_alloc_consistent? [-Werror=implicit-function-declaration]
> >   ret = pci_alloc_irq_vectors(dev, 1, 1, PCI_IRQ_ALL_TYPES);
> >         ^~~~~~~~~~~~~~~~~~~~~
> >
> > Make CONFIG_KEYBOARD_APPLESPI depends on CONFIG_PCI
> > to fix this.
> >
> > Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
> > Fixes: b426ac045209 ("Input: add Apple SPI keyboard and trackpad driver")
> > Signed-off-by: YueHaibing <yuehaibing@xxxxxxxxxx>
> 
> I found the same build bug, plus another issue:
> 
>     arch/arm/Kconfig:1942:error: recursive dependency detected!
>     arch/arm/Kconfig:1942:  symbol XIP_KERNEL depends on KASAN
>     lib/Kconfig.kasan:15:   symbol KASAN depends on SYSFS
>     fs/sysfs/Kconfig:2:     symbol SYSFS is selected by CONFIGFS_FS
>     fs/configfs/Kconfig:2:  symbol CONFIGFS_FS is selected by USB_LIBCOMPOSITE
>     drivers/usb/gadget/Kconfig:145: symbol USB_LIBCOMPOSITE is
> selected by USB_ZERO
>     drivers/usb/gadget/legacy/Kconfig:17:   symbol USB_ZERO is part of
> choice <choice>
>     drivers/usb/gadget/Kconfig:486: choice <choice> contains symbol USB_G_WEBCAM
>     drivers/usb/gadget/legacy/Kconfig:479:  symbol USB_G_WEBCAM is
> part of choice VIDEO_V4L2
>     drivers/media/v4l2-core/Kconfig:7:      symbol VIDEO_V4L2 depends on I2C
>     drivers/i2c/Kconfig:8:  symbol I2C is selected by FB_DDC
>     drivers/video/fbdev/Kconfig:63: symbol FB_DDC depends on FB
>     drivers/video/fbdev/Kconfig:12: symbol FB is selected by DRM_KMS_FB_HELPER
>     drivers/gpu/drm/Kconfig:75:     symbol DRM_KMS_FB_HELPER depends
> on DRM_KMS_HELPER
>     drivers/gpu/drm/Kconfig:69:     symbol DRM_KMS_HELPER is selected
> by DRM_ARMADA
>     drivers/gpu/drm/armada/Kconfig:2:       symbol DRM_ARMADA depends
> on HAVE_CLK
>     arch/Kconfig:314:       symbol HAVE_CLK is selected by CLKDEV_LOOKUP
>     drivers/clk/Kconfig:3:  symbol CLKDEV_LOOKUP is selected by COMMON_CLK
>     drivers/clk/Kconfig:10: symbol COMMON_CLK is selected by MFD_INTEL_LPSS
>     drivers/mfd/Kconfig:600:        symbol MFD_INTEL_LPSS is selected
> by MFD_INTEL_LPSS_PCI
>     drivers/mfd/Kconfig:614:        symbol MFD_INTEL_LPSS_PCI is
> implied by KEYBOARD_APPLESPI
>     drivers/input/keyboard/Kconfig:74:      symbol KEYBOARD_APPLESPI
> depends on EFI
>     arch/arm/Kconfig:2031:  symbol EFI depends on XIP_KERNEL
> 
> Your patch correctly solves the spi_pxa2xx issue, but I'd prefer to instead
> drop the three 'imply' statements altogether, they seem to do more harm
> than good.
> 
> (the circular dependency I saw might only happen when applying the
> arm32 KASAN patches, but I expect to see them merged for linux-5.4)

Isn't there more generally a problem here that this is selecting
MFD_INTEL_LPSS_PCI even though that depends on X86? I.e. are both ARM
and X86 selected at the same time? (sorry if I'm being naïve, but I
assumed only one arch can be selected at a time)


  Cheers,

  Ronald




[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux