aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/p54/p54common.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/p54/p54common.c')
-rw-r--r--drivers/net/wireless/p54/p54common.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/drivers/net/wireless/p54/p54common.c b/drivers/net/wireless/p54/p54common.c
index 6bf5123c10b2..3373b022d91e 100644
--- a/drivers/net/wireless/p54/p54common.c
+++ b/drivers/net/wireless/p54/p54common.c
@@ -1524,16 +1524,24 @@ static int p54_start(struct ieee80211_hw *dev)
1524 1524
1525 mutex_lock(&priv->conf_mutex); 1525 mutex_lock(&priv->conf_mutex);
1526 err = priv->open(dev); 1526 err = priv->open(dev);
1527 if (!err) 1527 if (err)
1528 priv->mode = NL80211_IFTYPE_MONITOR; 1528 goto out;
1529 P54_SET_QUEUE(priv->qos_params[0], 0x0002, 0x0003, 0x0007, 47); 1529 P54_SET_QUEUE(priv->qos_params[0], 0x0002, 0x0003, 0x0007, 47);
1530 P54_SET_QUEUE(priv->qos_params[1], 0x0002, 0x0007, 0x000f, 94); 1530 P54_SET_QUEUE(priv->qos_params[1], 0x0002, 0x0007, 0x000f, 94);
1531 P54_SET_QUEUE(priv->qos_params[2], 0x0003, 0x000f, 0x03ff, 0); 1531 P54_SET_QUEUE(priv->qos_params[2], 0x0003, 0x000f, 0x03ff, 0);
1532 P54_SET_QUEUE(priv->qos_params[3], 0x0007, 0x000f, 0x03ff, 0); 1532 P54_SET_QUEUE(priv->qos_params[3], 0x0007, 0x000f, 0x03ff, 0);
1533 err = p54_set_edcf(dev); 1533 err = p54_set_edcf(dev);
1534 if (!err) 1534 if (err)
1535 err = p54_init_stats(dev); 1535 goto out;
1536 err = p54_init_stats(dev);
1537 if (err)
1538 goto out;
1539 err = p54_setup_mac(dev, P54_FILTER_TYPE_NONE, NULL);
1540 if (err)
1541 goto out;
1542 priv->mode = NL80211_IFTYPE_MONITOR;
1536 1543
1544out:
1537 mutex_unlock(&priv->conf_mutex); 1545 mutex_unlock(&priv->conf_mutex);
1538 return err; 1546 return err;
1539} 1547}