Subject: Re: linux-next: Tree for Aug 30 (brcmfmac)

From: Hauke Mehrtens <[email-masked]>
Date: Sat, 31 Aug 2013 20:40:33 +0200

On 08/31/2013 08:21 PM, Arend van Spriel wrote:
> On 08/31/13 19:37, Geert Uytterhoeven wrote:
>> On Fri, Aug 30, 2013 at 11:12 PM, Randy Dunlap<[email-masked]> 
>> wrote:
>>> This bool kconfig symbol:
>>>
>>> config BRCMFMAC_SDIO
>>>          bool "SDIO bus interface support for FullMAC driver"
>>>          depends on MMC
>>>
>>> allows BRCMFMAC_SDIO to be y even when MMC=m.
>>>
>>> Is there a reasonable solution to this?
> 
> Actually, BRCMFMAC should be built in same form as the MMC and/or USB,
> but only when BRCMFMAC_SDIO or BRCMFMAC_USB are selected.
> 
> So valid combinations are:
> MMC=m, USB=m, BRCMFMAC_SDIO=y, BRCMFMAC_USB=y => BRCMFMAC=m
> MMC=m, USB=y, BRCMFMAC_SDIO=y, BRCMFMAC_USB=y => BRCMFMAC=m
> MMC=y, USB=m, BRCMFMAC_SDIO=y, BRCMFMAC_USB=y => BRCMFMAC=m
> MMC=m, USB=y, BRCMFMAC_SDIO=y, BRCMFMAC_USB=n => BRCMFMAC=m
> MMC=m, USB=y, BRCMFMAC_SDIO=n, BRCMFMAC_USB=y => BRCMFMAC=m|y
> MMC=y, USB=m, BRCMFMAC_SDIO=y, BRCMFMAC_USB=n => BRCMFMAC=m|y
> MMC=y, USB=m, BRCMFMAC_SDIO=n, BRCMFMAC_USB=y => BRCMFMAC=m
> MMC=y, USB=y, BRCMFMAC_SDIO=y, BRCMFMAC_USB=y => BRCMFMAC=m|y
> MMC=y, USB=y, BRCMFMAC_SDIO=y, BRCMFMAC_USB=n => BRCMFMAC=m|y
> MMC=y, USB=y, BRCMFMAC_SDIO=n, BRCMFMAC_USB=y => BRCMFMAC=m|y
> 
> Not sure how to express the above.

This should be expressed with this Kconfig:

config BRCMFMAC_USB
	bool "USB bus interface support for FullMAC driver"
	depends on (USB = y || USB = BRCMFMAC)
	depends on BRCMFMAC

config BRCMFMAC_SDIO
	bool "SDIO bus interface support for FullMAC driver"
	depends on (MMC = y || MMC = BRCMFMAC)
	depends on BRCMFMAC
	select FW_LOADER

I haven't tested it, but we had a similar problem in b43 and fixed it
like this.

Hauke