Re: [PATCH RESEND v2] staging: wfx: fix an undefined reference error when CONFIG_MMC=m

From: gregkh@xxxxxxxxxxxxxxxxxxx
Date: Mon Oct 14 2019 - 07:19:20 EST


On Mon, Oct 14, 2019 at 10:06:25AM +0000, Jerome Pouiller wrote:
> On Monday 14 October 2019 11:53:19 CEST Jérôme Pouiller wrote:
> [...]
> > Hello Zhong,
> >
> > Now, I see the problem. It happens when CONFIG_MMC=m and CONFIG_WFX=y
> > (if CONFIG_WFX=m, it works).
> >
> > I think the easiest way to solve problem is to disallow 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.
> >
> > I think that patch below do the right thing:
> >
> > -----8<----------8<----------------------8<-----------------
> >
> > diff --git i/drivers/staging/wfx/Kconfig w/drivers/staging/wfx/Kconfig
> > index 9b8a1c7a9e90..833f3b05b6b4 100644
> > --- i/drivers/staging/wfx/Kconfig
> > +++ w/drivers/staging/wfx/Kconfig
> > @@ -1,7 +1,7 @@
> > config WFX
> > tristate "Silicon Labs wireless chips WF200 and further"
> > depends on MAC80211
> > - depends on (SPI || MMC)
> > + depends on (MMC=m && m) || MMC=y || (SPI && MMC!=m)
> > help
> > This is a driver for Silicons Labs WFxxx series (WF200 and further)
> > chipsets. This chip can be found on SPI or SDIO buses.
> >
> >
> >
>
> An alternative (more understandable?):
>
> diff --git i/drivers/staging/wfx/Kconfig w/drivers/staging/wfx/Kconfig
> index 9b8a1c7a9e90..83ee4d0ca8c6 100644
> --- i/drivers/staging/wfx/Kconfig
> +++ w/drivers/staging/wfx/Kconfig
> @@ -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)

Yes, this is much easier to understand.

thanks,

greg k-h