On 2019/10/11 17:02, Greg KH wrote: > On Fri, Oct 11, 2019 at 08:40:08AM +0000, Jerome Pouiller wrote: >> On Friday 11 October 2019 06:26:16 CEST Greg KH wrote: >>> CAUTION: This email originated from outside of the organization. Do not >> click links or open attachments unless you recognize the sender and know the >> content is safe. >>> >>> On Fri, Oct 11, 2019 at 11:02:19AM +0800, zhong jiang wrote: >>>> I hit the following error when compile the kernel. >>>> >>>> drivers/staging/wfx/main.o: In function `wfx_core_init': >>>> /home/z00352263/linux-next/linux-next/drivers/staging/wfx/main.c:488: >> undefined reference to `sdio_register_driver' >>>> drivers/staging/wfx/main.o: In function `wfx_core_exit': >>>> /home/z00352263/linux-next/linux-next/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' >>>> Signed-off-by: zhong jiang <zhongji...@huawei.com> >>>> --- >>>> drivers/staging/wfx/Kconfig | 3 ++- >>>> drivers/staging/wfx/Makefile | 5 +++-- >>>> 2 files changed, 5 insertions(+), 3 deletions(-) >>>> >>>> diff --git a/drivers/staging/wfx/Kconfig b/drivers/staging/wfx/Kconfig >>>> index 9b8a1c7..4d045513 100644 >>>> --- a/drivers/staging/wfx/Kconfig >>>> +++ b/drivers/staging/wfx/Kconfig >>>> @@ -1,7 +1,8 @@ >>>> config WFX >>>> tristate "Silicon Labs wireless chips WF200 and further" >>>> depends on MAC80211 >>>> - depends on (SPI || MMC) >>>> + depends on SPI >>>> + select MMC >>> How about: >>> depends on (SPI && MMC) >> I dislike to force user to enable both buses while only one of them is >> sufficient. I would prefer to keep current dependencies and to add >> #ifdef around problematic functions. > Yes, that's the better thing to do here overall. > > zhong, can you work on that? How about the following patch ?
diff --git a/drivers/staging/wfx/Makefile b/drivers/staging/wfx/Makefile index 0d9c1ed..77d68b7 100644 --- a/drivers/staging/wfx/Makefile +++ b/drivers/staging/wfx/Makefile @@ -19,6 +19,6 @@ wfx-y := \ sta.o \ debug.o wfx-$(CONFIG_SPI) += bus_spi.o -wfx-$(subst m,y,$(CONFIG_MMC)) += bus_sdio.o +wfx-$(CONFIG_MMC) += bus_sdio.o obj-$(CONFIG_WFX) += wfx.o diff --git a/drivers/staging/wfx/main.c b/drivers/staging/wfx/main.c index d2508bc..26720a4 100644 --- a/drivers/staging/wfx/main.c +++ b/drivers/staging/wfx/main.c @@ -484,16 +484,19 @@ static int __init wfx_core_init(void) if (IS_ENABLED(CONFIG_SPI)) ret = spi_register_driver(&wfx_spi_driver); - if (IS_ENABLED(CONFIG_MMC) && !ret) +#ifdef CONFIG_MMC + if (!ret) ret = sdio_register_driver(&wfx_sdio_driver); +#endif return ret; } module_init(wfx_core_init); static void __exit wfx_core_exit(void) { - if (IS_ENABLED(CONFIG_MMC)) - sdio_unregister_driver(&wfx_sdio_driver); +#ifdef CONFIG_MMC + sdio_unregister_driver(&wfx_sdio_driver); +#endif if (IS_ENABLED(CONFIG_SPI)) spi_unregister_driver(&wfx_spi_driver); } -- Thanks, zhong jiang > thanks, > > greg k-h > > . >