diff mbox

[01/26] staging: wilc1000: separate hif_sdio and hif_spi into different module

Message ID 1446802823-22598-2-git-send-email-glen.lee@atmel.com (mailing list archive)
State Not Applicable
Headers show

Commit Message

Glen Lee Nov. 6, 2015, 9:39 a.m. UTC
hif_sdio and hif_spi objects are compiled all the time even though one of SPI
or SDIO is selected. This patch separates hif_sdio and hif_spi into different
modules using ifdef define.
After rework SPI and SDIO modules with only one hif interface, the define
WILC_SDIO will be removed. This is first path of this series.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
---
 drivers/staging/wilc1000/Makefile    |  6 +++---
 drivers/staging/wilc1000/wilc_wlan.c | 36 +++++++++++++++++-------------------
 2 files changed, 20 insertions(+), 22 deletions(-)

Comments

Greg KH Nov. 6, 2015, 10:45 p.m. UTC | #1
On Fri, Nov 06, 2015 at 06:39:58PM +0900, Glen Lee wrote:
> hif_sdio and hif_spi objects are compiled all the time even though one of SPI
> or SDIO is selected. This patch separates hif_sdio and hif_spi into different
> modules using ifdef define.
> After rework SPI and SDIO modules with only one hif interface, the define
> WILC_SDIO will be removed. This is first path of this series.
> 
> Signed-off-by: Glen Lee <glen.lee@atmel.com>
> ---
>  drivers/staging/wilc1000/Makefile    |  6 +++---
>  drivers/staging/wilc1000/wilc_wlan.c | 36 +++++++++++++++++-------------------
>  2 files changed, 20 insertions(+), 22 deletions(-)

This patch doesn't apply at all, I think we are out of sync now.  Please
refresh and redo this series against my staging-testing branch and
resend.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Greg KH Nov. 6, 2015, 10:49 p.m. UTC | #2
On Fri, Nov 06, 2015 at 02:45:22PM -0800, Greg KH wrote:
> On Fri, Nov 06, 2015 at 06:39:58PM +0900, Glen Lee wrote:
> > hif_sdio and hif_spi objects are compiled all the time even though one of SPI
> > or SDIO is selected. This patch separates hif_sdio and hif_spi into different
> > modules using ifdef define.
> > After rework SPI and SDIO modules with only one hif interface, the define
> > WILC_SDIO will be removed. This is first path of this series.
> > 
> > Signed-off-by: Glen Lee <glen.lee@atmel.com>
> > ---
> >  drivers/staging/wilc1000/Makefile    |  6 +++---
> >  drivers/staging/wilc1000/wilc_wlan.c | 36 +++++++++++++++++-------------------
> >  2 files changed, 20 insertions(+), 22 deletions(-)
> 
> This patch doesn't apply at all, I think we are out of sync now.  Please
> refresh and redo this series against my staging-testing branch and
> resend.

Oops, no, I was out of sync, nevermind, I figured it out...
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/staging/wilc1000/Makefile b/drivers/staging/wilc1000/Makefile
index 64c2f1b..650123d 100644
--- a/drivers/staging/wilc1000/Makefile
+++ b/drivers/staging/wilc1000/Makefile
@@ -21,8 +21,8 @@  ccflags-$(CONFIG_WILC1000_DYNAMICALLY_ALLOCATE_MEMROY) += -DWILC_NORMAL_ALLOC
 wilc1000-objs := wilc_wfi_cfgoperations.o linux_wlan.o linux_mon.o \
 			wilc_msgqueue.o \
 			coreconfigurator.o host_interface.o \
-			wilc_sdio.o wilc_spi.o wilc_wlan_cfg.o wilc_debugfs.o \
+			wilc_wlan_cfg.o wilc_debugfs.o \
 			wilc_wlan.o
 
-wilc1000-$(CONFIG_WILC1000_SDIO) += linux_wlan_sdio.o
-wilc1000-$(CONFIG_WILC1000_SPI) += linux_wlan_spi.o
+wilc1000-$(CONFIG_WILC1000_SDIO) += linux_wlan_sdio.o wilc_sdio.o
+wilc1000-$(CONFIG_WILC1000_SPI) += linux_wlan_spi.o wilc_spi.o
diff --git a/drivers/staging/wilc1000/wilc_wlan.c b/drivers/staging/wilc1000/wilc_wlan.c
index b6d784b..2ce5870 100644
--- a/drivers/staging/wilc1000/wilc_wlan.c
+++ b/drivers/staging/wilc1000/wilc_wlan.c
@@ -2,8 +2,11 @@ 
 #include "wilc_wfi_netdevice.h"
 #include "wilc_wlan_cfg.h"
 
+#ifdef WILC_SDIO
 extern struct wilc_hif_func hif_sdio;
+#else
 extern struct wilc_hif_func hif_spi;
+#endif
 u32 wilc_get_chipid(u8 update);
 
 typedef struct {
@@ -1659,26 +1662,21 @@  int wilc_wlan_init(struct net_device *dev, wilc_wlan_inp_t *inp)
 	memcpy((void *)&g_wlan.io_func, (void *)&inp->io_func,
 	       sizeof(wilc_wlan_io_func_t));
 
-	if ((inp->io_func.io_type & 0x1) == HIF_SDIO) {
-		if (!hif_sdio.hif_init(inp, wilc_debug)) {
-			ret = -EIO;
-			goto _fail_;
-		}
-		memcpy((void *)&g_wlan.hif_func, &hif_sdio,
-		       sizeof(struct wilc_hif_func));
-	} else {
-		if ((inp->io_func.io_type & 0x1) == HIF_SPI) {
-			if (!hif_spi.hif_init(inp, wilc_debug)) {
-				ret = -EIO;
-				goto _fail_;
-			}
-			memcpy((void *)&g_wlan.hif_func, &hif_spi,
-			       sizeof(struct wilc_hif_func));
-		} else {
-			ret = -EIO;
-			goto _fail_;
-		}
+#ifdef WILC_SDIO
+	if (!hif_sdio.hif_init(inp, wilc_debug)) {
+		ret = -EIO;
+		goto _fail_;
 	}
+	memcpy((void *)&g_wlan.hif_func, &hif_sdio,
+	       sizeof(struct wilc_hif_func));
+#else
+	if (!hif_spi.hif_init(inp, wilc_debug)) {
+		ret = -EIO;
+		goto _fail_;
+	}
+	memcpy((void *)&g_wlan.hif_func, &hif_spi,
+	       sizeof(struct wilc_hif_func));
+#endif
 
 	if (!wilc_wlan_cfg_init(wilc_debug)) {
 		ret = -ENOBUFS;