From: Rafał Miłecki Date: Sat, 31 May 2014 18:49:36 +0000 (+0200) Subject: b43: PHY: don't force default channel during init X-Git-Tag: v3.17-rc1~106^2~210^2~46^2~155 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=eb530b0fed7ec8ca435ec421cbff773b318a6a00;p=karo-tx-linux.git b43: PHY: don't force default channel during init PHY may need to be re-initialized during runtime (e.g. on band switch). Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville --- diff --git a/drivers/net/wireless/b43/phy_common.c b/drivers/net/wireless/b43/phy_common.c index ac4cf2b8aca8..3bfb795f6a6d 100644 --- a/drivers/net/wireless/b43/phy_common.c +++ b/drivers/net/wireless/b43/phy_common.c @@ -94,7 +94,8 @@ int b43_phy_init(struct b43_wldev *dev) const struct b43_phy_operations *ops = phy->ops; int err; - phy->channel = ops->get_default_chan(dev); + if (!phy->channel) + phy->channel = ops->get_default_chan(dev); phy->ops->switch_analog(dev, true); b43_software_rfkill(dev, false); @@ -106,9 +107,7 @@ int b43_phy_init(struct b43_wldev *dev) } phy->do_full_init = false; - /* Make sure to switch hardware and firmware (SHM) to - * the default channel. */ - err = b43_switch_channel(dev, ops->get_default_chan(dev)); + err = b43_switch_channel(dev, phy->channel); if (err) { b43err(dev->wl, "PHY init: Channel switch to default failed\n"); goto err_phy_exit;