All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefano Brivio <stefano.brivio@polimi.it>
To: linux-wireless@vger.kernel.org
Cc: "John W. Linville" <linville@tuxdriver.com>,
	Michael Buesch <mb@bu3sch.de>
Subject: Re: [PATCH] [RFT] b43legacy: fix bcm4303 crash
Date: Sat, 15 Mar 2008 19:08:36 +0100	[thread overview]
Message-ID: <20080315190836.5020b884@morte> (raw)
In-Reply-To: <20080315190121.70edbfcd@morte>

On Sat, 15 Mar 2008 19:01:21 +0100
Stefano Brivio <stefano.brivio@polimi.it> wrote:

> This should fix an hard crash which happened upon driver loading on bcm4303
> rev. 2 devices. The bug was originally reported here:
> https://bugzilla.redhat.com/show_bug.cgi?id=384981.
> Please test.

Ehr, sure. :/ Here it comes:

Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
---
Index: wireless-testing/drivers/net/wireless/b43legacy/main.c
===================================================================
--- wireless-testing.orig/drivers/net/wireless/b43legacy/main.c
+++ wireless-testing/drivers/net/wireless/b43legacy/main.c
@@ -3047,7 +3047,6 @@ static void b43legacy_wireless_core_exit
 	}
 
 	ssb_device_disable(dev->dev, 0);
-	ssb_bus_may_powerdown(dev->dev->bus);
 }
 
 static void prepare_phy_data_for_init(struct b43legacy_wldev *dev)
@@ -3214,7 +3213,6 @@ err_kfree_tssitbl:
 err_kfree_lo_control:
 	kfree(phy->lo_control);
 	phy->lo_control = NULL;
-	ssb_bus_may_powerdown(bus);
 	B43legacy_WARN_ON(b43legacy_status(dev) != B43legacy_STAT_UNINIT);
 	return err;
 }
@@ -3534,7 +3532,7 @@ static int b43legacy_wireless_core_attac
 
 	err = b43legacy_phy_versioning(dev);
 	if (err)
-		goto err_powerdown;
+		goto out;
 	/* Check if this device supports multiband. */
 	if (!pdev ||
 	    (pdev->device != 0x4312 &&
@@ -3560,10 +3558,10 @@ static int b43legacy_wireless_core_attac
 
 	err = b43legacy_validate_chipaccess(dev);
 	if (err)
-		goto err_powerdown;
+		goto out;
 	err = b43legacy_setup_modes(dev, have_bphy, have_gphy);
 	if (err)
-		goto err_powerdown;
+		goto out;
 
 	/* Now set some default "current_dev" */
 	if (!wl->current_dev)
@@ -3573,14 +3571,9 @@ static int b43legacy_wireless_core_attac
 	b43legacy_radio_turn_off(dev, 1);
 	b43legacy_switch_analog(dev, 0);
 	ssb_device_disable(dev->dev, 0);
-	ssb_bus_may_powerdown(bus);
 
 out:
 	return err;
-
-err_powerdown:
-	ssb_bus_may_powerdown(bus);
-	return err;
 }
 
 static void b43legacy_one_core_detach(struct ssb_device *dev)
Index: wireless-testing/drivers/ssb/main.c
===================================================================
--- wireless-testing.orig/drivers/ssb/main.c
+++ wireless-testing/drivers/ssb/main.c
@@ -1082,6 +1082,10 @@ int ssb_bus_may_powerdown(struct ssb_bus
 		goto out;
 
 	cc = &bus->chipco;
+
+	if (cc->dev->id.revision < 5)
+		goto out;
+
 	ssb_chipco_set_clockmode(cc, SSB_CLKMODE_SLOW);
 	err = ssb_pci_xtal(bus, SSB_GPIO_XTAL | SSB_GPIO_PLL, 0);
 	if (err)


-- 
Ciao
Stefano

  parent reply	other threads:[~2008-03-15 18:10 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-15 18:01 [PATCH] [RFT] b43legacy: fix bcm4303 crash Stefano Brivio
2008-03-15 18:07 ` Michael Buesch
2008-03-15 18:08 ` Stefano Brivio [this message]
2008-03-15 18:14   ` Michael Buesch
2008-03-16 19:22     ` [PATCH v2] " Stefano Brivio

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080315190836.5020b884@morte \
    --to=stefano.brivio@polimi.it \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=mb@bu3sch.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.