Commit 99a0b8ff authored by Franky Lin's avatar Franky Lin Committed by John W. Linville
Browse files

brcm80211: fmac: abstract bus_init interface function pointer



Abstract bus layer brcmf_bus_init function pointer for common
layer. This patch is part of the fullmac bus interface refactoring.
Reviewed-by: default avatarPieter-Paul Giesberts <pieterpg@broadcom.com>
Reviewed-by: default avatarArend van Spriel <arend@broadcom.com>
Reviewed-by: default avatarAlwin Beukers <alwin@broadcom.com>
Signed-off-by: default avatarFranky Lin <frankyl@broadcom.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent a8a363ac
...@@ -51,6 +51,8 @@ struct brcmf_bus { ...@@ -51,6 +51,8 @@ struct brcmf_bus {
/* interface functions pointers */ /* interface functions pointers */
/* Stop bus module: clear pending frames, disable data flow */ /* Stop bus module: clear pending frames, disable data flow */
void (*brcmf_bus_stop)(struct device *); void (*brcmf_bus_stop)(struct device *);
/* Initialize bus module: prepare for communication w/dongle */
int (*brcmf_bus_init)(struct device *);
}; };
/* /*
...@@ -97,9 +99,6 @@ extern int brcmf_add_if(struct device *dev, int ifidx, ...@@ -97,9 +99,6 @@ extern int brcmf_add_if(struct device *dev, int ifidx,
/* /*
* Exported from brcmf bus module (brcmf_usb, brcmf_sdio) * Exported from brcmf bus module (brcmf_usb, brcmf_sdio)
*/ */
/* Initialize bus module: prepare for communication w/dongle */
extern int brcmf_sdbrcm_bus_init(struct device *dev);
/* Send a data frame to the dongle. Callee disposes of txp. */ /* Send a data frame to the dongle. Callee disposes of txp. */
extern int brcmf_sdbrcm_bus_txdata(struct device *dev, struct sk_buff *txp); extern int brcmf_sdbrcm_bus_txdata(struct device *dev, struct sk_buff *txp);
......
...@@ -971,7 +971,7 @@ int brcmf_bus_start(struct device *dev) ...@@ -971,7 +971,7 @@ int brcmf_bus_start(struct device *dev)
brcmf_dbg(TRACE, "\n"); brcmf_dbg(TRACE, "\n");
/* Bring up the bus */ /* Bring up the bus */
ret = brcmf_sdbrcm_bus_init(dev); ret = bus_if->brcmf_bus_init(dev);
if (ret != 0) { if (ret != 0) {
brcmf_dbg(ERROR, "brcmf_sdbrcm_bus_init failed %d\n", ret); brcmf_dbg(ERROR, "brcmf_sdbrcm_bus_init failed %d\n", ret);
return ret; return ret;
......
...@@ -3423,7 +3423,7 @@ brcmf_sdbrcm_download_firmware(struct brcmf_sdio *bus) ...@@ -3423,7 +3423,7 @@ brcmf_sdbrcm_download_firmware(struct brcmf_sdio *bus)
return ret; return ret;
} }
int brcmf_sdbrcm_bus_init(struct device *dev) static int brcmf_sdbrcm_bus_init(struct device *dev)
{ {
struct brcmf_bus *bus_if = dev_get_drvdata(dev); struct brcmf_bus *bus_if = dev_get_drvdata(dev);
struct brcmf_sdio_dev *sdiodev = bus_if->bus_priv; struct brcmf_sdio_dev *sdiodev = bus_if->bus_priv;
...@@ -3954,6 +3954,7 @@ void *brcmf_sdbrcm_probe(u32 regsva, struct brcmf_sdio_dev *sdiodev) ...@@ -3954,6 +3954,7 @@ void *brcmf_sdbrcm_probe(u32 regsva, struct brcmf_sdio_dev *sdiodev)
/* Assign bus interface call back */ /* Assign bus interface call back */
bus->sdiodev->bus_if->brcmf_bus_stop = brcmf_sdbrcm_bus_stop; bus->sdiodev->bus_if->brcmf_bus_stop = brcmf_sdbrcm_bus_stop;
bus->sdiodev->bus_if->brcmf_bus_init = brcmf_sdbrcm_bus_init;
/* Attach to the brcmf/OS/network interface */ /* Attach to the brcmf/OS/network interface */
ret = brcmf_attach(SDPCM_RESERVE, bus->sdiodev->dev); ret = brcmf_attach(SDPCM_RESERVE, bus->sdiodev->dev);
if (ret != 0) { if (ret != 0) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment