mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 15:32:33 +00:00
8cfd43d1d6
It was described by Arend as:
> This series is intended for 4.17 and includes following:
>
> * rework bus layer attach code.
> * remove duplicate variable declaration.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 0da9303e5b
)
127 lines
4.4 KiB
Diff
127 lines
4.4 KiB
Diff
From 2d6edad4b2da1991f74e7b02053eeb4a043b887f Mon Sep 17 00:00:00 2001
|
|
From: Arend Van Spriel <arend.vanspriel@broadcom.com>
|
|
Date: Tue, 20 Feb 2018 00:14:25 +0100
|
|
Subject: [PATCH] brcmfmac: remove duplicate pointer variable from
|
|
brcmf_sdio_firmware_callback()
|
|
|
|
In brcmf_sdio_firmware_callback() two pointer variables were used
|
|
pointing to the same construct. Get rid of sdiodev variable.
|
|
|
|
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
|
|
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
|
|
---
|
|
.../wireless/broadcom/brcm80211/brcmfmac/sdio.c | 37 +++++++++++-----------
|
|
1 file changed, 18 insertions(+), 19 deletions(-)
|
|
|
|
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
|
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
|
@@ -4039,9 +4039,8 @@ static void brcmf_sdio_firmware_callback
|
|
void *nvram, u32 nvram_len)
|
|
{
|
|
struct brcmf_bus *bus_if = dev_get_drvdata(dev);
|
|
- struct brcmf_sdio_dev *sdiodev = bus_if->bus_priv.sdio;
|
|
- struct brcmf_sdio *bus = sdiodev->bus;
|
|
- struct brcmf_sdio_dev *sdiod = bus->sdiodev;
|
|
+ struct brcmf_sdio_dev *sdiod = bus_if->bus_priv.sdio;
|
|
+ struct brcmf_sdio *bus = sdiod->bus;
|
|
struct brcmf_core *core = bus->sdio_core;
|
|
u8 saveclk;
|
|
|
|
@@ -4061,7 +4060,7 @@ static void brcmf_sdio_firmware_callback
|
|
bus->sdcnt.tickcnt = 0;
|
|
brcmf_sdio_wd_timer(bus, true);
|
|
|
|
- sdio_claim_host(sdiodev->func1);
|
|
+ sdio_claim_host(sdiod->func1);
|
|
|
|
/* Make sure backplane clock is on, needed to generate F2 interrupt */
|
|
brcmf_sdio_clkctl(bus, CLK_AVAIL, false);
|
|
@@ -4069,9 +4068,9 @@ static void brcmf_sdio_firmware_callback
|
|
goto release;
|
|
|
|
/* Force clocks on backplane to be sure F2 interrupt propagates */
|
|
- saveclk = brcmf_sdiod_readb(sdiodev, SBSDIO_FUNC1_CHIPCLKCSR, &err);
|
|
+ saveclk = brcmf_sdiod_readb(sdiod, SBSDIO_FUNC1_CHIPCLKCSR, &err);
|
|
if (!err) {
|
|
- brcmf_sdiod_writeb(sdiodev, SBSDIO_FUNC1_CHIPCLKCSR,
|
|
+ brcmf_sdiod_writeb(sdiod, SBSDIO_FUNC1_CHIPCLKCSR,
|
|
(saveclk | SBSDIO_FORCE_HT), &err);
|
|
}
|
|
if (err) {
|
|
@@ -4083,7 +4082,7 @@ static void brcmf_sdio_firmware_callback
|
|
brcmf_sdiod_writel(sdiod, core->base + SD_REG(tosbmailboxdata),
|
|
SDPCM_PROT_VERSION << SMB_DATA_VERSION_SHIFT, NULL);
|
|
|
|
- err = sdio_enable_func(sdiodev->func2);
|
|
+ err = sdio_enable_func(sdiod->func2);
|
|
|
|
brcmf_dbg(INFO, "enable F2: err=%d\n", err);
|
|
|
|
@@ -4095,10 +4094,10 @@ static void brcmf_sdio_firmware_callback
|
|
bus->hostintmask, NULL);
|
|
|
|
|
|
- brcmf_sdiod_writeb(sdiodev, SBSDIO_WATERMARK, 8, &err);
|
|
+ brcmf_sdiod_writeb(sdiod, SBSDIO_WATERMARK, 8, &err);
|
|
} else {
|
|
/* Disable F2 again */
|
|
- sdio_disable_func(sdiodev->func2);
|
|
+ sdio_disable_func(sdiod->func2);
|
|
goto release;
|
|
}
|
|
|
|
@@ -4106,7 +4105,7 @@ static void brcmf_sdio_firmware_callback
|
|
brcmf_sdio_sr_init(bus);
|
|
} else {
|
|
/* Restore previous clock setting */
|
|
- brcmf_sdiod_writeb(sdiodev, SBSDIO_FUNC1_CHIPCLKCSR,
|
|
+ brcmf_sdiod_writeb(sdiod, SBSDIO_FUNC1_CHIPCLKCSR,
|
|
saveclk, &err);
|
|
}
|
|
|
|
@@ -4114,7 +4113,7 @@ static void brcmf_sdio_firmware_callback
|
|
/* Allow full data communication using DPC from now on. */
|
|
brcmf_sdiod_change_state(bus->sdiodev, BRCMF_SDIOD_DATA);
|
|
|
|
- err = brcmf_sdiod_intr_register(sdiodev);
|
|
+ err = brcmf_sdiod_intr_register(sdiod);
|
|
if (err != 0)
|
|
brcmf_err("intr register failed:%d\n", err);
|
|
}
|
|
@@ -4123,16 +4122,16 @@ static void brcmf_sdio_firmware_callback
|
|
if (err != 0)
|
|
brcmf_sdio_clkctl(bus, CLK_NONE, false);
|
|
|
|
- sdio_release_host(sdiodev->func1);
|
|
+ sdio_release_host(sdiod->func1);
|
|
|
|
/* Assign bus interface call back */
|
|
- sdiodev->bus_if->dev = sdiodev->dev;
|
|
- sdiodev->bus_if->ops = &brcmf_sdio_bus_ops;
|
|
- sdiodev->bus_if->chip = bus->ci->chip;
|
|
- sdiodev->bus_if->chiprev = bus->ci->chiprev;
|
|
+ sdiod->bus_if->dev = sdiod->dev;
|
|
+ sdiod->bus_if->ops = &brcmf_sdio_bus_ops;
|
|
+ sdiod->bus_if->chip = bus->ci->chip;
|
|
+ sdiod->bus_if->chiprev = bus->ci->chiprev;
|
|
|
|
/* Attach to the common layer, reserve hdr space */
|
|
- err = brcmf_attach(sdiodev->dev, sdiodev->settings);
|
|
+ err = brcmf_attach(sdiod->dev, sdiod->settings);
|
|
if (err != 0) {
|
|
brcmf_err("brcmf_attach failed\n");
|
|
goto fail;
|
|
@@ -4142,10 +4141,10 @@ static void brcmf_sdio_firmware_callback
|
|
return;
|
|
|
|
release:
|
|
- sdio_release_host(sdiodev->func1);
|
|
+ sdio_release_host(sdiod->func1);
|
|
fail:
|
|
brcmf_dbg(TRACE, "failed: dev=%s, err=%d\n", dev_name(dev), err);
|
|
- device_release_driver(&sdiodev->func2->dev);
|
|
+ device_release_driver(&sdiod->func2->dev);
|
|
device_release_driver(dev);
|
|
}
|
|
|