Message ID | 20201104155207.128076-4-Jerome.Pouiller@silabs.com |
---|---|
State | New |
Headers | show |
Series | [v3,01/24] mmc: sdio: add SDIO IDs for Silabs WF200 chip | expand |
Jérôme Pouiller <jerome.pouiller@silabs.com> writes: > On Tuesday 22 December 2020 16:02:38 CET Kalle Valo wrote: >> Jerome Pouiller <Jerome.Pouiller@silabs.com> writes: >> >> > From: Jérôme Pouiller <jerome.pouiller@silabs.com> >> > >> > Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com> >> >> [...] >> >> > +wfx-$(CONFIG_SPI) += bus_spi.o >> > +wfx-$(subst m,y,$(CONFIG_MMC)) += bus_sdio.o >> >> Why this subst? And why only for MMC? > > CONFIG_SPI is a boolean (y or empty). The both values make senses. > > CONFIG_MMC is a tristate (y, m or empty). The substitution above > ensure that bus_sdio.o will included in wfx.ko if CONFIG_MMC is 'm' > ("wfx-$(CONFIG_MMC) += bus_sdio.o" wouldn't make the job). > > You may want to know what it happens if CONFIG_MMC=m while CONFIG_WFX=y. > This line in Kconfig prevents to compile wfx statically if MMC is a > module: > depends on MMC || !MMC # do not allow WFX=y if MMC=m Ok, thanks for explaining this.
diff --git a/drivers/net/wireless/silabs/wfx/Kconfig b/drivers/net/wireless/silabs/wfx/Kconfig new file mode 100644 index 000000000000..83ee4d0ca8c6 --- /dev/null +++ b/drivers/net/wireless/silabs/wfx/Kconfig @@ -0,0 +1,8 @@ +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) + chipsets. This chip can be found on SPI or SDIO buses. diff --git a/drivers/net/wireless/silabs/wfx/Makefile b/drivers/net/wireless/silabs/wfx/Makefile new file mode 100644 index 000000000000..0e0cc982ceab --- /dev/null +++ b/drivers/net/wireless/silabs/wfx/Makefile @@ -0,0 +1,25 @@ +# SPDX-License-Identifier: GPL-2.0 + +# Necessary for CREATE_TRACE_POINTS +CFLAGS_debug.o = -I$(src) + +wfx-y := \ + bh.o \ + hwio.o \ + fwio.o \ + hif_tx_mib.o \ + hif_tx.o \ + hif_rx.o \ + queue.o \ + data_tx.o \ + data_rx.o \ + scan.o \ + sta.o \ + key.o \ + main.o \ + sta.o \ + debug.o +wfx-$(CONFIG_SPI) += bus_spi.o +wfx-$(subst m,y,$(CONFIG_MMC)) += bus_sdio.o + +obj-$(CONFIG_WFX) += wfx.o