Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dbdedbdf authored by Seth Forshee's avatar Seth Forshee Committed by John W. Linville
Browse files

b43: only reload config after successful initialization

Commit 2a190322 (b43: reload phy and bss settings after core restarts)
introduced an unconditional call to b43_op_config() at the end of
b43_op_start(). When firmware fails to load this can wedge the system.
There's no need to reload the configuration after a failed
initialization anyway, so only make the call if initialization was
successful.

BugLink: http://bugs.launchpad.net/bugs/950295


Cc: Felix Fietkau <nbd@openwrt.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarSeth Forshee <seth.forshee@canonical.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 1ed2ec37
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -4827,7 +4827,13 @@ static int b43_op_start(struct ieee80211_hw *hw)
 out_mutex_unlock:
	mutex_unlock(&wl->mutex);

	/* reload configuration */
	/*
	 * Configuration may have been overwritten during initialization.
	 * Reload the configuration, but only if initialization was
	 * successful. Reloading the configuration after a failed init
	 * may hang the system.
	 */
	if (!err)
		b43_op_config(hw, ~0);

	return err;