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);
 | 
						|
 }
 | 
						|
 
 |