On Thu, Jun 17, 2021 at 03:45:57PM +0200, Greg Kroah-Hartman wrote: > On Thu, Jun 17, 2021 at 07:09:15PM +0530, Naresh Kamboju wrote: > > The arm64 allmodconfig build failed on Linux next 20210617 tag due to > > the commit, > > > > c950686b382d ("usb: host: xhci-plat: Create platform device for > > onboard hubs in probe()") > > > > build error: > > ------------ > > aarch64-linux-gnu-ld: drivers/usb/host/xhci-plat.o: in function > > `xhci_plat_remove': > > drivers/usb/host/xhci-plat.c:427: undefined reference to > > `onboard_hub_destroy_pdevs' > > drivers/usb/host/xhci-plat.c:427:(.text+0x82c): relocation truncated > > to fit: R_AARCH64_CALL26 against undefined symbol > > `onboard_hub_destroy_pdevs' > > aarch64-linux-gnu-ld: drivers/usb/host/xhci-plat.o: in function > > `xhci_plat_probe': > > drivers/usb/host/xhci-plat.c:379: undefined reference to > > `onboard_hub_create_pdevs' > > drivers/usb/host/xhci-plat.c:379:(.text+0x131c): relocation truncated > > to fit: R_AARCH64_CALL26 against undefined symbol > > `onboard_hub_create_pdevs' > > make[1]: *** [Makefile:1252: vmlinux] Error 1 > > make[1]: Target '__all' not remade because of errors. > > make: *** [Makefile:222: __sub-make] Error 2 > > make: Target '__all' not remade because of errors. > > Matthias, this is due to your patch, yet-another config option mis-match > somewhere. Can you please fix it up? I can repro this with: make -j 16 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- \ KCONFIG_ALLCONFIG=arch/arm64/configs/defconfig allmodconfig kernel modules This results in: CONFIG_USB_XHCI_PLATFORM=y CONFIG_USB_ONBOARD_HUB=m The following Kconfig dependency was supposed to prevent this scenario: config USB_XHCI_PLATFORM depends on USB_ONBOARD_HUB || !USB_ONBOARD_HUB But apparently this isn't the case. With the above allmodconfig command the following warning is emitted: WARNING: unmet direct dependencies detected for USB_XHCI_PLATFORM Depends on [m]: USB_SUPPORT [=y] && USB [=y] && USB_XHCI_HCD [=y] && (USB_ONBOARD_HUB [=m] || !USB_ONBOARD_HUB [=m]) I read through kconfig-language.rst multiple times, but it's still not clear to me how to specify this dependency properly. Masahiro/Greg, do you have any pointers?