brcm80211: fmac: stop referencing brcmf_sdio in common layer
authorFranky Lin <frankyl@broadcom.com>
Sat, 17 Dec 2011 02:37:10 +0000 (18:37 -0800)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 19 Dec 2011 19:40:46 +0000 (14:40 -0500)
brcmf_sdio is the data structure for sdio bus layer. Stop
referencing brcmf_sdio from common layer. This patch is part of
the fullmac bus interface refactoring.

Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Reviewed-by: Arend van Spriel <arend@broadcom.com>
Reviewed-by: Alwin Beukers <alwin@broadcom.com>
Signed-off-by: Franky Lin <frankyl@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/brcm80211/brcmfmac/dhd.h
drivers/net/wireless/brcm80211/brcmfmac/dhd_bus.h
drivers/net/wireless/brcm80211/brcmfmac/dhd_linux.c
drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c
drivers/net/wireless/brcm80211/brcmfmac/sdio_host.h

index dcb1bb550f4803bf636d54055ca6b8b4a91d8516..5d0be12fe1846695e29276b28a4a62b4a1b160ce 100644 (file)
@@ -583,14 +583,12 @@ struct brcmf_bus {
 };
 
 /* Forward decls for struct brcmf_pub (see below) */
-struct brcmf_sdio;             /* device bus info */
 struct brcmf_proto;    /* device communication protocol info */
 struct brcmf_cfg80211_dev; /* cfg80211 device info */
 
 /* Common structure for module and instance linkage */
 struct brcmf_pub {
        /* Linkage ponters */
-       struct brcmf_sdio *bus;
        struct brcmf_bus *bus_if;
        struct brcmf_proto *prot;
        struct brcmf_cfg80211_dev *config;
@@ -669,8 +667,7 @@ extern uint brcmf_c_mkiovar(char *name, char *data, uint datalen,
  * Returned structure should have bus and prot pointers filled in.
  * bus_hdrlen specifies required headroom for bus module header.
  */
-extern int brcmf_attach(struct brcmf_sdio *bus,
-                       uint bus_hdrlen, struct device *dev);
+extern int brcmf_attach(uint bus_hdrlen, struct device *dev);
 extern int brcmf_net_attach(struct brcmf_pub *drvr, int idx);
 extern int brcmf_netdev_wait_pend8021x(struct net_device *ndev);
 
index 1841f996110b0c36f54e57fb4970d086936675fe..1b34877ba35b71c7ab2655d157a6ac373ab58f9c 100644 (file)
@@ -44,7 +44,4 @@ brcmf_sdbrcm_bus_txctl(struct device *dev, unsigned char *msg, uint msglen);
 
 extern int
 brcmf_sdbrcm_bus_rxctl(struct device *dev, unsigned char *msg, uint msglen);
-
-extern void brcmf_sdbrcm_wd_timer(struct brcmf_sdio *bus, uint wdtick);
-
 #endif                         /* _BRCMF_BUS_H_ */
index 533418e11c7f35f7497d99ad3198cef623249db7..70f0b31b73143ac82ef8f600de3424981c7f6a76 100644 (file)
@@ -922,8 +922,7 @@ void brcmf_del_if(struct brcmf_pub *drvr, int ifidx)
        }
 }
 
-int brcmf_attach(struct brcmf_sdio *bus, uint bus_hdrlen,
-                              struct device *dev)
+int brcmf_attach(uint bus_hdrlen, struct device *dev)
 {
        struct brcmf_pub *drvr = NULL;
        int ret = 0;
@@ -938,7 +937,6 @@ int brcmf_attach(struct brcmf_sdio *bus, uint bus_hdrlen,
        mutex_init(&drvr->proto_block);
 
        /* Link to bus module */
-       drvr->bus = bus;
        drvr->hdrlen = bus_hdrlen;
        drvr->bus_if = dev_get_drvdata(dev);
        drvr->bus_if->drvr = drvr;
index 399567f7b6a662ed09f49b91416e7e5ada5c872b..129cfd6bc686404c78c046b73c943972b42d4cb3 100644 (file)
@@ -3953,7 +3953,7 @@ void *brcmf_sdbrcm_probe(u32 regsva, struct brcmf_sdio_dev *sdiodev)
        }
 
        /* Attach to the brcmf/OS/network interface */
-       ret = brcmf_attach(bus, SDPCM_RESERVE, bus->sdiodev->dev);
+       ret = brcmf_attach(SDPCM_RESERVE, bus->sdiodev->dev);
        if (ret != 0) {
                brcmf_dbg(ERROR, "brcmf_attach failed\n");
                goto fail;
index d36a2a855a6573f538089d07985791c7e5d5922d..a63490e4cb199f30fbb5ddab9cecce1418b189ad 100644 (file)
@@ -122,6 +122,8 @@ struct brcmf_sdreg {
        int value;
 };
 
+struct brcmf_sdio;
+
 struct brcmf_sdio_dev {
        struct sdio_func *func[SDIO_MAX_FUNCS];
        u8 num_funcs;                   /* Supported funcs on client */
@@ -262,4 +264,6 @@ extern void brcmf_sdio_wdtmr_enable(struct brcmf_sdio_dev *sdiodev,
 extern void *brcmf_sdbrcm_probe(u32 regsva, struct brcmf_sdio_dev *sdiodev);
 extern void brcmf_sdbrcm_disconnect(void *ptr);
 extern void brcmf_sdbrcm_isr(void *arg);
+
+extern void brcmf_sdbrcm_wd_timer(struct brcmf_sdio *bus, uint wdtick);
 #endif                         /* _BRCM_SDH_H_ */