Commit 8da4a3a0 authored by Arend van Spriel's avatar Arend van Spriel Committed by Greg Kroah-Hartman

staging: brcm80211: removed struct osl_info usage from fullmac driver

Several occurrences in fullmac using struct osl_info could be removed.
Reviewed-by: default avatarBrett Rudley <brudley@broadcom.com>
Reviewed-by: default avatarHenry Ptasinski <henryp@broadcom.com>
Reviewed-by: default avatarRoland Vossen <rvossen@broadcom.com>
Signed-off-by: default avatarArend van Spriel <arend@broadcom.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 377c8981
...@@ -47,7 +47,7 @@ typedef void (*sdioh_cb_fn_t) (void *); ...@@ -47,7 +47,7 @@ typedef void (*sdioh_cb_fn_t) (void *);
* cfghdl points to the starting address of pci device mapped memory * cfghdl points to the starting address of pci device mapped memory
*/ */
extern sdioh_info_t *sdioh_attach(struct osl_info *osh, void *cfghdl, uint irq); extern sdioh_info_t *sdioh_attach(struct osl_info *osh, void *cfghdl, uint irq);
extern SDIOH_API_RC sdioh_detach(struct osl_info *osh, sdioh_info_t *si); extern SDIOH_API_RC sdioh_detach(sdioh_info_t *si);
extern SDIOH_API_RC sdioh_interrupt_register(sdioh_info_t *si, extern SDIOH_API_RC sdioh_interrupt_register(sdioh_info_t *si,
sdioh_cb_fn_t fn, void *argh); sdioh_cb_fn_t fn, void *argh);
extern SDIOH_API_RC sdioh_interrupt_deregister(sdioh_info_t *si); extern SDIOH_API_RC sdioh_interrupt_deregister(sdioh_info_t *si);
......
...@@ -71,7 +71,7 @@ bcmsdh_info_t *bcmsdh_attach(struct osl_info *osh, void *cfghdl, ...@@ -71,7 +71,7 @@ bcmsdh_info_t *bcmsdh_attach(struct osl_info *osh, void *cfghdl,
bcmsdh->sdioh = sdioh_attach(osh, cfghdl, irq); bcmsdh->sdioh = sdioh_attach(osh, cfghdl, irq);
if (!bcmsdh->sdioh) { if (!bcmsdh->sdioh) {
bcmsdh_detach(osh, bcmsdh); bcmsdh_detach(bcmsdh);
return NULL; return NULL;
} }
...@@ -85,13 +85,13 @@ bcmsdh_info_t *bcmsdh_attach(struct osl_info *osh, void *cfghdl, ...@@ -85,13 +85,13 @@ bcmsdh_info_t *bcmsdh_attach(struct osl_info *osh, void *cfghdl,
return bcmsdh; return bcmsdh;
} }
int bcmsdh_detach(struct osl_info *osh, void *sdh) int bcmsdh_detach(void *sdh)
{ {
bcmsdh_info_t *bcmsdh = (bcmsdh_info_t *) sdh; bcmsdh_info_t *bcmsdh = (bcmsdh_info_t *) sdh;
if (bcmsdh != NULL) { if (bcmsdh != NULL) {
if (bcmsdh->sdioh) { if (bcmsdh->sdioh) {
sdioh_detach(osh, bcmsdh->sdioh); sdioh_detach(bcmsdh->sdioh);
bcmsdh->sdioh = NULL; bcmsdh->sdioh = NULL;
} }
kfree(bcmsdh); kfree(bcmsdh);
......
...@@ -232,7 +232,7 @@ int bcmsdh_probe(struct device *dev) ...@@ -232,7 +232,7 @@ int bcmsdh_probe(struct device *dev)
err: err:
if (sdhc) { if (sdhc) {
if (sdhc->sdh) if (sdhc->sdh)
bcmsdh_detach(sdhc->osh, sdhc->sdh); bcmsdh_detach(sdhc->sdh);
kfree(sdhc); kfree(sdhc);
} }
if (osh) if (osh)
...@@ -250,7 +250,7 @@ int bcmsdh_remove(struct device *dev) ...@@ -250,7 +250,7 @@ int bcmsdh_remove(struct device *dev)
sdhc = sdhcinfo; sdhc = sdhcinfo;
drvinfo.detach(sdhc->ch); drvinfo.detach(sdhc->ch);
bcmsdh_detach(sdhc->osh, sdhc->sdh); bcmsdh_detach(sdhc->sdh);
/* find the SDIO Host Controller state for this pdev /* find the SDIO Host Controller state for this pdev
and take it out from the list */ and take it out from the list */
for (sdhc = sdhcinfo, prev = NULL; sdhc; sdhc = sdhc->next) { for (sdhc = sdhcinfo, prev = NULL; sdhc; sdhc = sdhc->next) {
......
...@@ -174,7 +174,7 @@ extern sdioh_info_t *sdioh_attach(struct osl_info *osh, void *bar0, uint irq) ...@@ -174,7 +174,7 @@ extern sdioh_info_t *sdioh_attach(struct osl_info *osh, void *bar0, uint irq)
return sd; return sd;
} }
extern SDIOH_API_RC sdioh_detach(struct osl_info *osh, sdioh_info_t *sd) extern SDIOH_API_RC sdioh_detach(sdioh_info_t *sd)
{ {
sd_trace(("%s\n", __func__)); sd_trace(("%s\n", __func__));
......
...@@ -27,7 +27,7 @@ extern void dhd_bus_unregister(void); ...@@ -27,7 +27,7 @@ extern void dhd_bus_unregister(void);
/* Download firmware image and nvram image */ /* Download firmware image and nvram image */
extern bool dhd_bus_download_firmware(struct dhd_bus *bus, extern bool dhd_bus_download_firmware(struct dhd_bus *bus,
struct osl_info *osh, char *fw_path, char *nv_path); char *fw_path, char *nv_path);
/* Stop bus module: clear pending frames, disable data flow */ /* Stop bus module: clear pending frames, disable data flow */
extern void dhd_bus_stop(struct dhd_bus *bus, bool enforce_mutex); extern void dhd_bus_stop(struct dhd_bus *bus, bool enforce_mutex);
......
...@@ -2125,7 +2125,7 @@ int dhd_bus_start(dhd_pub_t *dhdp) ...@@ -2125,7 +2125,7 @@ int dhd_bus_start(dhd_pub_t *dhdp)
/* try to download image and nvram to the dongle */ /* try to download image and nvram to the dongle */
if (dhd->pub.busstate == DHD_BUS_DOWN) { if (dhd->pub.busstate == DHD_BUS_DOWN) {
if (!(dhd_bus_download_firmware(dhd->pub.bus, dhd->pub.osh, if (!(dhd_bus_download_firmware(dhd->pub.bus,
fw_path, nv_path))) { fw_path, nv_path))) {
DHD_ERROR(("%s: dhdsdio_probe_download failed. " DHD_ERROR(("%s: dhdsdio_probe_download failed. "
"firmware = %s nvram = %s\n", "firmware = %s nvram = %s\n",
......
...@@ -437,15 +437,14 @@ static int dhdsdio_mem_dump(dhd_bus_t *bus); ...@@ -437,15 +437,14 @@ static int dhdsdio_mem_dump(dhd_bus_t *bus);
static int dhdsdio_download_state(dhd_bus_t *bus, bool enter); static int dhdsdio_download_state(dhd_bus_t *bus, bool enter);
static void dhdsdio_release(dhd_bus_t *bus, struct osl_info *osh); static void dhdsdio_release(dhd_bus_t *bus, struct osl_info *osh);
static void dhdsdio_release_malloc(dhd_bus_t *bus, struct osl_info *osh); static void dhdsdio_release_malloc(dhd_bus_t *bus);
static void dhdsdio_disconnect(void *ptr); static void dhdsdio_disconnect(void *ptr);
static bool dhdsdio_chipmatch(u16 chipid); static bool dhdsdio_chipmatch(u16 chipid);
static bool dhdsdio_probe_attach(dhd_bus_t *bus, struct osl_info *osh, static bool dhdsdio_probe_attach(dhd_bus_t *bus, void *sdh,
void *sdh, void *regsva, u16 devid); void *regsva, u16 devid);
static bool dhdsdio_probe_malloc(dhd_bus_t *bus, struct osl_info *osh, static bool dhdsdio_probe_malloc(dhd_bus_t *bus, void *sdh);
void *sdh); static bool dhdsdio_probe_init(dhd_bus_t *bus, void *sdh);
static bool dhdsdio_probe_init(dhd_bus_t *bus, struct osl_info *osh, void *sdh); static void dhdsdio_release_dongle(dhd_bus_t *bus);
static void dhdsdio_release_dongle(dhd_bus_t *bus, struct osl_info * osh);
static uint process_nvram_vars(char *varbuf, uint len); static uint process_nvram_vars(char *varbuf, uint len);
...@@ -459,8 +458,7 @@ static int dhd_bcmsdh_send_buf(dhd_bus_t *bus, u32 addr, uint fn, ...@@ -459,8 +458,7 @@ static int dhd_bcmsdh_send_buf(dhd_bus_t *bus, u32 addr, uint fn,
struct sk_buff *pkt, bcmsdh_cmplt_fn_t complete, struct sk_buff *pkt, bcmsdh_cmplt_fn_t complete,
void *handle); void *handle);
static bool dhdsdio_download_firmware(struct dhd_bus *bus, struct osl_info *osh, static bool dhdsdio_download_firmware(struct dhd_bus *bus, void *sdh);
void *sdh);
static int _dhdsdio_download_firmware(struct dhd_bus *bus); static int _dhdsdio_download_firmware(struct dhd_bus *bus);
static int dhdsdio_download_code_file(struct dhd_bus *bus, char *image_path); static int dhdsdio_download_code_file(struct dhd_bus *bus, char *image_path);
...@@ -5172,7 +5170,7 @@ static void *dhdsdio_probe(u16 venid, u16 devid, u16 bus_no, ...@@ -5172,7 +5170,7 @@ static void *dhdsdio_probe(u16 venid, u16 devid, u16 bus_no,
else use locally malloced rxbuf */ else use locally malloced rxbuf */
/* attempt to attach to the dongle */ /* attempt to attach to the dongle */
if (!(dhdsdio_probe_attach(bus, osh, sdh, regsva, devid))) { if (!(dhdsdio_probe_attach(bus, sdh, regsva, devid))) {
DHD_ERROR(("%s: dhdsdio_probe_attach failed\n", __func__)); DHD_ERROR(("%s: dhdsdio_probe_attach failed\n", __func__));
goto fail; goto fail;
} }
...@@ -5185,12 +5183,12 @@ static void *dhdsdio_probe(u16 venid, u16 devid, u16 bus_no, ...@@ -5185,12 +5183,12 @@ static void *dhdsdio_probe(u16 venid, u16 devid, u16 bus_no,
} }
/* Allocate buffers */ /* Allocate buffers */
if (!(dhdsdio_probe_malloc(bus, osh, sdh))) { if (!(dhdsdio_probe_malloc(bus, sdh))) {
DHD_ERROR(("%s: dhdsdio_probe_malloc failed\n", __func__)); DHD_ERROR(("%s: dhdsdio_probe_malloc failed\n", __func__));
goto fail; goto fail;
} }
if (!(dhdsdio_probe_init(bus, osh, sdh))) { if (!(dhdsdio_probe_init(bus, sdh))) {
DHD_ERROR(("%s: dhdsdio_probe_init failed\n", __func__)); DHD_ERROR(("%s: dhdsdio_probe_init failed\n", __func__));
goto fail; goto fail;
} }
...@@ -5231,8 +5229,7 @@ static void *dhdsdio_probe(u16 venid, u16 devid, u16 bus_no, ...@@ -5231,8 +5229,7 @@ static void *dhdsdio_probe(u16 venid, u16 devid, u16 bus_no,
} }
static bool static bool
dhdsdio_probe_attach(struct dhd_bus *bus, struct osl_info *osh, void *sdh, dhdsdio_probe_attach(struct dhd_bus *bus, void *sdh, void *regsva, u16 devid)
void *regsva, u16 devid)
{ {
u8 clkctl = 0; u8 clkctl = 0;
int err = 0; int err = 0;
...@@ -5389,8 +5386,7 @@ dhdsdio_probe_attach(struct dhd_bus *bus, struct osl_info *osh, void *sdh, ...@@ -5389,8 +5386,7 @@ dhdsdio_probe_attach(struct dhd_bus *bus, struct osl_info *osh, void *sdh,
return false; return false;
} }
static bool dhdsdio_probe_malloc(dhd_bus_t *bus, struct osl_info *osh, static bool dhdsdio_probe_malloc(dhd_bus_t *bus, void *sdh)
void *sdh)
{ {
DHD_TRACE(("%s: Enter\n", __func__)); DHD_TRACE(("%s: Enter\n", __func__));
...@@ -5431,7 +5427,7 @@ static bool dhdsdio_probe_malloc(dhd_bus_t *bus, struct osl_info *osh, ...@@ -5431,7 +5427,7 @@ static bool dhdsdio_probe_malloc(dhd_bus_t *bus, struct osl_info *osh,
return false; return false;
} }
static bool dhdsdio_probe_init(dhd_bus_t *bus, struct osl_info *osh, void *sdh) static bool dhdsdio_probe_init(dhd_bus_t *bus, void *sdh)
{ {
s32 fnum; s32 fnum;
...@@ -5508,20 +5504,19 @@ static bool dhdsdio_probe_init(dhd_bus_t *bus, struct osl_info *osh, void *sdh) ...@@ -5508,20 +5504,19 @@ static bool dhdsdio_probe_init(dhd_bus_t *bus, struct osl_info *osh, void *sdh)
} }
bool bool
dhd_bus_download_firmware(struct dhd_bus *bus, struct osl_info *osh, dhd_bus_download_firmware(struct dhd_bus *bus, char *fw_path, char *nv_path)
char *fw_path, char *nv_path)
{ {
bool ret; bool ret;
bus->fw_path = fw_path; bus->fw_path = fw_path;
bus->nv_path = nv_path; bus->nv_path = nv_path;
ret = dhdsdio_download_firmware(bus, osh, bus->sdh); ret = dhdsdio_download_firmware(bus, bus->sdh);
return ret; return ret;
} }
static bool static bool
dhdsdio_download_firmware(struct dhd_bus *bus, struct osl_info *osh, void *sdh) dhdsdio_download_firmware(struct dhd_bus *bus, void *sdh)
{ {
bool ret; bool ret;
...@@ -5541,21 +5536,19 @@ static void dhdsdio_release(dhd_bus_t *bus, struct osl_info *osh) ...@@ -5541,21 +5536,19 @@ static void dhdsdio_release(dhd_bus_t *bus, struct osl_info *osh)
DHD_TRACE(("%s: Enter\n", __func__)); DHD_TRACE(("%s: Enter\n", __func__));
if (bus) { if (bus) {
ASSERT(osh);
/* De-register interrupt handler */ /* De-register interrupt handler */
bcmsdh_intr_disable(bus->sdh); bcmsdh_intr_disable(bus->sdh);
bcmsdh_intr_dereg(bus->sdh); bcmsdh_intr_dereg(bus->sdh);
if (bus->dhd) { if (bus->dhd) {
dhdsdio_release_dongle(bus, osh); dhdsdio_release_dongle(bus);
dhd_detach(bus->dhd); dhd_detach(bus->dhd);
bus->dhd = NULL; bus->dhd = NULL;
} }
dhdsdio_release_malloc(bus, osh); dhdsdio_release_malloc(bus);
kfree(bus); kfree(bus);
} }
...@@ -5566,7 +5559,7 @@ static void dhdsdio_release(dhd_bus_t *bus, struct osl_info *osh) ...@@ -5566,7 +5559,7 @@ static void dhdsdio_release(dhd_bus_t *bus, struct osl_info *osh)
DHD_TRACE(("%s: Disconnected\n", __func__)); DHD_TRACE(("%s: Disconnected\n", __func__));
} }
static void dhdsdio_release_malloc(dhd_bus_t *bus, struct osl_info *osh) static void dhdsdio_release_malloc(dhd_bus_t *bus)
{ {
DHD_TRACE(("%s: Enter\n", __func__)); DHD_TRACE(("%s: Enter\n", __func__));
...@@ -5585,7 +5578,7 @@ static void dhdsdio_release_malloc(dhd_bus_t *bus, struct osl_info *osh) ...@@ -5585,7 +5578,7 @@ static void dhdsdio_release_malloc(dhd_bus_t *bus, struct osl_info *osh)
} }
} }
static void dhdsdio_release_dongle(dhd_bus_t *bus, struct osl_info *osh) static void dhdsdio_release_dongle(dhd_bus_t *bus)
{ {
DHD_TRACE(("%s: Enter\n", __func__)); DHD_TRACE(("%s: Enter\n", __func__));
...@@ -6057,7 +6050,7 @@ int dhd_bus_devreset(dhd_pub_t *dhdp, u8 flag) ...@@ -6057,7 +6050,7 @@ int dhd_bus_devreset(dhd_pub_t *dhdp, u8 flag)
/* Clean tx/rx buffer pointers, /* Clean tx/rx buffer pointers,
detach from the dongle */ detach from the dongle */
dhdsdio_release_dongle(bus, bus->dhd->osh); dhdsdio_release_dongle(bus);
bus->dhd->dongle_reset = true; bus->dhd->dongle_reset = true;
bus->dhd->up = false; bus->dhd->up = false;
...@@ -6077,14 +6070,13 @@ int dhd_bus_devreset(dhd_pub_t *dhdp, u8 flag) ...@@ -6077,14 +6070,13 @@ int dhd_bus_devreset(dhd_pub_t *dhdp, u8 flag)
bcmsdh_reset(bus->sdh); bcmsdh_reset(bus->sdh);
/* Attempt to re-attach & download */ /* Attempt to re-attach & download */
if (dhdsdio_probe_attach(bus, bus->dhd->osh, bus->sdh, if (dhdsdio_probe_attach(bus, bus->sdh,
(u32 *) SI_ENUM_BASE, (u32 *) SI_ENUM_BASE,
bus->cl_devid)) { bus->cl_devid)) {
/* Attempt to download binary to the dongle */ /* Attempt to download binary to the dongle */
if (dhdsdio_probe_init if (dhdsdio_probe_init
(bus, bus->dhd->osh, bus->sdh) (bus, bus->sdh)
&& dhdsdio_download_firmware(bus, && dhdsdio_download_firmware(bus,
bus->dhd->osh,
bus->sdh)) { bus->sdh)) {
/* Re-init bus, enable F2 transfer */ /* Re-init bus, enable F2 transfer */
......
...@@ -53,7 +53,7 @@ extern bcmsdh_info_t *bcmsdh_attach(struct osl_info *osh, void *cfghdl, ...@@ -53,7 +53,7 @@ extern bcmsdh_info_t *bcmsdh_attach(struct osl_info *osh, void *cfghdl,
void **regsva, uint irq); void **regsva, uint irq);
/* Detach - freeup resources allocated in attach */ /* Detach - freeup resources allocated in attach */
extern int bcmsdh_detach(struct osl_info *osh, void *sdh); extern int bcmsdh_detach(void *sdh);
/* Query if SD device interrupts are enabled */ /* Query if SD device interrupts are enabled */
extern bool bcmsdh_intr_query(void *sdh); extern bool bcmsdh_intr_query(void *sdh);
......
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