Bug 210051

Summary: MIPS: BMC47xx: build error due to unmet dependency for SSB_B43_PCI_BRIDGE by BCM47XX_SSB
Product: Platform Specific/Hardware Reporter: Necip Fazil Yildiran (fazilyildiran)
Component: MIPSAssignee: ralf
Status: NEW ---    
Severity: normal CC: fazilyildiran, hauke, paul, zajec5
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 5.10-rc1 Subsystem:
Regression: No Bisected commit-id:
Attachments: reproduce.tar.gz

Description Necip Fazil Yildiran 2020-11-04 16:35:00 UTC
Created attachment 293471 [details]
reproduce.tar.gz

Attachment (reproduce.tar.gz) content:
 - sample.config: Config file to reproduce the bug.
 - build_out.txt: Output of Kbuild including the error messages.

When BCM47XX_SSB is enabled and SSB_PCIHOST is disabled, it results in the
following Kbuild warning:

WARNING: unmet direct dependencies detected for SSB_B43_PCI_BRIDGE
  Depends on [n]: SSB [=y] && SSB_PCIHOST [=n]
  Selected by [y]:
  - BCM47XX_SSB [=y] && BCM47XX [=y] && PCI [=y]

Building the kernel fails due to this unmet direct dependency issue as follows:

[...]
drivers/ssb/b43_pci_bridge.c: In function 'b43_pci_ssb_bridge_init':
drivers/ssb/b43_pci_bridge.c:54:9: error: implicit declaration of function 'ssb_pcihost_register'; did you mean 'ssb_pcihost_unregister'? [-Werror=implicit-function-declaration]
   54 |  return ssb_pcihost_register(&b43_pci_bridge_driver);
      |         ^~~~~~~~~~~~~~~~~~~~
      |         ssb_pcihost_unregister
[...]

Steps to reproduce the bug for v5.10-rc1:
  1. wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
  2. chmod +x ~/bin/make.cross
  3. tar -xvf reproduce.tar.gz # sample.config and build_out.txt
  4. cp sample.config path/to/linux-source-v5.10-rc1/.config
  5. cd path/to/linux-source-v5.10-rc1/
  6. ~/bin/make.cross ARCH=mips clean
  7. ~/bin/make.cross ARCH=mips olddefconfig # unmet direct dependency warning
  8. ~/bin/make.cross ARCH=mips # should have a build error

The output for the steps [6-8] can be found in build_out.txt.

Thanks,
Necip