Commit de2a3027 authored by Arend Van Spriel's avatar Arend Van Spriel Committed by Kalle Valo

brcmfmac: remove brcmf_bus_started() from bus api

No longer needed to call this in bus layer so make it static and call
it in the last phase of brcmf_attach() instead.
Reviewed-by: default avatarHante Meuleman <hante.meuleman@broadcom.com>
Reviewed-by: default avatarPieter-Paul Giesberts <pieter-paul.giesberts@broadcom.com>
Reviewed-by: default avatarFranky Lin <franky.lin@broadcom.com>
Signed-off-by: default avatarArend van Spriel <arend.vanspriel@broadcom.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent 0542503c
...@@ -253,7 +253,6 @@ void brcmf_dev_reset(struct device *dev); ...@@ -253,7 +253,6 @@ void brcmf_dev_reset(struct device *dev);
/* Configure the "global" bus state used by upper layers */ /* Configure the "global" bus state used by upper layers */
void brcmf_bus_change_state(struct brcmf_bus *bus, enum brcmf_bus_state state); void brcmf_bus_change_state(struct brcmf_bus *bus, enum brcmf_bus_state state);
int brcmf_bus_started(struct device *dev);
s32 brcmf_iovar_data_set(struct device *dev, char *name, void *data, u32 len); s32 brcmf_iovar_data_set(struct device *dev, char *name, void *data, u32 len);
void brcmf_bus_add_txhdrlen(struct device *dev, uint len); void brcmf_bus_add_txhdrlen(struct device *dev, uint len);
......
...@@ -944,11 +944,10 @@ static int brcmf_revinfo_read(struct seq_file *s, void *data) ...@@ -944,11 +944,10 @@ static int brcmf_revinfo_read(struct seq_file *s, void *data)
return 0; return 0;
} }
int brcmf_bus_started(struct device *dev) static int brcmf_bus_started(struct brcmf_pub *drvr)
{ {
int ret = -1; int ret = -1;
struct brcmf_bus *bus_if = dev_get_drvdata(dev); struct brcmf_bus *bus_if = drvr->bus_if;
struct brcmf_pub *drvr = bus_if->drvr;
struct brcmf_if *ifp; struct brcmf_if *ifp;
struct brcmf_if *p2p_ifp; struct brcmf_if *p2p_ifp;
...@@ -965,7 +964,7 @@ int brcmf_bus_started(struct device *dev) ...@@ -965,7 +964,7 @@ int brcmf_bus_started(struct device *dev)
brcmf_bus_change_state(bus_if, BRCMF_BUS_UP); brcmf_bus_change_state(bus_if, BRCMF_BUS_UP);
/* do bus specific preinit here */ /* do bus specific preinit here */
ret = brcmf_bus_preinit(ifp->drvr->bus_if); ret = brcmf_bus_preinit(bus_if);
if (ret < 0) if (ret < 0)
goto fail; goto fail;
...@@ -1085,7 +1084,12 @@ int brcmf_attach(struct device *dev, struct brcmf_mp_device *settings) ...@@ -1085,7 +1084,12 @@ int brcmf_attach(struct device *dev, struct brcmf_mp_device *settings)
/* attach firmware event handler */ /* attach firmware event handler */
brcmf_fweh_attach(drvr); brcmf_fweh_attach(drvr);
return ret; ret = brcmf_bus_started(drvr);
if (ret != 0) {
brcmf_err("dongle is not responding: err=%d\n", ret);
goto fail;
}
return 0;
fail: fail:
brcmf_detach(dev); brcmf_detach(dev);
......
...@@ -1581,24 +1581,6 @@ static void brcmf_pcie_release_resource(struct brcmf_pciedev_info *devinfo) ...@@ -1581,24 +1581,6 @@ static void brcmf_pcie_release_resource(struct brcmf_pciedev_info *devinfo)
} }
static int brcmf_pcie_attach_bus(struct brcmf_pciedev_info *devinfo)
{
int ret;
/* Attach to the common driver interface */
ret = brcmf_attach(&devinfo->pdev->dev, devinfo->settings);
if (ret) {
brcmf_err("brcmf_attach failed\n");
} else {
ret = brcmf_bus_started(&devinfo->pdev->dev);
if (ret)
brcmf_err("dongle is not responding\n");
}
return ret;
}
static u32 brcmf_pcie_buscore_prep_addr(const struct pci_dev *pdev, u32 addr) static u32 brcmf_pcie_buscore_prep_addr(const struct pci_dev *pdev, u32 addr)
{ {
u32 ret_addr; u32 ret_addr;
...@@ -1735,7 +1717,7 @@ static void brcmf_pcie_setup(struct device *dev, int ret, ...@@ -1735,7 +1717,7 @@ static void brcmf_pcie_setup(struct device *dev, int ret,
init_waitqueue_head(&devinfo->mbdata_resp_wait); init_waitqueue_head(&devinfo->mbdata_resp_wait);
brcmf_pcie_intr_enable(devinfo); brcmf_pcie_intr_enable(devinfo);
if (brcmf_pcie_attach_bus(devinfo) == 0) if (brcmf_attach(&devinfo->pdev->dev, devinfo->settings) == 0)
return; return;
brcmf_pcie_bus_console_read(devinfo); brcmf_pcie_bus_console_read(devinfo);
......
...@@ -3422,6 +3422,8 @@ static int brcmf_sdio_bus_preinit(struct device *dev) ...@@ -3422,6 +3422,8 @@ static int brcmf_sdio_bus_preinit(struct device *dev)
if (bus->rxbuf) if (bus->rxbuf)
bus->rxblen = value; bus->rxblen = value;
brcmf_sdio_debugfs_create(bus);
/* the commands below use the terms tx and rx from /* the commands below use the terms tx and rx from
* a device perspective, ie. bus:txglom affects the * a device perspective, ie. bus:txglom affects the
* bus transfers from device to host. * bus transfers from device to host.
...@@ -4136,14 +4138,6 @@ static void brcmf_sdio_firmware_callback(struct device *dev, int err, ...@@ -4136,14 +4138,6 @@ static void brcmf_sdio_firmware_callback(struct device *dev, int err,
goto fail; goto fail;
} }
brcmf_sdio_debugfs_create(bus);
err = brcmf_bus_started(dev);
if (err != 0) {
brcmf_err("dongle is not responding\n");
goto fail;
}
/* ready */ /* ready */
return; return;
......
...@@ -1155,27 +1155,6 @@ static const struct brcmf_bus_ops brcmf_usb_bus_ops = { ...@@ -1155,27 +1155,6 @@ static const struct brcmf_bus_ops brcmf_usb_bus_ops = {
.get_fwname = brcmf_usb_get_fwname, .get_fwname = brcmf_usb_get_fwname,
}; };
static int brcmf_usb_bus_setup(struct brcmf_usbdev_info *devinfo)
{
int ret;
/* Attach to the common driver interface */
ret = brcmf_attach(devinfo->dev, devinfo->settings);
if (ret) {
brcmf_err("brcmf_attach failed\n");
return ret;
}
ret = brcmf_bus_started(devinfo->dev);
if (ret)
goto fail;
return 0;
fail:
brcmf_detach(devinfo->dev);
return ret;
}
static void brcmf_usb_probe_phase2(struct device *dev, int ret, static void brcmf_usb_probe_phase2(struct device *dev, int ret,
const struct firmware *fw, const struct firmware *fw,
void *nvram, u32 nvlen) void *nvram, u32 nvlen)
...@@ -1203,7 +1182,8 @@ static void brcmf_usb_probe_phase2(struct device *dev, int ret, ...@@ -1203,7 +1182,8 @@ static void brcmf_usb_probe_phase2(struct device *dev, int ret,
if (ret) if (ret)
goto error; goto error;
ret = brcmf_usb_bus_setup(devinfo); /* Attach to the common driver interface */
ret = brcmf_attach(devinfo->dev, devinfo->settings);
if (ret) if (ret)
goto error; goto error;
...@@ -1253,7 +1233,7 @@ static int brcmf_usb_probe_cb(struct brcmf_usbdev_info *devinfo) ...@@ -1253,7 +1233,7 @@ static int brcmf_usb_probe_cb(struct brcmf_usbdev_info *devinfo)
} }
if (!brcmf_usb_dlneeded(devinfo)) { if (!brcmf_usb_dlneeded(devinfo)) {
ret = brcmf_usb_bus_setup(devinfo); ret = brcmf_attach(devinfo->dev, devinfo->settings);
if (ret) if (ret)
goto fail; goto fail;
/* we are done */ /* we are done */
...@@ -1456,7 +1436,7 @@ static int brcmf_usb_resume(struct usb_interface *intf) ...@@ -1456,7 +1436,7 @@ static int brcmf_usb_resume(struct usb_interface *intf)
brcmf_dbg(USB, "Enter\n"); brcmf_dbg(USB, "Enter\n");
if (!devinfo->wowl_enabled) if (!devinfo->wowl_enabled)
return brcmf_usb_bus_setup(devinfo); return brcmf_attach(devinfo->dev, devinfo->settings);
devinfo->bus_pub.state = BRCMFMAC_USB_STATE_UP; devinfo->bus_pub.state = BRCMFMAC_USB_STATE_UP;
brcmf_usb_rx_fill_all(devinfo); brcmf_usb_rx_fill_all(devinfo);
......
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