staging: wfx: fix CONFIG_MMC=m with CONFIG_WFX=y
authorJérôme Pouiller <jerome.pouiller@silabs.com>
Thu, 17 Oct 2019 09:40:06 +0000 (09:40 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 26 Oct 2019 18:42:32 +0000 (20:42 +0200)
If CONFIG_MMC=m and CONFIG_WFX=y, compilation complains with undefined
references:

    drivers/staging/wfx/main.o: In function `wfx_core_init': /linux/drivers/staging/wfx/main.c:488: undefined reference to `sdio_register_driver'
    drivers/staging/wfx/main.o: In function `wfx_core_exit': /linux/drivers/staging/wfx/main.c:496: undefined reference to `sdio_unregister_driver'
    drivers/staging/wfx/main.o:(.debug_addr+0x1a8): undefined reference to `sdio_register_driver'
    drivers/staging/wfx/main.o:(.debug_addr+0x6f0): undefined reference to `sdio_unregister_driver'

Indeed, symbols sdio_* are not present in kernel image.

This patch disallows CONFIG_WFX=y if CONFIG_MMC=m.

This solution impacts users who want to use SPI bus with configuration:
CONFIG_WFX=y + CONFIG_SPI=y + CONFIG_MMC=m. However, I think this is a
twisted case. So, I think it won't be missed.

Reported-by: zhong jiang <zhongjiang@huawei.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Link: https://lore.kernel.org/r/20191017093954.657-3-Jerome.Pouiller@silabs.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/wfx/Kconfig

index 9b8a1c7..83ee4d0 100644 (file)
@@ -1,6 +1,7 @@
 config WFX
        tristate "Silicon Labs wireless chips WF200 and further"
        depends on MAC80211
+       depends on MMC || !MMC # do not allow WFX=y if MMC=m
        depends on (SPI || MMC)
        help
          This is a driver for Silicons Labs WFxxx series (WF200 and further)