summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/p54/p54common.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2008-08-05 01:28:35 -0700
committerDavid S. Miller <davem@davemloft.net>2008-08-05 01:28:35 -0700
commit33e334950abda8e42c3b6e6f280fad0d4ab92141 (patch)
tree7d52e5d4772f578c499200f38cfc54b79e3357fb /drivers/net/wireless/p54/p54common.c
parentad619800e4e034cad44299b2a22df9eebb043ac3 (diff)
parent3e2236c108792c3afbbfbe3f373ee7fdd68eda8e (diff)
downloadop-kernel-dev-33e334950abda8e42c3b6e6f280fad0d4ab92141.zip
op-kernel-dev-33e334950abda8e42c3b6e6f280fad0d4ab92141.tar.gz
Merge branch 'no-ath9k' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
Diffstat (limited to 'drivers/net/wireless/p54/p54common.c')
-rw-r--r--drivers/net/wireless/p54/p54common.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/p54/p54common.c b/drivers/net/wireless/p54/p54common.c
index ffaf7a6..4da89ea 100644
--- a/drivers/net/wireless/p54/p54common.c
+++ b/drivers/net/wireless/p54/p54common.c
@@ -886,9 +886,12 @@ static void p54_remove_interface(struct ieee80211_hw *dev,
static int p54_config(struct ieee80211_hw *dev, struct ieee80211_conf *conf)
{
int ret;
+ struct p54_common *priv = dev->priv;
+ mutex_lock(&priv->conf_mutex);
ret = p54_set_freq(dev, cpu_to_le16(conf->channel->center_freq));
p54_set_vdcf(dev);
+ mutex_unlock(&priv->conf_mutex);
return ret;
}
@@ -898,10 +901,12 @@ static int p54_config_interface(struct ieee80211_hw *dev,
{
struct p54_common *priv = dev->priv;
+ mutex_lock(&priv->conf_mutex);
p54_set_filter(dev, 0, priv->mac_addr, conf->bssid, 0, 1, 0, 0xF642);
p54_set_filter(dev, 0, priv->mac_addr, conf->bssid, 2, 0, 0, 0);
p54_set_leds(dev, 1, !is_multicast_ether_addr(conf->bssid), 0);
memcpy(priv->bssid, conf->bssid, ETH_ALEN);
+ mutex_unlock(&priv->conf_mutex);
return 0;
}
@@ -1009,6 +1014,7 @@ struct ieee80211_hw *p54_init_common(size_t priv_data_len)
}
p54_init_vdcf(dev);
+ mutex_init(&priv->conf_mutex);
return dev;
}
OpenPOWER on IntegriCloud